Sha256: b557cd5ba9355d4fb0df2ff7a79c18f5ae42aabeb5e2f1aba1fccf78a5bb1c42
Contents?: true
Size: 1007 Bytes
Versions: 2
Compression:
Stored size: 1007 Bytes
Contents
module ActiveFedora module Associations class BasicContainsAssociation < ContainsAssociation #:nodoc: def find_target uris = owner.resource.query(predicate: options[:predicate]) .map { |r| r.object.to_s } uris.map { |object_uri| klass.find(klass.uri_to_id(object_uri)) } end def insert_record(record, force = true, validate = true) record.base_path_for_resource = owner.uri.to_s super end def add_to_target(record, skip_callbacks = false) record.base_path_for_resource = owner.uri.to_s super end def reset # Update the membership triples (and no other triples) on the the owner's resource if owner.persisted? pattern = ::RDF::Query::Pattern.new(predicate: options[:predicate]) new_resource = owner.dup.reload.resource owner.resource.delete_insert([pattern], new_resource.query(pattern)) end super end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
active-fedora-11.1.4 | lib/active_fedora/associations/basic_contains_association.rb |
active-fedora-11.1.3 | lib/active_fedora/associations/basic_contains_association.rb |