Class: Dor::EditableIndexer

Inherits:
Object
  • Object
show all
Includes:
SolrDocHelper
Defined in:
lib/dor/indexers/editable_indexer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from SolrDocHelper

#add_solr_value

Constructor Details

#initialize(resource:) ⇒ EditableIndexer

Returns a new instance of EditableIndexer.



6
7
8
# File 'lib/dor/indexers/editable_indexer.rb', line 6

def initialize(resource:)
  @resource = resource
end

Instance Attribute Details

#resourceObject (readonly)

Returns the value of attribute resource.



5
6
7
# File 'lib/dor/indexers/editable_indexer.rb', line 5

def resource
  @resource
end

Instance Method Details

#default_rights_for_indexingString

Returns A description of the rights defined in the default object rights datastream. Can be ‘Stanford’, ‘World’, ‘Dark’ or ‘None’.

Returns:

  • (String)

    A description of the rights defined in the default object rights datastream. Can be ‘Stanford’, ‘World’, ‘Dark’ or ‘None’



19
20
21
# File 'lib/dor/indexers/editable_indexer.rb', line 19

def default_rights_for_indexing
  RightsMetadataDS::RIGHTS_TYPE_CODES.fetch(resource.default_rights, 'Unrecognized default rights value')
end

#to_solrObject



10
11
12
13
14
15
16
# File 'lib/dor/indexers/editable_indexer.rb', line 10

def to_solr
  {}.tap do |solr_doc|
    add_solr_value(solr_doc, 'default_rights', default_rights_for_indexing, :string, [:symbol])
    add_solr_value(solr_doc, 'agreement', resource.agreement, :string, [:symbol]) if resource.agreement_object
    add_solr_value(solr_doc, 'default_use_license_machine', resource.use_license, :string, [:stored_sortable])
  end
end