mirror of
https://github.com/fog/fog-aws.git
synced 2022-11-09 13:50:52 -05:00
14 lines
460 B
Ruby
14 lines
460 B
Ruby
|
module Fog
|
||
|
module AWS
|
||
|
module Errors
|
||
|
def self.match_error(error)
|
||
|
matcher = lambda {|s| s.match(/(?:.*<Code>(.*)<\/Code>)(?:.*<Message>(.*)<\/Message>)/m)}
|
||
|
[error.message, error.response.body].each(&Proc.new {|s|
|
||
|
match = matcher.call(s)
|
||
|
return {:code => match[1].split('.').last, :message => match[2]} if match
|
||
|
})
|
||
|
{} # we did not match the message or response body
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|