Module: RubyReactor

Defined in:
lib/ruby_reactor.rb,
lib/ruby_reactor/lock.rb,
lib/ruby_reactor/step.rb,
lib/ruby_reactor/rspec.rb,
lib/ruby_reactor/period.rb,
lib/ruby_reactor/context.rb,
lib/ruby_reactor/reactor.rb,
lib/ruby_reactor/version.rb,
lib/ruby_reactor/web/api.rb,
lib/ruby_reactor/executor.rb,
lib/ruby_reactor/registry.rb,
lib/ruby_reactor/semaphore.rb,
lib/ruby_reactor/error/base.rb,
lib/ruby_reactor/rate_limit.rb,
lib/ruby_reactor/dsl/reactor.rb,
lib/ruby_reactor/map/helpers.rb,
lib/ruby_reactor/dsl/lockable.rb,
lib/ruby_reactor/configuration.rb,
lib/ruby_reactor/map/collector.rb,
lib/ruby_reactor/map/execution.rb,
lib/ruby_reactor/retry_context.rb,
lib/ruby_reactor/rspec/helpers.rb,
lib/ruby_reactor/step/map_step.rb,
lib/ruby_reactor/template/base.rb,
lib/ruby_reactor/map/dispatcher.rb,
lib/ruby_reactor/rspec/matchers.rb,
lib/ruby_reactor/template/input.rb,
lib/ruby_reactor/template/value.rb,
lib/ruby_reactor/dsl/map_builder.rb,
lib/ruby_reactor/sidekiq_adapter.rb,
lib/ruby_reactor/storage/adapter.rb,
lib/ruby_reactor/template/result.rb,
lib/ruby_reactor/validation/base.rb,
lib/ruby_reactor/web/application.rb,
lib/ruby_reactor/dependency_graph.rb,
lib/ruby_reactor/dsl/step_builder.rb,
lib/ruby_reactor/error/undo_error.rb,
lib/ruby_reactor/interrupt_result.rb,
lib/ruby_reactor/template/element.rb,
lib/ruby_reactor/step/compose_step.rb,
lib/ruby_reactor/context_serializer.rb,
lib/ruby_reactor/rspec/test_subject.rb,
lib/ruby_reactor/dsl/compose_builder.rb,
lib/ruby_reactor/retry_queued_result.rb,
lib/ruby_reactor/dsl/template_helpers.rb,
lib/ruby_reactor/map/element_executor.rb,
lib/ruby_reactor/utils/code_extractor.rb,
lib/ruby_reactor/dsl/interrupt_builder.rb,
lib/ruby_reactor/map/result_enumerator.rb,
lib/ruby_reactor/storage/configuration.rb,
lib/ruby_reactor/storage/redis_adapter.rb,
lib/ruby_reactor/storage/redis_locking.rb,
lib/ruby_reactor/dsl/validation_helpers.rb,
lib/ruby_reactor/error/dependency_error.rb,
lib/ruby_reactor/error/validation_error.rb,
lib/ruby_reactor/executor/graph_manager.rb,
lib/ruby_reactor/executor/retry_manager.rb,
lib/ruby_reactor/executor/step_executor.rb,
lib/ruby_reactor/sidekiq_workers/worker.rb,
lib/ruby_reactor/executor/result_handler.rb,
lib/ruby_reactor/template/dynamic_source.rb,
lib/ruby_reactor/error/compensation_error.rb,
lib/ruby_reactor/error/step_failure_error.rb,
lib/ruby_reactor/executor/input_validator.rb,
lib/ruby_reactor/dsl/interrupt_step_config.rb,
lib/ruby_reactor/rspec/step_executor_patch.rb,
lib/ruby_reactor/validation/schema_builder.rb,
lib/ruby_reactor/error/schema_version_error.rb,
lib/ruby_reactor/validation/input_validator.rb,
lib/ruby_reactor/error/deserialization_error.rb,
lib/ruby_reactor/error/input_validation_error.rb,
lib/ruby_reactor/error/context_too_large_error.rb,
lib/ruby_reactor/executor/compensation_manager.rb,
lib/ruby_reactor/max_retries_exhausted_failure.rb,
lib/ruby_reactor/sidekiq_workers/map_element_worker.rb,
lib/ruby_reactor/sidekiq_workers/map_collector_worker.rb,
lib/ruby_reactor/sidekiq_workers/map_execution_worker.rb

Defined Under Namespace

Modules: Dsl, Error, Map, Period, RSpec, SidekiqWorkers, Step, Storage, Template, Utils, Validation, Web Classes: AsyncResult, Configuration, Context, ContextSerializer, DependencyGraph, Executor, Failure, InterruptResult, Lock, MaxRetriesExhaustedFailure, RateLimit, Reactor, Registry, RetryContext, RetryQueuedResult, Semaphore, SidekiqAdapter, Skipped, Success

Constant Summary collapse

VERSION =
"0.3.2"

Class Method Summary collapse

Class Method Details

.configurationObject



327
328
329
# File 'lib/ruby_reactor.rb', line 327

def self.configuration
  Configuration.instance
end

.configure {|Configuration.instance| ... } ⇒ Object

Yields:



323
324
325
# File 'lib/ruby_reactor.rb', line 323

def self.configure
  yield(Configuration.instance) if block_given?
end

.Failure(error, **kwargs) ⇒ Object



313
314
315
# File 'lib/ruby_reactor.rb', line 313

def self.Failure(error, **kwargs)
  Failure.new(error, **kwargs)
end

.rootObject



331
332
333
# File 'lib/ruby_reactor.rb', line 331

def self.root
  Pathname.new(File.expand_path("..", __dir__))
end

.Skipped(reason: nil, **kwargs) ⇒ Object

Build a ‘Skipped` result. Return one from a step’s ‘run` block to halt the reactor cleanly without triggering compensation of previous steps.



319
320
321
# File 'lib/ruby_reactor.rb', line 319

def self.Skipped(reason: nil, **kwargs)
  Skipped.new(reason: reason, **kwargs)
end

.Success(value = nil) ⇒ Object

Global helper methods



309
310
311
# File 'lib/ruby_reactor.rb', line 309

def self.Success(value = nil)
  Success.new(value)
end