Class: Io::Flow::V0::Models::GenericError

Inherits:
Object
  • Object
show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Overview

An error of some type has occured. The most common error will be validation on input. See messages for details.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(incoming = {}) ⇒ GenericError



20209
20210
20211
20212
20213
20214
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20209

def initialize(incoming={})
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:messages], 'GenericError')
  @code = (x = (x = opts.delete(:code); x.nil? ? "generic_error" : x); x.is_a?(::Io::Flow::V0::Models::GenericErrorCode) ? x : ::Io::Flow::V0::Models::GenericErrorCode.apply(x))
  @messages = HttpClient::Preconditions.assert_class('messages', opts.delete(:messages), Array).map { |v| HttpClient::Preconditions.assert_class('messages', v, String) }
end

Instance Attribute Details

#codeObject (readonly)

Returns the value of attribute code.



20207
20208
20209
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20207

def code
  @code
end

#messagesObject (readonly)

Returns the value of attribute messages.



20207
20208
20209
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20207

def messages
  @messages
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



20220
20221
20222
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20220

def copy(incoming={})
  GenericError.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
end

#to_hashObject



20224
20225
20226
20227
20228
20229
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20224

def to_hash
  {
    :code => code.value,
    :messages => messages
  }
end

#to_jsonObject



20216
20217
20218
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20216

def to_json
  JSON.dump(to_hash)
end