class ActiveTriples::Solrizer::IndexingService
Attributes
object[R]
include ::Solrizer::Common
Public Class Methods
new(obj)
click to toggle source
# File lib/active_triples/solrizer/indexing_service.rb, line 6 def initialize(obj) @object = obj end
profile_solr_name()
click to toggle source
# File lib/active_triples/solrizer/indexing_service.rb, line 10 def self.profile_solr_name # @profile_solr_name ||= ActiveFedora::SolrQueryBuilder.solr_name("object_profile", :displayable) @profile_solr_name ||= :object_profile_ss end
Public Instance Methods
generate_solr_document() { |solr_doc| ... }
click to toggle source
Creates a solr document hash for the {#object} @yield [Hash] yields the solr document @return [Hash] the solr document
# File lib/active_triples/solrizer/indexing_service.rb, line 26 def generate_solr_document solr_doc = {} # Solrizer.set_field(solr_doc, 'system_create', c_time, :stored_sortable) # Solrizer.set_field(solr_doc, 'system_modified', m_time, :stored_sortable) solr_doc.merge!(SOLR_DOCUMENT_ID.to_sym => object.id) solr_doc.merge!(:at_model_ssi => object.class.to_s) # TODO dynamic for now, but probably should be static solr field solr_doc.merge!(self.class.profile_solr_name => profile_service.new(object).export) solr_doc.merge!(properties_service.new(object).export) yield(solr_doc) if block_given? solr_doc end
profile_service()
click to toggle source
# File lib/active_triples/solrizer/indexing_service.rb, line 15 def profile_service ProfileIndexingService end
properties_service()
click to toggle source
# File lib/active_triples/solrizer/indexing_service.rb, line 19 def properties_service PropertiesIndexingService end