Sha256: f21931e035f3ba90c3eb8d0fd17e2ed6e42fe0f19db19778d3576c3b447b7288

Contents?: true

Size: 1.08 KB

Versions: 10

Compression:

Stored size: 1.08 KB

Contents

module Ddr
  module Models
    module HasIntermediateFile
      extend ActiveSupport::Concern

      included do
        has_file_datastream name: Ddr::Datastreams::INTERMEDIATE_FILE,
                            type: Ddr::Datastreams::IntermediateFileDatastream,
                            versionable: true,
                            label: "Intermediate file for this object",
                            control_group: "E"

        include FileManagement
      end

      def intermediate_type
        datastreams[Ddr::Datastreams::INTERMEDIATE_FILE].mimeType
      end

      def intermediate_extension
        extensions = Ddr::Models.preferred_file_extensions
        if extensions.include? intermediate_type
          extensions[intermediate_type]
        else
          intermediate_extension_default
        end
      end

      def intermediate_path
        datastreams[Ddr::Datastreams::INTERMEDIATE_FILE].file_path
      end

      private

      def intermediate_extension_default
        datastreams[Ddr::Datastreams::INTERMEDIATE_FILE].default_file_extension
      end

    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
ddr-models-2.11.0 lib/ddr/models/has_intermediate_file.rb
ddr-models-2.10.2 lib/ddr/models/has_intermediate_file.rb
ddr-models-2.10.1 lib/ddr/models/has_intermediate_file.rb
ddr-models-2.10.0 lib/ddr/models/has_intermediate_file.rb
ddr-models-2.10.0.rc2 lib/ddr/models/has_intermediate_file.rb
ddr-models-2.10.0.rc1 lib/ddr/models/has_intermediate_file.rb
ddr-models-2.9.2 lib/ddr/models/has_intermediate_file.rb
ddr-models-2.9.1 lib/ddr/models/has_intermediate_file.rb
ddr-models-2.9.0 lib/ddr/models/has_intermediate_file.rb
ddr-models-2.9.0.rc1 lib/ddr/models/has_intermediate_file.rb