Sha256: 14bc1579dd82e65feaff15ea36616e0540341b5a5440edc42924e5e2b1b1fc79

Contents?: true

Size: 1.25 KB

Versions: 5

Compression:

Stored size: 1.25 KB

Contents

# frozen_string_literal: true

module Dor
  module Workflow
    module Response
      # Represents the status of an object doing a workflow process
      class Process
        extend Deprecation
        self.deprecation_horizon = '4.x'

        # @params [Workflow] parent
        # @params [Hash] attributes
        def initialize(parent:, **attributes)
          @parent = parent
          @attributes = attributes
        end

        def name
          @attributes[:name].presence
        end

        def status
          @attributes[:status].presence
        end

        def datetime
          @attributes[:datetime].presence
        end

        def elapsed
          @attributes[:elapsed].presence
        end

        def attempts
          @attributes[:attempts].presence
        end

        def lifecycle
          @attributes[:lifecycle].presence
        end

        def note
          @attributes[:note].presence
        end

        def error_message
          @attributes[:errorMessage].presence
        end

        def lane_id
          @attributes[:laneId].presence
        end

        delegate :pid, :workflow_name, :repository, to: :parent
        deprecation_deprecate :repository

        private

        attr_reader :parent
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
dor-workflow-client-4.1.0 lib/dor/workflow/response/process.rb
dor-workflow-client-4.0.0 lib/dor/workflow/response/process.rb
dor-workflow-client-3.24.0 lib/dor/workflow/response/process.rb
dor-workflow-client-3.23.1 lib/dor/workflow/response/process.rb
dor-workflow-client-3.23.0 lib/dor/workflow/response/process.rb