NAME WebService::Lucene - Module to interface with the Lucene indexing webservice SYNOPSIS # Connect to the web service $ws = WebService::Lucene->new( $url ); # Create an index $ndex = $ws->create_index( $index ); # Get a particular index $index = $ws->get_index( $name ); # Index a document $document = $index->add_document( $document ); # Get a document $document = $index->get_document( $id ); # Delete the document $document->delete; # Search an index $results = $index->search( $query ); # Get documents from search @documents = $results->documents; # Delete an index $index->delete; DESCRIPTION This module is a Perl API in to the Lucene indexing web service. http://lucene-ws.net/ METHODS new( $url ) This method will connect to the Lucene Web Service located at $url. my $ws = WebService::Lucene->new( 'http://localhost:8080/lucene/' ); base_url( [$url] ) Accessor for the base url of the service. get_index( $name ) Retuens an WebService::Lucene::Index object for $name. indexes( ) Alias for "indices" indices( ) Returns an array of WebService::Lucene::Index objects. properties( [$properties] ) Hash reference to a list of properties for the service. _fetch_service_properties( ) Grabs the "service.properties" documents and sends the contents to "_parse_service_properties". _parse_service_properties( $xml ) Parses the XML and populates the object's "properties" _fetch_service_document( ) Connects to the service url and passes the contents on to "_parse_service_document". _parse_service_document( $xml ) Parses the Atom Publishing Protocol introspection document and populates the service's "indices". title( [$title] ) Accessor for the title of the service. _fetch_content( $url ) Shortcut for fetching the content at $url. create_index( $name ) Creates the index on the server and returns the WebService::Lucene::Index object. delete_index( $name ) Deletes an index. update( ) Updates the "service.properties" document. _properties_as_entry( ) Genereates an XML::Atom::Entry suitable for updating the "service.properties" document. search( $indices, $query, [$params] ) Searches one or more indices for $query. Returns an WebService::Lucene::Results object. my $results = $ws->search( [ 'index1', 'index2' ], 'foo' ); facets( $indices, [$params] ) Gets facets for one or more indices. Returns an WebService::Lucene::Results object. my $results = $ws->facets( [ 'index1', 'index2' ] ); SEE ALSO * XML::Atom::Client * WWW::OpenSearch * http://lucene-ws.net/ AUTHORS Brian Cassidy Adam Paynter COPYRIGHT AND LICENSE Copyright 2006-2009 National Adult Literacy Database This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.