summaryrefslogtreecommitdiff
path: root/rest/rest-proxy.h
diff options
context:
space:
mode:
authorRob Bradford <rob@linux.intel.com>2008-09-16 11:20:01 +0100
committerRob Bradford <rob@linux.intel.com>2008-09-16 15:38:05 +0100
commit1f752882b65efa7e5e0704a476a9fc789a6042f7 (patch)
tree60b70d22f2ae26729803a5656b5b0fa6b74b70cb /rest/rest-proxy.h
parentce9498f07d8cd381047ce4d4fa13364b78c49f4a (diff)
downloadlibrest-1f752882b65efa7e5e0704a476a9fc789a6042f7.tar.gz
Add start of infrastructure for error handling
Diffstat (limited to 'rest/rest-proxy.h')
-rw-r--r--rest/rest-proxy.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/rest/rest-proxy.h b/rest/rest-proxy.h
index 0aefaa3..9862cb1 100644
--- a/rest/rest-proxy.h
+++ b/rest/rest-proxy.h
@@ -35,6 +35,52 @@ typedef struct {
goffset *len, GError **error, va_list params);
} RestProxyClass;
+#define REST_PROXY_ERROR rest_proxy_error_quark ()
+
+typedef enum {
+ REST_PROXY_ERROR_CANCELLED = 1,
+ REST_PROXY_ERROR_RESOLUTION,
+ REST_PROXY_ERROR_CONNECTION,
+ REST_PROXY_ERROR_SSL,
+ REST_PROXY_ERROR_IO,
+ REST_PROXY_ERROR_FAILED,
+
+ REST_PROXY_ERROR_HTTP_MULTIPLE_CHOICES = 300,
+ REST_PROXY_ERROR_HTTP_MOVED_PERMANENTLY = 301,
+ REST_PROXY_ERROR_HTTP_FOUND = 302,
+ REST_PROXY_ERROR_HTTP_SEE_OTHER = 303,
+ REST_PROXY_ERROR_HTTP_NOT_MODIFIED = 304,
+ REST_PROXY_ERROR_HTTP_USE_PROXY = 305,
+ REST_PROXY_ERROR_HTTP_THREEOHSIX = 306,
+ REST_PROXY_ERROR_HTTP_TEMPORARY_REDIRECT = 307,
+ REST_PROXY_ERROR_HTTP_BAD_REQUEST = 400,
+ REST_PROXY_ERROR_HTTP_UNAUTHORIZED = 401,
+ REST_PROXY_ERROR_HTTP_FOUROHTWO = 402,
+ REST_PROXY_ERROR_HTTP_FORBIDDEN = 403,
+ REST_PROXY_ERROR_HTTP_NOT_FOUND = 404,
+ REST_PROXY_ERROR_HTTP_METHOD_NOT_ALLOWED = 405,
+ REST_PROXY_ERROR_HTTP_NOT_ACCEPTABLE = 406,
+ REST_PROXY_ERROR_HTTP_PROXY_AUTHENTICATION_REQUIRED = 407,
+ REST_PROXY_ERROR_HTTP_REQUEST_TIMEOUT = 408,
+ REST_PROXY_ERROR_HTTP_CONFLICT = 409,
+ REST_PROXY_ERROR_HTTP_GONE = 410,
+ REST_PROXY_ERROR_HTTP_LENGTH_REQUIRED = 411,
+ REST_PROXY_ERROR_HTTP_PRECONDITION_FAILED = 412,
+ REST_PROXY_ERROR_HTTP_REQUEST_ENTITY_TOO_LARGE = 413,
+ REST_PROXY_ERROR_HTTP_REQUEST_URI_TOO_LONG = 414,
+ REST_PROXY_ERROR_HTTP_UNSUPPORTED_MEDIA_TYPE = 415,
+ REST_PROXY_ERROR_HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416,
+ REST_PROXY_ERROR_HTTP_EXPECTATION_FAILED = 417,
+ REST_PROXY_ERROR_HTTP_INTERNAL_SERVER_ERROR = 500,
+ REST_PROXY_ERROR_HTTP_NOT_IMPLEMENTED = 501,
+ REST_PROXY_ERROR_HTTP_BAD_GATEWAY = 502,
+ REST_PROXY_ERROR_HTTP_SERVICE_UNAVAILABLE = 503,
+ REST_PROXY_ERROR_HTTP_GATEWAY_TIMEOUT = 504,
+ REST_PROXY_ERROR_HTTP_HTTP_VERSION_NOT_SUPPORTED = 505,
+} RestProxyError;
+
+GQuark rest_proxy_error_quark (void);
+
typedef void (*RestProxyCallRawCallback)(RestProxy *proxy,
guint status_code,
const gchar *response_message,