Sha256: 425193ae2a64a1a66b0f8f3e1cdc803965b095085f47cd26119e5d71c41effa8

Contents?: true

Size: 685 Bytes

Versions: 23

Compression:

Stored size: 685 Bytes

Contents

module Dynflow
  module DelayedExecutors
    class Abstract

      attr_reader :core

      def initialize(world, options = {})
        @world = world
        @options = options
        spawn
      end

      def start
        @core.ask(:start)
      end

      def terminate
        @core.ask(:terminate!)
      end

      private

      def core_class
        raise NotImplementedError
      end

      def spawn
        Concurrent.future.tap do |initialized|
          @core = core_class.spawn name: 'delayed-executor',
                                   args: [@world, @options],
                                   initialized: initialized
        end
      end

    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
dynflow-0.8.26 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.25 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.24 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.23 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.22 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.21 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.20 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.19 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.18 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.17 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.16 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.15 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.14 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.13 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.12 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.11 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.10 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.9 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.8 lib/dynflow/delayed_executors/abstract.rb
dynflow-0.8.7 lib/dynflow/delayed_executors/abstract.rb