Sha256: f89358a015375bcd0aee6ae2998222db43e2be4ceda3772314d5fc6c9d197044

Contents?: true

Size: 611 Bytes

Versions: 4

Compression:

Stored size: 611 Bytes

Contents

#
# A Component is a part of an Item; the principal content-bearing repository resource.
#
# Examples: Page of a book, track of a recording, etc.
#
class Component < Ddr::Models::Base
 
  include Ddr::Models::HasContent
  include Ddr::Models::HasStructMetadata

  belongs_to :parent, :property => :is_part_of, :class_name => 'Item'
  belongs_to :target, :property => :has_external_target, :class_name => 'Target'

  alias_method :item, :parent
  alias_method :item=, :parent=

  def collection
    self.parent.parent rescue nil
  end

  def collection_uri
    self.collection.internal_uri rescue nil
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ddr-models-1.12.3 app/models/component.rb
ddr-models-1.12.2 app/models/component.rb
ddr-models-1.12.1 app/models/component.rb
ddr-models-1.12.0 app/models/component.rb