Class: SimpleServiceObject::Base
- Inherits:
-
Object
- Object
- SimpleServiceObject::Base
- Defined in:
- lib/simple_service_object/base.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.call(*args) ⇒ Object
6 7 8 9 10 |
# File 'lib/simple_service_object/base.rb', line 6 def self.call(*args) instance = new(*args) result_value = instance.call Result.new(result_value, instance.errors) end |
.call!(*args) ⇒ Object
12 13 14 15 16 |
# File 'lib/simple_service_object/base.rb', line 12 def self.call!(*args) result = call(*args) raise FailureError, result.errors.join(", ") if result.failure? result.value end |
Instance Method Details
#call ⇒ Object
18 19 20 |
# File 'lib/simple_service_object/base.rb', line 18 def call raise NotImplementedError, "Should be implemented in subclass." end |
#errors ⇒ Object
22 23 24 |
# File 'lib/simple_service_object/base.rb', line 22 def errors @errors ||= [] end |