Sha256: f7d11021f036665b30aa7606f7669094c3291c034675562396731c64e3448407

Contents?: true

Size: 1021 Bytes

Versions: 3

Compression:

Stored size: 1021 Bytes

Contents

require 'active-fedora'

module Solrizer::Fedora
class Repository

  #
  # This method retrieves a comprehensive list of unique ids in the fedora repository
  #
  def self.get_pids( num_docs )
    solr_results = ActiveFedora::SolrService.instance.conn.query( "active_fedora_model_field:Document", { :rows => num_docs } )
    id_array = []
    solr_results.hits.each do |hit|
      id_array << hit[SOLR_DOCUMENT_ID]
    end
    return id_array
  end
  
  #
  # This method retrieves the object associated with the given unique id
  #
  def self.get_object( pid )
    object = ActiveFedora::Base.find( pid )
  end
  
  #
  # This method retrieves a comprehensive list of datastreams for the given object
  #
  def self.get_datastreams( obj )
    ds_keys = obj.datastreams.keys
  end
  
  #
  # This method retrieves the datastream for the given object with the given datastream name
  #
  def self.get_datastream( obj, ds_name )
    begin
      obj.datastreams[ ds_name ]
    rescue
      return nil
    end
  end

end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
solrizer-fedora-3.0.0.pre1 lib/solrizer/fedora/repository.rb
solrizer-fedora-2.3.1 lib/solrizer/fedora/repository.rb
solrizer-fedora-2.3.0 lib/solrizer/fedora/repository.rb