Sha256: a2c4b58e1a15ea9562f81cef286b4645e05875ff68f5d937029dcdc667d01c05

Contents?: true

Size: 1.94 KB

Versions: 17

Compression:

Stored size: 1.94 KB

Contents

# frozen_string_literal: true

module Cocina
  module Models
    class RequestDRO < Struct
      include Validatable

      include Checkable

      TYPES = ['https://cocina.sul.stanford.edu/models/object',
               'https://cocina.sul.stanford.edu/models/3d',
               'https://cocina.sul.stanford.edu/models/agreement',
               'https://cocina.sul.stanford.edu/models/book',
               'https://cocina.sul.stanford.edu/models/document',
               'https://cocina.sul.stanford.edu/models/geo',
               'https://cocina.sul.stanford.edu/models/image',
               'https://cocina.sul.stanford.edu/models/page',
               'https://cocina.sul.stanford.edu/models/photograph',
               'https://cocina.sul.stanford.edu/models/manuscript',
               'https://cocina.sul.stanford.edu/models/map',
               'https://cocina.sul.stanford.edu/models/media',
               'https://cocina.sul.stanford.edu/models/track',
               'https://cocina.sul.stanford.edu/models/webarchive-binary',
               'https://cocina.sul.stanford.edu/models/webarchive-seed'].freeze

      # The version of Cocina with which this object conforms.
      # example: 1.2.3
      attribute :cocinaVersion, Types::Strict::String.default(Cocina::Models::VERSION)
      attribute :type, Types::Strict::String.enum(*RequestDRO::TYPES)
      attribute :label, Types::Strict::String
      attribute :version, Types::Strict::Integer.default(1).enum(1)
      attribute :access, DROAccess.optional.meta(omittable: true)
      attribute(:administrative, RequestAdministrative.default { RequestAdministrative.new })
      attribute :description, RequestDescription.optional.meta(omittable: true)
      attribute(:identification, RequestIdentification.default { RequestIdentification.new })
      attribute :structural, RequestDROStructural.optional.meta(omittable: true)
      attribute :geographic, Geographic.optional.meta(omittable: true)
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
cocina-models-0.75.0 lib/cocina/models/request_dro.rb
cocina-models-0.74.1 lib/cocina/models/request_dro.rb
cocina-models-0.74.0 lib/cocina/models/request_dro.rb
cocina-models-0.73.6 lib/cocina/models/request_dro.rb
cocina-models-0.73.5 lib/cocina/models/request_dro.rb
cocina-models-0.73.4 lib/cocina/models/request_dro.rb
cocina-models-0.73.3 lib/cocina/models/request_dro.rb
cocina-models-0.73.2 lib/cocina/models/request_dro.rb
cocina-models-0.73.1 lib/cocina/models/request_dro.rb
cocina-models-0.73.0 lib/cocina/models/request_dro.rb
cocina-models-0.72.0 lib/cocina/models/request_dro.rb
cocina-models-0.71.0 lib/cocina/models/request_dro.rb
cocina-models-0.70.0 lib/cocina/models/request_dro.rb
cocina-models-0.69.2 lib/cocina/models/request_dro.rb
cocina-models-0.69.1 lib/cocina/models/request_dro.rb
cocina-models-0.69.0 lib/cocina/models/request_dro.rb
cocina-models-0.68.0 lib/cocina/models/request_dro.rb