NAME
Plucene::SearchEngine::Index::Base - The definitely indexer base class
DESCRIPTION
This module is the base class from which both frontend and backend indiexing modules should inherit. It makes it easier for modules to create Plucene::Document
objects through the intermediary of a nested hash.
METHODS
register_handler
__PACKAGE__->register_handler($ext, $mime_type, $ext2, ...);
This registers the module to handle each given extension or MIME type. Base
works out whether a parameter is a file extension or a MIME type.
handler_for
$self->handler_for($filename, $mime_type)
This finds the relevant handler which has been registered for the givern mime type or file name extension.
new
This creates a new backend object, which knows about the handler
, type
and indexed
date for the data.
add_data
$self->add_data($field, $type, $data);
This adds data to a backend object. A backend object represents a Plucene::Document
, a hash which will later be turned into a Plucene::Document
object.
The $field
element should be the field name that's stored in Plucene. The $type
should be one of the methods that Plucene::Document::Field
can cope with - Keyword, Text, UnIndexed, UnStored - or Date
, which takes a Time::Piece
object as its $data
.
document
This turns the backend's hash into a Plucene::Document
.