Sha256: d8de63c27056ae1e2977d35684a76f4f9d976709e210cb6f27cf37a85115ad07

Contents?: true

Size: 1.72 KB

Versions: 10

Compression:

Stored size: 1.72 KB

Contents

SOLR_DOCUMENT_ID = "id" unless (defined?(SOLR_DOCUMENT_ID) && !SOLR_DOCUMENT_ID.nil?)
ENABLE_SOLR_UPDATES = true unless defined?(ENABLE_SOLR_UPDATES)
require 'active_support/descendants_tracker'
require 'active_fedora/errors'
require 'active_fedora/log_subscriber'

module ActiveFedora

  # This class ties together many of the lower-level modules, and
  # implements something akin to an ActiveRecord-alike interface to
  # fedora. If you want to represent a fedora object in the ruby
  # space, this is the class you want to extend.
  #
  # =The Basics
  #   class Oralhistory < ActiveFedora::Base
  #     has_metadata "properties", type: ActiveFedora::SimpleDatastream do |m|
  #       m.field "narrator",  :string
  #       m.field "narrator",  :text
  #     end
  #   end
  #
  # The above example creates a Fedora object with a metadata datastream named "properties", which is composed of a
  # narrator and bio field.
  #
  # Attached files defined with +contains+ are accessed via the +attached_files+ member hash.
  #
  class Base
    extend ActiveModel::Naming
    extend ActiveSupport::DescendantsTracker
    extend LdpCache::ClassMethods

    include Core
    include Identifiable
    include Persistence
    include Indexing
    include Scoping
    include ActiveModel::Conversion
    include Callbacks
    include Validations
    extend Querying
    include Associations
    include AutosaveAssociation
    include NestedAttributes
    include Reflection
    include Serialization

    include AttachedFiles
    include FedoraAttributes
    include AttributeMethods
    include Attributes
    include Versionable
    include LoadableFromJson
    include Schema
    include Pathing
  end

  ActiveSupport.run_load_hooks(:active_fedora, Base)
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
active-fedora-9.5.0 lib/active_fedora/base.rb
active-fedora-9.4.3 lib/active_fedora/base.rb
active-fedora-9.4.2 lib/active_fedora/base.rb
active-fedora-9.4.1 lib/active_fedora/base.rb
active-fedora-9.4.0 lib/active_fedora/base.rb
active-fedora-9.3.0 lib/active_fedora/base.rb
active-fedora-9.2.1 lib/active_fedora/base.rb
active-fedora-9.2.0 lib/active_fedora/base.rb
active-fedora-9.2.0.rc2 lib/active_fedora/base.rb
active-fedora-9.2.0.rc1 lib/active_fedora/base.rb