Sha256: 9f29388057c60bb8d41ab7b188613439c2a6bdac71dbba73fa40019392f4af9a

Contents?: true

Size: 970 Bytes

Versions: 7

Compression:

Stored size: 970 Bytes

Contents

module Ddr
  module Models
    class Base < ActiveFedora::Base

      include Describable
      include Governable
      include AccessControllable
      include Licensable
      include HasProperties
      include HasThumbnail
      include ActiveFedora::Auditable
      include EventLoggable
      include FixityCheckable
      include FileManagement
      include Indexing
      include Hydra::Validations
      include HasAdminMetadata

      def copy_admin_policy_or_permissions_from(other)
        copy_permissions_from(other) unless copy_admin_policy_from(other)
      end

      def association_query(association)
        # XXX Ideally we would include a clause to limit by AF model, but this should suffice
        ActiveFedora::SolrService.construct_query_for_rel(reflections[association].options[:property] => internal_uri)
      end

      # e.g., "Collection duke:1"
      def model_pid
        [self.class.to_s, pid].join(" ")
      end

    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ddr-models-1.11.2 lib/ddr/models/base.rb
ddr-models-1.11.1 lib/ddr/models/base.rb
ddr-models-1.11.0 lib/ddr/models/base.rb
ddr-models-1.10.0 lib/ddr/models/base.rb
ddr-models-1.9.0 lib/ddr/models/base.rb
ddr-models-1.8.1 lib/ddr/models/base.rb
ddr-models-1.8.0 lib/ddr/models/base.rb