Class: FastCqrs::Request
- Inherits:
-
Object
- Object
- FastCqrs::Request
- Defined in:
- lib/fast_cqrs/request.rb
Overview
A base Request class uses deserializer to parse the Rack::Request body into an easy to use hash. Useful when more data are required than passed in the input Usage: Inherit and override the #model method
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.inherited(klass) ⇒ Object
14 15 16 17 18 19 |
# File 'lib/fast_cqrs/request.rb', line 14 def self.inherited(klass) super klass.class_eval do include Dry::Monads[:result, :try] end end |
Instance Method Details
#call(input) ⇒ Object
21 22 23 24 25 |
# File 'lib/fast_cqrs/request.rb', line 21 def call(input) return fail! unless (deserialized = model(input)) Success(deserialized) end |