Module: FcrepoAdmin::SolrDocumentExtension

Defined in:
lib/fcrepo_admin/solr_document_extension.rb

Instance Method Summary collapse

Instance Method Details

#active_fedora_modelObject



44
45
46
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 44

def active_fedora_model
  get(ActiveFedora::SolrService.solr_name('active_fedora_model', :symbol))
end

#admin_policy_pidObject



26
27
28
29
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 26

def admin_policy_pid
  uri = admin_policy_uri
  uri &&= ActiveFedora::Base.pids_from_uris(uri)
end

#admin_policy_uriObject



22
23
24
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 22

def admin_policy_uri
  get ActiveFedora::SolrService.solr_name('is_governed_by', :symbol)
end

#datastreamsObject



10
11
12
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 10

def datastreams
  object_profile["datastreams"]
end

#has_admin_policy?Boolean

Returns:

  • (Boolean)


18
19
20
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 18

def has_admin_policy?
  !admin_policy_uri.blank?
end

#has_datastream?(dsID) ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 14

def has_datastream?(dsID)
  !datastreams[dsID].blank?
end

#has_parent?Boolean

Returns:

  • (Boolean)


31
32
33
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 31

def has_parent?
  !parent_uri
end

#object_profileObject



6
7
8
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 6

def object_profile
  @object_profile ||= JSON.parse(self[ActiveFedora::Base.profile_solr_name].first)
end

#parent_pidObject



39
40
41
42
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 39

def parent_pid
  uri = parent_uri
  uri &&= ActiveFedora::Base.pids_from_uris(uri)
end

#parent_uriObject



35
36
37
# File 'lib/fcrepo_admin/solr_document_extension.rb', line 35

def parent_uri
  get(ActiveFedora::SolrService.solr_name('is_part_of', :symbol)) || get(ActiveFedora::SolrService.solr_name('is_member_of', :symbol)) || get(ActiveFedora::SolrService.solr_name('is_member_of_collection', :symbol))
end