Configurable Facets are Here: active-fedora-1.2.5, solrizer-0.3.0, solrizer-fedora-0.1.0 (NEW)

9 views
Skip to first unread message

Matt Zumwalt

unread,
Oct 26, 2010, 9:27:48 PM10/26/10
to hydra...@googlegroups.com, active...@googlegroups.com
I've released active-fedora-1.2.5, solrizer-0.3.0, and two new gems: solrizer-fedora & mediashelf-logger.  Most of these changes relate to HYDRA-274: "Configurable Facets" and its sub-tasks.

If you're working on Hydrangea

When you pull from projecthydra/hydrangea master, you will have to run bundle update so that you have the latest versions of active-fedora and solrizer.  I've updated hydrangea to use the new features from those gems.

You might also want to refresh your fixtures

rake hydra:default_fixtures:refresh

Configurable Indexing of Metadata Fields

In short, setting :index_as=>:facetable on an OM::Term causes it to be indexed in solr with the _facet prefix on the solr field name. This allows you to include the facet in your Blacklight facets list.  

... that's actually just the tip of the iceberg of index-configuration love that we baked into this release of solrizer.   See the solrizer rdocs if you want to know more: http://rdoc.info/github/projecthydra/solrizer/master/Solrizer/FieldMapper.

Bundler support

As of these gem releases, active-fedora, solrizer, solrizer-fedora and hydrangea all use Bundler for gem management

New Gem: solrizer-fedora

In the process of updating solrizer and active-fedora, I split solrizer into two gems: solrizer and solrizer-fedora.  Now, all of the Fedora-specific behavior is encapsulated in a gem that builds on the basic, re-usable behaviors of solrizer.  Within your code, when you want a fedora-enabled solrizer, use

solrizer = Solrizer::Fedora::Solrizer.new
solrizer.solrize("demo:5")

Likewise, the fedora-specific rake tasks are now under the fedora namespace.  ie:

rake solrizer:fedora:solrize PID=demo:5

Another New Gem: mediashelf-loggable

FYI, I got sick of scattering logger implementations around in all of these libraries, so I put together an extremely minimal gem that handles it for you.  The mediashelf-loggable gem is an extension of the "loggable" gem written by vigetlabs.  It allows you to include logging behaviors in your classes with minimal code.  See the README for more info.  

The difference between loggable and mediashelf-loggable: the mediashelf gem uses the Rails default logger if it's available, and defaults to using STDOUT if you don't tell it otherwise.


to install the gem: 

gem install mediashelf-loggable


Example:

require "loggable"

class MyTest
  include Loggable

begin
rescue e
logger.error (e)
end
end


Reply all
Reply to author
Forward
0 new messages