| // Copyright 2009 The ChromiumOS Authors | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| // This file contains general definitions used in implementing, testing and | |
| // emulating communication over HTTP. | |
| #ifndef UPDATE_ENGINE_COMMON_HTTP_COMMON_H_ | |
| #define UPDATE_ENGINE_COMMON_HTTP_COMMON_H_ | |
| namespace chromeos_update_engine { | |
| // Enumeration type for HTTP response codes. | |
| enum HttpResponseCode { | |
| kHttpResponseUndefined = 0, | |
| kHttpResponseOk = 200, | |
| kHttpResponseCreated = 201, | |
| kHttpResponseAccepted = 202, | |
| kHttpResponseNonAuthInfo = 203, | |
| kHttpResponseNoContent = 204, | |
| kHttpResponseResetContent = 205, | |
| kHttpResponsePartialContent = 206, | |
| kHttpResponseMultipleChoices = 300, | |
| kHttpResponseMovedPermanently = 301, | |
| kHttpResponseFound = 302, | |
| kHttpResponseSeeOther = 303, | |
| kHttpResponseNotModified = 304, | |
| kHttpResponseUseProxy = 305, | |
| kHttpResponseTempRedirect = 307, | |
| kHttpResponseBadRequest = 400, | |
| kHttpResponseUnauth = 401, | |
| kHttpResponseForbidden = 403, | |
| kHttpResponseNotFound = 404, | |
| kHttpResponseRequestTimeout = 408, | |
| kHttpResponseReqRangeNotSat = 416, | |
| kHttpResponseInternalServerError = 500, | |
| kHttpResponseNotImplemented = 501, | |
| kHttpResponseServiceUnavailable = 503, | |
| kHttpResponseVersionNotSupported = 505, | |
| }; | |
| // Returns a standard HTTP status line string for a given response code. | |
| const char* GetHttpResponseDescription(HttpResponseCode code); | |
| // Converts a string beginning with an HTTP error code into numerical value. | |
| HttpResponseCode StringToHttpResponseCode(const char* s); | |
| // Enumeration type for HTTP Content-Type. | |
| enum HttpContentType { | |
| kHttpContentTypeUnspecified = 0, | |
| kHttpContentTypeTextXml, | |
| }; | |
| // Returns a standard HTTP Content-Type string. | |
| const char* GetHttpContentTypeString(HttpContentType type); | |
| } // namespace chromeos_update_engine | |
| #endif // UPDATE_ENGINE_COMMON_HTTP_COMMON_H_ |