Exception: Steroids::Errors::Base
- Inherits:
-
StandardError
- Object
- StandardError
- Steroids::Errors::Base
- Defined in:
- lib/steroids/errors/base.rb
Direct Known Subclasses
BadRequestError, ConflictError, ForbiddenError, GenericError, InternalServerError, NotFoundError, NotImplementedError, UnauthorizedError, UnprocessableEntityError, Services::Base::AmbiguousProcessMethodError, Services::Base::AsyncProcessArgumentError, Services::Base::RuntimeError
Constant Summary collapse
- OTPIONS =
i[status errors code cause context log]
Instance Attribute Summary collapse
-
#cause ⇒ Object
readonly
Returns the value of attribute cause.
-
#code ⇒ Object
readonly
Returns the value of attribute code.
-
#context ⇒ Object
readonly
Returns the value of attribute context.
-
#errors ⇒ Object
readonly
Returns the value of attribute errors.
-
#id ⇒ Object
readonly
Returns the value of attribute id.
-
#logged ⇒ Object
readonly
Returns the value of attribute logged.
-
#message ⇒ Object
readonly
Returns the value of attribute message.
-
#record ⇒ Object
readonly
Returns the value of attribute record.
-
#status ⇒ Object
readonly
Returns the value of attribute status.
-
#timestamp ⇒ Object
readonly
Returns the value of attribute timestamp.
Instance Method Summary collapse
- #cause_message ⇒ Object
-
#initialize(message_string = nil, **options) ⇒ Base
constructor
A new instance of Base.
- #log! ⇒ Object
- #to_json ⇒ Object
Constructor Details
#initialize(message_string = nil, **options) ⇒ Base
Returns a new instance of Base.
16 17 18 19 20 21 22 23 24 |
# File 'lib/steroids/errors/base.rb', line 16 def initialize( = nil, **) @caller = caller = .select{|key|OTPIONS.include?(key)} = .select{|key|!OTPIONS.include?(key)} define_instance_variables_for(, **) super(**, message: , cause: @cause) set_backtrace(@cause&.backtrace || backtrace_locations || caller) .fetch(:log, false) ? self.log! : self.quiet_log end |
Instance Attribute Details
#cause ⇒ Object (readonly)
Returns the value of attribute cause.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def cause @cause end |
#code ⇒ Object (readonly)
Returns the value of attribute code.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def code @code end |
#context ⇒ Object (readonly)
Returns the value of attribute context.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def context @context end |
#errors ⇒ Object (readonly)
Returns the value of attribute errors.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def errors @errors end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def id @id end |
#logged ⇒ Object (readonly)
Returns the value of attribute logged.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def logged @logged end |
#message ⇒ Object (readonly)
Returns the value of attribute message.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def end |
#record ⇒ Object (readonly)
Returns the value of attribute record.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def record @record end |
#status ⇒ Object (readonly)
Returns the value of attribute status.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def status @status end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
13 14 15 |
# File 'lib/steroids/errors/base.rb', line 13 def end |
Instance Method Details
#cause_message ⇒ Object
35 36 37 38 39 |
# File 'lib/steroids/errors/base.rb', line 35 def if cause reflect_on(cause, :original_message) || reflect_on(cause, :message) end end |
#log! ⇒ Object
30 31 32 33 |
# File 'lib/steroids/errors/base.rb', line 30 def log! Steroids::Logger.print(self) @logged = true end |
#to_json ⇒ Object
26 27 28 |
# File 'lib/steroids/errors/base.rb', line 26 def to_json Steroids::ErrorSerializer.new(self).to_json end |