module AWS::SimpleWorkflow::Errors::ModeledError

Public Class Methods

new(request = nil, response = nil) click to toggle source
# File lib/aws/simple_workflow/errors.rb, line 22
def initialize(request = nil, response = nil)
  message = extract_message(response)
  include_error_type(response) if response
  super(request, response, message)
end

Public Instance Methods

code() click to toggle source
# File lib/aws/simple_workflow/errors.rb, line 45
def code
  self.class.name =~ %r(::)?([^:]+)$/
  $2
end
extract_message(response) click to toggle source
# File lib/aws/simple_workflow/errors.rb, line 28
def extract_message(response)
  if response and
      response.body
    JSON.load(response.body)["message"] || code
  else
    code
  end
end
include_error_type(response) click to toggle source
# File lib/aws/simple_workflow/errors.rb, line 37
def include_error_type(response)
  if response.status >= 500
    extend Errors::ServerError
  else
    extend Errors::ClientError
  end
end