def communication_error(e)
      return CommunicationError.new(e.message, e.response) if e.respond_to? :response
      CommunicationError.new(e.message)
    end
def communication_error(e)
      return CommunicationError.new(e.message, e.response) if e.respond_to? :response
      CommunicationError.new(e.message)
    end
Raises CommunicationError and stores response in it if present

 @param [StandardException] e upstream exception object