README.md in solrizer-3.4.1 vs README.md in solrizer-4.0.0
- old
+ new
@@ -1,19 +1,13 @@
# solrizer
[![Build Status](https://travis-ci.org/projecthydra/solrizer.png?branch=master)](https://travis-ci.org/projecthydra/solrizer)
[![Gem Version](https://badge.fury.io/rb/solrizer.png)](http://badge.fury.io/rb/solrizer)
-A lightweight, configurable tool for indexing metadata into solr. Can be triggered from within your application, from
-the command line, or as a JMS listener.
+A lightweight tool for creating dynamic solr schema sufixes.
-Solrizer provides the baseline and structures for the process of solrizing. In order to actually read objects from a
-data source and write solr documents into a solr instance, you need to use an implementation specific gem, such as
-"solrizer-fedora":https://github.com/projecthydra/solrizer-fedora, which provides the mechanics for reading from a
-fedora repository and writing to a solr instance.
-
## Installation
The gem is hosted on [rubygems.org](https://rubygems.org/gems/solrizer). The best way to manage the gems for your project
is to use bundler. Create a Gemfile in the root of your application and include the following:
@@ -154,77 +148,9 @@
But now you may also pass an Descriptor instance if that works for you:
indexer = Solrizer::Descriptor.new(:integer, :indexed, :stored)
t.main_title(:index_as=>[indexer],:path=>"title", :label=>"title") { ... }
-
-### Extractor and Extractor Mixins
-
-Solrizer::Extractor provides utilities for extracting solr fields from objects or inserting solr fields into documents:
-
- > extractor = Solrizer::Extractor.new
- > solr_doc = Hash.new
- > extractor.format_node_value(["foo ","\n bar"])
- => "foo bar"
- > extractor.insert_solr_field_value(solr_doc, "foo","bar")
- => {"foo"=>"bar"}
- > extractor.insert_solr_field_value(solr_doc,"foo","baz")
- => {"foo"=>["bar", "baz"]}
- > extractor.insert_solr_field_value(solr_doc, "boo","hoo")
- => {"foo"=>["bar", "baz"], "boo"=>"hoo"}
-
-#### Solrizer provides some default mixins:
-
-`Solrizer::HTML::Extractor` provides html_to_solr method and `Solrizer::XML::Extractor` provides xml_to_solr method:
-
- > Solrizer::XML::Extractor
- > extractor = Solrizer::Extractor.new
- > xml = "<fields><foo>bar</foo><bar>baz</bar></fields>"
- > extractor.xml_to_solr(xml)
- => {:foo_tesim=>"bar", :bar_tesim=>"baz"}
-
-#### Solrizer::XML::TerminologyBasedSolrizer
-
-Another powerful mixin for use with classes that include the `OM::XML::Document` module is
-`Solrizer::XML::TerminologyBasedSolrizer`. The methods provided by this module map provides a robust way of mapping
-terms and solr fields via om terminologies. A notable example can be found in `ActiveFedora::NokogiriDatatstream`.
-
-## JMS Listener for Hydra Rails Applications
-
-### The executables: solrizer and solrizerd
-
-The solrizer gem provides two executables:
-
- * solrizer is a stomp consumer which listens for fedora.apim.updates and solrizes (or de-solrizes) objects accordingly.
- * solrizerd is a wrapper script that spawns a daemonized version of solrizer and handles start|stop|restart|status requests.
-
-### Usage
-
-The usage for solrizerd is as follows:
-
- solrizerd command --hydra_home PATH [options]
-
-The commands are as follows:
- * start start an instance of the application
- * stop stop all instances of the application
- * restart stop all instances and restart them afterwards
- * status show status (PID) of application instances
-
-Required parameters:
-
---hydra_home: this is the path to your hydra rails applications' root directory. Solrizerd needs this in order to load all your models and corresponding terminoligies.
-
-The options:
- * -p, --port Stomp port 61613
- * -o, --host Host to connect to localhost
- * -u, --user User name for stomp listener
- * -w, --password Password for stomp listener
- * -d, --destination Topic to listen to (default: /topic/fedora.apim.update)
- * -h, --help Display this screen
-
-Note:
-
-Since the solrizer script must fire up your hydra rails application, it must have all the gems installed that your hydra instance needs.
## Note on Patches/Pull Requests
* Fork the project.
* Make your feature addition or bug fix.