ResourceError ResourceError::httpError(SoupMessage* message, GError* error, SoupRequest* request) { if (!message || !SOUP_STATUS_IS_TRANSPORT_ERROR(message->status_code)) return genericIOError(error, request); return ResourceError(g_quark_to_string(SOUP_HTTP_ERROR), message->status_code, failingURI(request), String::fromUTF8(message->reason_phrase)); }
ResourceError ResourceError::tlsError(SoupRequest* request, unsigned tlsErrors, GTlsCertificate* certificate) { ResourceError resourceError(g_quark_to_string(SOUP_HTTP_ERROR), SOUP_STATUS_SSL_FAILED, failingURI(request), unacceptableTLSCertificate()); resourceError.setTLSErrors(tlsErrors); resourceError.setCertificate(certificate); return resourceError; }
ResourceError ResourceError::genericGError(GError* error, SoupRequest* request) { return ResourceError(g_quark_to_string(error->domain), error->code, failingURI(request), String::fromUTF8(error->message)); }
ResourceError ResourceError::authenticationError(SoupMessage* message) { ASSERT(message); return ResourceError(g_quark_to_string(SOUP_HTTP_ERROR), message->status_code, failingURI(soup_message_get_uri(message)), String::fromUTF8(message->reason_phrase)); }
ResourceError ResourceError::transportError(SoupRequest* request, int statusCode, const String& reasonPhrase) { return ResourceError(g_quark_to_string(SOUP_HTTP_ERROR), statusCode, failingURI(request), reasonPhrase); }
static String failingURI(SoupRequest* request) { ASSERT(request); return failingURI(soup_request_get_uri(request)); }
ResourceError ResourceError::tlsError(SoupRequest* request, unsigned /* tlsErrors */, GTlsCertificate*) { return ResourceError(g_quark_to_string(SOUP_HTTP_ERROR), SOUP_STATUS_SSL_FAILED, failingURI(request), unacceptableTLSCertificate()); }