Sha256: cd02c756ef06522e15c6e09da6f423d650d94304f73783560f472f29d0ee252e

Contents?: true

Size: 701 Bytes

Versions: 4

Compression:

Stored size: 701 Bytes

Contents

module ActiveFedora::Associations::Builder
  class DirectlyContains < CollectionAssociation # :nodoc:
    def self.macro
      :directly_contains
    end

    def self.valid_options(options)
      super + [:has_member_relation, :is_member_of_relation] - [:predicate]
    end

    def self.validate_options(options)
      super

      raise ArgumentError, "You must specify a :has_member_relation or :is_member_of_relation predicate for #{name}" if !options[:has_member_relation] && !options[:is_member_of_relation]
      raise ArgumentError, "Predicate must be a kind of RDF::URI" if !options[:has_member_relation].is_a?(RDF::URI) && !options[:is_member_of_relation].is_a?(RDF::URI)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
active-fedora-15.0.1 lib/active_fedora/associations/builder/directly_contains.rb
active-fedora-15.0.0 lib/active_fedora/associations/builder/directly_contains.rb
active-fedora-14.0.1 lib/active_fedora/associations/builder/directly_contains.rb
active-fedora-14.0.0 lib/active_fedora/associations/builder/directly_contains.rb