Sha256: ef4053b379f1c81db52a4bb827836637bcd8425c3a0049cd1f99410f0773bc6a

Contents?: true

Size: 689 Bytes

Versions: 2

Compression:

Stored size: 689 Bytes

Contents

module ActiveFedora::Aggregation
  class Proxy < ActiveFedora::Base
    # HABTM is actually only belongs to one
    has_and_belongs_to_many :containers, predicate: ::RDF::Vocab::ORE.proxyIn, class_name: 'ActiveFedora::Base'
    belongs_to :target, predicate: ::RDF::Vocab::ORE.proxyFor, class_name: 'ActiveFedora::Base'
    belongs_to :next, predicate: ::RDF::Vocab::IANA.next, class_name: 'ActiveFedora::Aggregation::Proxy'
    belongs_to :prev, predicate: ::RDF::Vocab::IANA.prev, class_name: 'ActiveFedora::Aggregation::Proxy'

    type ::RDF::Vocab::ORE.Proxy

    def as_list
      if self.next
        [self] + self.next.as_list
      else
        [self]
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
activefedora-aggregation-0.2.1 lib/active_fedora/aggregation/proxy.rb
activefedora-aggregation-0.2.0 lib/active_fedora/aggregation/proxy.rb