class Dspace::Item

Attributes

archived[RW]
bit_streams[R]
expand[R]
handle[R]
id[R]
last_modified[R]
metadata[R]
name[RW]
parent_collection[R]
parent_collection_list[R]
parent_community_list[R]
type[R]
withdrawn[RW]

Public Class Methods

new(args) click to toggle source
# File lib/dspace/item.rb, line 11
def initialize args
  @id = args['id']
  @name = args['name']
  @handle = args['handle']
  @type = args['type']
  @link = args['link']
  @last_modified = args['lastModified']
  @parent_collection = Dspace::Collection.new(args['parentCollection']) unless args['parentCollection'].nil?
  @parent_collection_list = Dspace::Builders::ModelBuilder.build_collections(args['parentCollectionList'])
  @parent_community_list = Dspace::Builders::ModelBuilder.build_communities(args['parentCommunityList'])
  @bit_streams = Dspace::Builders::ModelBuilder.build_bitstreams(args['bitstreams'])
  @archived = args['archived']
  @withdrawn = args['withdrawn']
  @expand = args['expand']
  @metadata = Dspace::Builders::ModelBuilder.build_metadatas(args['metadata'])
end

Public Instance Methods

add_metadata(key, value, language) click to toggle source
# File lib/dspace/item.rb, line 47
def add_metadata(key, value, language)
  m = {}
  m['key'] = key
  m['value'] = value
  m['language'] = language || ""

  @metadata << Dspace::Metadata.new(m)
  @metadata
end
reset_metadata() click to toggle source
# File lib/dspace/item.rb, line 57
def reset_metadata
  @metadata = []
end
to_h() click to toggle source
# File lib/dspace/item.rb, line 28
def to_h
  {
      id: @id,
      name: @name,
      handle: @handle,
      type: @type,
      link: @link,
      lastModified: @last_modified,
      parentCollection: @parent_collection.to_h,
      parentCollectionList: obj2hash(@parent_collection_list),
      parentCommunityList: obj2hash(@parent_community_list),
      bitstreams: obj2hash(@bit_streams),
      archived: @archived,
      withdrawn: @withdrawn,
      expand: @expand,
      metadata: obj2hash(@metadata)
  }
end