Plucene::Index::Reader(3) Abstract class for accessing an index

DESCRIPTION

IndexReader is an abstract class, providing an interface for accessing an index. Search of an index is done entirely through this abstract interface, so that any subclass which implements it is searchable.

Concrete subclasses of IndexReader are usually constructed with a call to the static method ``open''.

For efficiency, in this API documents are often referred to via document numbers, non-negative integers which each name a unique document in the index. These document numbers are ephemeral---they may change as documents are added to and deleted from an index. Clients should thus not rely on a given document having the same number between sessions.

METHODS

new

        my $reader = Plucene::Index::Reader->new($dir_name);

This will create a new Plucene::Index::Reader with the passed in directory.

open

        # If there is only one segment
        my Plucene::Index::SegmentReader $seg_read = $reader->open;
        # If there are many segments
        my Plucene::Index::SegmentsReader $seg_read = $reader->open;

Returns an IndexReader reading the index in the given Directory.

last_modified

        my $last_modified = Plucene::Index::Reader->last_modified($directory);

index_exists

        if (Plucene::Index::Reader->index_exists($directory)){ ... }

is_locked

        if (Plucene::Index::Reader->is_locked($directory)){ ... }

delete

        $reader->delete($doc);

delete_term

        $reader->delete_term($term);

This will delete all the documents which contain the passed term.

close

        $reader->close;

unlock

        $reader->unlock($directory);

num_docs / max_doc / document / is_deleted / norms / terms / doc_freq / term_docs / term_positions / _do_delete / _do_close

These must be defined in a subclass