Sha256: 1f6b1c69aac1d05bf8409fe44a8f6e88923828a9472e2637308d083398941dab

Contents?: true

Size: 1 KB

Versions: 9

Compression:

Stored size: 1 KB

Contents

# frozen_string_literal: true

module Cocina
  module Models
    class RequestFile < Struct
      include Checkable

      TYPES = ['http://cocina.sul.stanford.edu/models/file.jsonld'].freeze

      attribute :type, Types::Strict::String.enum(*RequestFile::TYPES)
      attribute :label, Types::Strict::String
      attribute :filename, Types::Strict::String
      attribute :size, Types::Strict::Integer.meta(omittable: true)
      attribute :version, Types::Strict::Integer
      attribute :hasMimeType, Types::Strict::String.meta(omittable: true)
      attribute :externalIdentifier, Types::Strict::String.meta(omittable: true)
      attribute :use, Types::Strict::String.meta(omittable: true)
      attribute :hasMessageDigests, Types::Strict::Array.of(MessageDigest).default([].freeze)
      attribute(:access, Access.default { Access.new })
      attribute(:administrative, FileAdministrative.default { FileAdministrative.new })
      attribute :presentation, Presentation.optional.meta(omittable: true)
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
cocina-models-0.36.0 lib/cocina/models/request_file.rb
cocina-models-0.35.0 lib/cocina/models/request_file.rb
cocina-models-0.34.1 lib/cocina/models/request_file.rb
cocina-models-0.34.0 lib/cocina/models/request_file.rb
cocina-models-0.33.0 lib/cocina/models/request_file.rb
cocina-models-0.32.0 lib/cocina/models/request_file.rb
cocina-models-0.31.1 lib/cocina/models/request_file.rb
cocina-models-0.31.0 lib/cocina/models/request_file.rb
cocina-models-0.30.0 lib/cocina/models/request_file.rb