Class: Julewire::Core::Processing::ProcessorWrapper
- Inherits:
-
Object
- Object
- Julewire::Core::Processing::ProcessorWrapper
- Defined in:
- lib/julewire/core/processing/processor_wrapper.rb
Constant Summary collapse
- FAIL_CLOSED =
:fail_closed- FAIL_OPEN =
:fail_open- DROP =
:drop- POLICIES =
[FAIL_CLOSED, FAIL_OPEN, DROP].freeze
Instance Attribute Summary collapse
-
#on_error ⇒ Object
readonly
Returns the value of attribute on_error.
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(processor, on_error: FAIL_CLOSED) ⇒ ProcessorWrapper
constructor
A new instance of ProcessorWrapper.
- #processor_name ⇒ Object
Constructor Details
#initialize(processor, on_error: FAIL_CLOSED) ⇒ ProcessorWrapper
Returns a new instance of ProcessorWrapper.
20 21 22 23 24 |
# File 'lib/julewire/core/processing/processor_wrapper.rb', line 20 def initialize(processor, on_error: FAIL_CLOSED) validate_processor!(processor) @processor = processor @on_error = self.class.normalize_policy(on_error) end |
Instance Attribute Details
#on_error ⇒ Object (readonly)
Returns the value of attribute on_error.
12 13 14 |
# File 'lib/julewire/core/processing/processor_wrapper.rb', line 12 def on_error @on_error end |
Class Method Details
.normalize_policy(value) ⇒ Object
15 16 17 |
# File 'lib/julewire/core/processing/processor_wrapper.rb', line 15 def normalize_policy(value) Validation.validate_symbol_choice!(value, name: "processor on_error", choices: POLICIES) end |
Instance Method Details
#call ⇒ Object
26 27 28 |
# File 'lib/julewire/core/processing/processor_wrapper.rb', line 26 def call(...) @processor.call(...) end |
#processor_name ⇒ Object
30 31 32 |
# File 'lib/julewire/core/processing/processor_wrapper.rb', line 30 def processor_name @processor.class.name end |