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.



8
9
10
# File 'lib/dor/indexers/editable_indexer.rb', line 8

def initialize(resource:)
  @resource = resource
end

Instance Attribute Details

#resourceObject (readonly)

Returns the value of attribute resource.



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

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’



21
22
23
# File 'lib/dor/indexers/editable_indexer.rb', line 21

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

#to_solrObject



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

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