Sha256: 027144f52840c841c2858b9f2431c02ccac5cb6dabfbba9de15fe1d6ee6bad29

Contents?: true

Size: 827 Bytes

Versions: 9

Compression:

Stored size: 827 Bytes

Contents

# frozen_string_literal: true
module Dynflow
  class Action::Suspended
    attr_reader :execution_plan_id, :step_id

    def initialize(action)
      @world             = action.world
      @execution_plan_id = action.execution_plan_id
      @step_id           = action.run_step_id
    end

    def plan_event(event, time, sent = Concurrent::Promises.resolvable_future)
      @world.plan_event(execution_plan_id, step_id, event, time, sent)
    end

    def event(event, sent = Concurrent::Promises.resolvable_future)
      # TODO: deprecate 2 levels backtrace (to know it's called from clock or internaly)
      # remove lib/dynflow/clock.rb ClockReference#ping branch condition on removal.
      plan_event(event, nil, sent)
    end

    def <<(event = nil)
      event event
    end

    alias_method :ask, :event
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
dynflow-1.4.8 lib/dynflow/action/suspended.rb
dynflow-1.4.7 lib/dynflow/action/suspended.rb
dynflow-1.4.6 lib/dynflow/action/suspended.rb
dynflow-1.4.5 lib/dynflow/action/suspended.rb
dynflow-1.4.4 lib/dynflow/action/suspended.rb
dynflow-1.4.3 lib/dynflow/action/suspended.rb
dynflow-1.4.2 lib/dynflow/action/suspended.rb
dynflow-1.4.1 lib/dynflow/action/suspended.rb
dynflow-1.4.0 lib/dynflow/action/suspended.rb