# ====================================================================
# Gossamer Threads Module Library - http://gossamer-threads.com/
#
#   GT::SQL::Search::Base::Indexer
#   Author: Aki Mimoto
#   CVS Info : 087,071,086,086,085      
#   $Id: Indexer.pm,v 1.4 2004/01/13 01:35:19 jagerman Exp $
#
# Copyright (c) 2004 Gossamer Threads Inc.  All Rights Reserved.
# ====================================================================
#
# Description:
#   
#

package GT::SQL::Search::Base::Indexer;

    use strict;
    use vars qw/@ISA $ATTRIBS $VERSION $DEBUG $AUTOLOAD /;
    use GT::Base;
    use GT::SQL::Search::Base::Common;

#--------------------------------------------------------------------------------
# Preamble information related to the object

    $DEBUG   = 0;
    $VERSION = sprintf "%d.%03d", q$Revision: 1.4 $ =~ /(\d+)\.(\d+)/;
    @ISA     = qw/GT::Base GT::SQL::Search::Base::Common/;
    $ATTRIBS = {
        driver    => undef,
        stopwords => $STOPWORDS,
        rejections   => {        
            STOPWORD => "is a stopword",
            TOOSMALL => "is too small a word",
            TOOBIG   => "is too big a word"
        },
        table     => '',
        init      => 0,
        debug     => 0,
        min_word_size => 3,
        max_word_size => 50,             
    };

sub drop_search_driver { 1 }
sub add_search_driver { 1 }

# found in GT::SQL::Creator
sub pre_create_table { 1 }
sub post_create_table { 1 }

# GT::SQL::Editor
sub pre_add_column  { 1 }
sub post_add_column { 1 }

sub pre_delete_column  { 1 }
sub post_delete_column { 1 }

sub pre_drop_table { 1 }
sub post_drop_table { 1 }

# GT::SQL::Table
sub pre_add_record { 1 }
sub post_add_record { 1 }

sub pre_update_record { 1 }
sub post_update_record { 1 }

sub pre_delete_record { 1 }
sub post_delete_record { 1 }

sub pre_delete_all_records { 1 }
sub post_delete_all_records { 1 }

sub driver_ok { 1 }

sub reindex_all { 1 }

1;
