lib/xero_gateway/error.rb in xero_gateway-float-2.0.18 vs lib/xero_gateway/error.rb in xero_gateway-float-2.1.1

- old
+ new

@@ -12,7 +12,23 @@ [:description, :date_time, :type, :message].each do |field| return false if send(field) != other.send(field) end return true end + + # pass a REXML::Element error object to + # have returned a new Error object + def self.parse(error_element) + description = REXML::XPath.first(error_element, "Description") + date = REXML::XPath.first(error_element, "//DateTime") + type = REXML::XPath.first(error_element, "//ExceptionType") + message = REXML::XPath.first(error_element, "//Message") + Error.new( + :description => (description.text if description), + :date_time => (date.text if date), + :type => (type.text if type), + :message => (message.text if message) + ) + end + end end