Sha256: 844f31e37a71906ed1e8bdc03a01b12b94c6a85eab626243f60d1a8c57e2f26d

Contents?: true

Size: 799 Bytes

Versions: 29

Compression:

Stored size: 799 Bytes

Contents

# frozen_string_literal: true
module Hyrax
  module Transactions
    module Steps
      ##
      # A step that sets the modified date to now for an input resource or
      # change_set
      #
      # @since 2.4.0
      class SetModifiedDate
        include Dry::Monads[:result]

        ##
        # @param [#time_in_utc] time_service
        def initialize(time_service: Hyrax::TimeService)
          @time_service = time_service
        end

        ##
        # @param [#date_modified=] obj
        #
        # @return [Dry::Monads::Result]
        def call(obj)
          return Failure[:no_date_modified_attribute, obj] unless
            obj.respond_to?(:date_modified=)

          obj.date_modified = @time_service.time_in_utc

          Success(obj)
        end
      end
    end
  end
end

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
hyrax-5.1.0.pre.beta1 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-5.0.4 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-5.0.3 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-5.0.2 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-5.0.1 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-5.0.0 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-5.0.0.rc3 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-5.0.0.rc2 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-5.0.0.rc1 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-3.6.0 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-4.0.0 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-4.0.0.rc3 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-4.0.0.rc2 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-4.0.0.rc1 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-3.5.0 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-4.0.0.beta2 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-3.4.2 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-4.0.0.beta1 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-3.4.1 lib/hyrax/transactions/steps/set_modified_date.rb
hyrax-3.4.0 lib/hyrax/transactions/steps/set_modified_date.rb