Class: Line::Bot::V2::MessagingApi::ErrorResponse
- Inherits:
-
Object
- Object
- Line::Bot::V2::MessagingApi::ErrorResponse
- Defined in:
- lib/line/bot/v2/messaging_api/model/error_response.rb
Overview
Instance Attribute Summary collapse
-
#details ⇒ Array[ErrorDetail]?
An array of error details.
-
#message ⇒ String
Message containing information about the error.
-
#sent_messages ⇒ Array[SentMessage]?
Array of sent messages.
Class Method Summary collapse
-
.create(args) ⇒ Line::Bot::V2::MessagingApi::ErrorResponse
Create an instance of the class from a hash.
Instance Method Summary collapse
-
#==(other) ⇒ Boolean
True if the objects are equal, false otherwise.
-
#hash ⇒ Integer
Hash code of the object.
-
#initialize(message:, details: nil, sent_messages: nil, **dynamic_attributes) ⇒ ErrorResponse
constructor
A new instance of ErrorResponse.
Constructor Details
#initialize(message:, details: nil, sent_messages: nil, **dynamic_attributes) ⇒ ErrorResponse
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/line/bot/v2/messaging_api/model/error_response.rb', line 29 def initialize( message:, details: nil, sent_messages: nil, **dynamic_attributes ) @message = @details = details&.map do |item| if item.is_a?(Hash) Line::Bot::V2::MessagingApi::ErrorDetail.create(**item) # steep:ignore InsufficientKeywordArguments else item end end @sent_messages = &.map do |item| if item.is_a?(Hash) Line::Bot::V2::MessagingApi::SentMessage.create(**item) # steep:ignore InsufficientKeywordArguments else item end end dynamic_attributes.each do |key, value| self.class.attr_accessor key if value.is_a?(Hash) struct_klass = Struct.new(*value.keys.map(&:to_sym)) struct_values = value.map { |_k, v| v.is_a?(Hash) ? Line::Bot::V2::Utils.hash_to_struct(v) : v } instance_variable_set("@#{key}", struct_klass.new(*struct_values)) else instance_variable_set("@#{key}", value) end end end |
Instance Attribute Details
#details ⇒ Array[ErrorDetail]?
21 22 23 |
# File 'lib/line/bot/v2/messaging_api/model/error_response.rb', line 21 def details @details end |
#message ⇒ String
18 19 20 |
# File 'lib/line/bot/v2/messaging_api/model/error_response.rb', line 18 def @message end |
#sent_messages ⇒ Array[SentMessage]?
24 25 26 |
# File 'lib/line/bot/v2/messaging_api/model/error_response.rb', line 24 def @sent_messages end |
Class Method Details
.create(args) ⇒ Line::Bot::V2::MessagingApi::ErrorResponse
Create an instance of the class from a hash
68 69 70 71 |
# File 'lib/line/bot/v2/messaging_api/model/error_response.rb', line 68 def self.create(args) # steep:ignore symbolized_args = Line::Bot::V2::Utils.deep_symbolize(args) return new(**symbolized_args) # steep:ignore end |
Instance Method Details
#==(other) ⇒ Boolean
75 76 77 78 79 80 81 |
# File 'lib/line/bot/v2/messaging_api/model/error_response.rb', line 75 def ==(other) return false unless self.class == other.class instance_variables.all? do |var| instance_variable_get(var) == other.instance_variable_get(var) end end |
#hash ⇒ Integer
84 85 86 |
# File 'lib/line/bot/v2/messaging_api/model/error_response.rb', line 84 def hash [self.class, *instance_variables.map { |var| instance_variable_get(var) }].hash end |