Class: Activerecord::Transactionable::Result
- Inherits:
-
Object
- Object
- Activerecord::Transactionable::Result
- Defined in:
- lib/activerecord/transactionable/result.rb
Instance Attribute Summary collapse
-
#attempt ⇒ Object
readonly
Returns the value of attribute attempt.
-
#context ⇒ Object
readonly
Returns the value of attribute context.
-
#error ⇒ Object
readonly
Returns the value of attribute error.
-
#nested ⇒ Object
readonly
Returns the value of attribute nested.
-
#result ⇒ Object
readonly
Returns the value of attribute result.
-
#type ⇒ Object
readonly
Returns the value of attribute type.
-
#value ⇒ Object
readonly
Returns the value of attribute value.
Instance Method Summary collapse
- #fail? ⇒ Boolean
-
#initialize(value, context:, transaction_open:, attempt:, error: nil, type: nil) ⇒ Result
constructor
A new instance of Result.
- #success? ⇒ Boolean
- #to_h(skip_error: nil) ⇒ Object
- #to_s(skip_error: nil) ⇒ Object
Constructor Details
#initialize(value, context:, transaction_open:, attempt:, error: nil, type: nil) ⇒ Result
Returns a new instance of Result.
8 9 10 11 12 13 14 15 16 |
# File 'lib/activerecord/transactionable/result.rb', line 8 def initialize(value, context:, transaction_open:, attempt:, error: nil, type: nil) @value = value @result = fail? ? "fail" : "success" @context = context @nested = transaction_open ? true : false @attempt = attempt @error = error @type = type end |
Instance Attribute Details
#attempt ⇒ Object (readonly)
Returns the value of attribute attempt.
6 7 8 |
# File 'lib/activerecord/transactionable/result.rb', line 6 def attempt @attempt end |
#context ⇒ Object (readonly)
Returns the value of attribute context.
6 7 8 |
# File 'lib/activerecord/transactionable/result.rb', line 6 def context @context end |
#error ⇒ Object (readonly)
Returns the value of attribute error.
6 7 8 |
# File 'lib/activerecord/transactionable/result.rb', line 6 def error @error end |
#nested ⇒ Object (readonly)
Returns the value of attribute nested.
6 7 8 |
# File 'lib/activerecord/transactionable/result.rb', line 6 def nested @nested end |
#result ⇒ Object (readonly)
Returns the value of attribute result.
6 7 8 |
# File 'lib/activerecord/transactionable/result.rb', line 6 def result @result end |
#type ⇒ Object (readonly)
Returns the value of attribute type.
6 7 8 |
# File 'lib/activerecord/transactionable/result.rb', line 6 def type @type end |
#value ⇒ Object (readonly)
Returns the value of attribute value.
6 7 8 |
# File 'lib/activerecord/transactionable/result.rb', line 6 def value @value end |
Instance Method Details
#fail? ⇒ Boolean
18 19 20 |
# File 'lib/activerecord/transactionable/result.rb', line 18 def fail? value == false end |
#success? ⇒ Boolean
22 23 24 |
# File 'lib/activerecord/transactionable/result.rb', line 22 def success? value == true end |
#to_h(skip_error: nil) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/activerecord/transactionable/result.rb', line 26 def to_h(skip_error: nil) diagnostic_data = { result: result, type: type, context: context, nested: nested, attempt: attempt, } if !skip_error && error diagnostic_data[:error] = error.class.to_s diagnostic_data[:message] = error. end diagnostic_data end |
#to_s(skip_error: nil) ⇒ Object
41 42 43 |
# File 'lib/activerecord/transactionable/result.rb', line 41 def to_s(skip_error: nil) to_h(skip_error: skip_error).to_s end |