Sha256: 903ace9a4593458e87acbf0a24d6878ab16eeda03f6b9001585064a96ee0dda1

Contents?: true

Size: 985 Bytes

Versions: 17

Compression:

Stored size: 985 Bytes

Contents

module Dynflow
  module Executors
    class Abstract
      Event = Algebrick.type do
        fields! execution_plan_id: String,
                step_id:           Fixnum,
                event:             Object,
                result:            Concurrent::Edge::Future
      end

      include Algebrick::TypeCheck
      attr_reader :world, :logger

      def initialize(world)
        @world  = Type! world, World
        @logger = world.logger
      end

      # @return [Concurrent::Edge::Future]
      # @raise when execution_plan_id is not accepted
      def execute(execution_plan_id)
        raise NotImplementedError
      end

      def event(execution_plan_id, step_id, event, future = Concurrent.future)
        raise NotImplementedError
      end

      def terminate(future = Concurrent.future)
        raise NotImplementedError
      end

      # @return [Concurrent::Edge::Future]
      def initialized
        raise NotImplementedError
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
dynflow-0.8.16 lib/dynflow/executors/abstract.rb
dynflow-0.8.15 lib/dynflow/executors/abstract.rb
dynflow-0.8.14 lib/dynflow/executors/abstract.rb
dynflow-0.8.13 lib/dynflow/executors/abstract.rb
dynflow-0.8.12 lib/dynflow/executors/abstract.rb
dynflow-0.8.11 lib/dynflow/executors/abstract.rb
dynflow-0.8.10 lib/dynflow/executors/abstract.rb
dynflow-0.8.9 lib/dynflow/executors/abstract.rb
dynflow-0.8.8 lib/dynflow/executors/abstract.rb
dynflow-0.8.7 lib/dynflow/executors/abstract.rb
dynflow-0.8.6 lib/dynflow/executors/abstract.rb
dynflow-0.8.5 lib/dynflow/executors/abstract.rb
dynflow-0.8.4 lib/dynflow/executors/abstract.rb
dynflow-0.8.3 lib/dynflow/executors/abstract.rb
dynflow-0.8.2 lib/dynflow/executors/abstract.rb
dynflow-0.8.1 lib/dynflow/executors/abstract.rb
dynflow-0.8.0 lib/dynflow/executors/abstract.rb