Class: DashOverlord::UseCases::Context
- Inherits:
-
OpenStruct
- Object
- OpenStruct
- DashOverlord::UseCases::Context
- Includes:
- ActiveModel::Serialization
- Defined in:
- lib/dash_overlord/use_cases/context.rb
Defined Under Namespace
Classes: StatusString
Instance Method Summary collapse
- #add_error(status, message, class_name) ⇒ Object
- #assign_attributes(attributes) ⇒ Object
- #error ⇒ Object
- #errors ⇒ Object
- #last_known_error ⇒ Object
- #status ⇒ Object
- #status=(_) ⇒ Object
- #valid? ⇒ Boolean (also: #ok?)
Instance Method Details
#add_error(status, message, class_name) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/dash_overlord/use_cases/context.rb', line 21 def add_error(status, , class_name) self.status.send("#{status}!") @last_known_error = { status: status.to_s, message: .to_s, class_name: class_name.to_s } errors.push(@last_known_error) end |
#assign_attributes(attributes) ⇒ Object
13 14 15 |
# File 'lib/dash_overlord/use_cases/context.rb', line 13 def assign_attributes(attributes) attributes.each { |key, value| send("#{key}=", value) } end |
#error ⇒ Object
37 38 39 |
# File 'lib/dash_overlord/use_cases/context.rb', line 37 def error OpenStruct.new(last_known_error) end |
#errors ⇒ Object
17 18 19 |
# File 'lib/dash_overlord/use_cases/context.rb', line 17 def errors @errors ||= [] end |
#last_known_error ⇒ Object
33 34 35 |
# File 'lib/dash_overlord/use_cases/context.rb', line 33 def last_known_error @last_known_error ||= {} end |
#status ⇒ Object
62 63 64 |
# File 'lib/dash_overlord/use_cases/context.rb', line 62 def status @status ||= StatusString.new('ok') end |
#status=(_) ⇒ Object
66 67 68 |
# File 'lib/dash_overlord/use_cases/context.rb', line 66 def status=(_) raise 'status is a reserved keyword which cannot be set' end |
#valid? ⇒ Boolean Also known as: ok?
41 42 43 |
# File 'lib/dash_overlord/use_cases/context.rb', line 41 def valid? errors.empty? end |