diff options
Diffstat (limited to 'src/network/httpstatuscode.h')
-rw-r--r-- | src/network/httpstatuscode.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/src/network/httpstatuscode.h b/src/network/httpstatuscode.h new file mode 100644 index 0000000000..c88f5abe84 --- /dev/null +++ b/src/network/httpstatuscode.h @@ -0,0 +1,64 @@ +#pragma once + +#include <QMetaType> + +namespace mixxx { + +namespace network { + +typedef int HttpStatusCode; + +const HttpStatusCode kHttpStatusCodeInvalid = -1; +const HttpStatusCode kHttpStatusCodeOk = 200; +const HttpStatusCode kHttpStatusCodeCreated = 201; +const HttpStatusCode kHttpStatusCodeAccepted = 202; +const HttpStatusCode kHttpStatusCodeNoContent = 204; + +inline bool HttpStatusCode_isInformational( + int statusCode) { + return statusCode >= 100 && statusCode < 200; +} + +inline bool HttpStatusCode_isSuccess( + int statusCode) { + return statusCode >= 200 && statusCode < 300; +} + +inline bool HttpStatusCode_isRedirection( + int statusCode) { + return statusCode >= 300 && statusCode < 400; +} + +inline bool HttpStatusCode_isClientError( + int statusCode) { + return statusCode >= 400 && statusCode < 500; +} + +inline bool HttpStatusCode_isServerError( + int statusCode) { + return statusCode >= 500 && statusCode < 600; +} + +inline bool HttpStatusCode_isCustomError( + int statusCode) { + return statusCode >= 900 && statusCode < 1000; +} + +inline bool HttpStatusCode_isError( + int statusCode) { + return HttpStatusCode_isClientError(statusCode) || + HttpStatusCode_isServerError(statusCode) || + HttpStatusCode_isCustomError(statusCode); +} + +inline bool HttpStatusCode_isValid( + int statusCode) { + return (statusCode >= 100 && statusCode < 600) || + HttpStatusCode_isCustomError(statusCode); +} + +} // namespace network + +} // namespace mixxx + +Q_DECLARE_METATYPE(mixxx::network::HttpStatusCode); |