Sha256: 1914fc39c9192f26073abc8cfef02d4344db3d263f273dc9c7d34566590f9877

Contents?: true

Size: 1021 Bytes

Versions: 25

Compression:

Stored size: 1021 Bytes

Contents

require "forwardable"

module Ddr::Models
  class AdministrativeMetadata
    extend Forwardable
    include Metadata


    class << self
      def field_names
        [ :access_roles,
          :admin_set,
          :aspace_id,
          :depositor,
          :display_format,
          :doi,
          :ead_id,
          :fcrepo3_pid,
          :license,
          :local_id,
          :permanent_id,
          :permanent_url,
          :research_help_contact,
          :workflow_state
        ]
      end

      alias_method :unqualified_names, :field_names
      alias_method :field_readers, :field_names

      def field_writers
        field_names.map { |name| "#{name}=".to_sym }
      end

      def property_terms
        field_names.each_with_object({}) do |term, memo|
          memo[term] = term
        end
      end

    end

    attr_reader :object

    def_delegators :object, *field_readers
    def_delegators :object, *field_writers

    def initialize(object)
      @object = object
    end

  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
ddr-models-3.0.8 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.7 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.6 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.5 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.4 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.3 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.2 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.1 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.rc6 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.rc5 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.rc4 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.rc3 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.rc2 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.rc1 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.beta.22 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.beta.21 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.beta.20 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.beta.18 lib/ddr/models/metadata/administrative_metadata.rb
ddr-models-3.0.0.beta.17 lib/ddr/models/metadata/administrative_metadata.rb