lib/amsi/validator/request_fault.rb in amsi-1.0.1 vs lib/amsi/validator/request_fault.rb in amsi-1.1.0
- old
+ new
@@ -12,10 +12,11 @@
end
# @raise [Amsi::Error::RequestFault] if the response has a fault
def validate!
return unless error?
+
raise Error::RequestFault.new(error_message, fault_code, details)
end
private
@@ -25,10 +26,11 @@
response['soap:Envelope']['soap:Body']['soap:Fault']
end
def details
return unless fault['detail']
+
app_fault = fault['detail'].values.first
FaultDetails.new(
app_fault['CustomMessage'],
app_fault['ExceptionMessage'],
app_fault['LogId']
@@ -39,16 +41,18 @@
!fault.nil?
end
def fault_code
return unless fault
+
code = fault['faultcode']
code = code['__content__'] if code.is_a?(Hash)
code.strip
end
def error_message
return unless fault
+
fault_string = fault['faultstring']
fault_string = fault_string['__content__'] if fault_string.is_a?(Hash)
fault_string.strip
end
end