class ActiveFedora::DefaultModelMapper
Create model classifiers for resources or solr documents
def classifier(resource)
def classifier(resource) models = if resource.respond_to? :graph resource.graph.query([nil, predicate, nil]).map { |rg| rg.object.to_s } elsif resource.respond_to? :[] resource[solr_field] || [] else [] end classifier_class.new(models) end
def initialize(classifier_class: ActiveFedora::ModelClassifier, solr_field: ActiveFedora::QueryResultBuilder::HAS_MODEL_SOLR_FIELD, predicate: ActiveFedora::RDF::Fcrepo::Model.hasModel)
def initialize(classifier_class: ActiveFedora::ModelClassifier, solr_field: ActiveFedora::QueryResultBuilder::HAS_MODEL_SOLR_FIELD, predicate: ActiveFedora::RDF::Fcrepo::Model.hasModel) @classifier_class = classifier_class @solr_field = solr_field @predicate = predicate end