#ifndef MEMGRAPH_SERVER_HTTP_STATUS_CODES_HPP #define MEMGRAPH_SERVER_HTTP_STATUS_CODES_HPP #include #include namespace http { #define HTTP_STATUS_CODES \ CODE(Continue, 100, CONTINUE) \ CODE(SwitchingProtocols, 101, SWITCHING PROTOCOLS) \ CODE(Processing, 102, PROCESSING) \ CODE(Ok, 200, OK) \ CODE(Created, 201, CREATED) \ CODE(Accepted, 202, ACCEPTED) \ CODE(NonAuthoritativeInformation, 203, NON AUTHORITATIVE INFORMATION) \ CODE(NoContent, 204, NO CONTENT) \ CODE(ResetContent, 205, RESET CONTENT) \ CODE(PartialContent, 206, PARTIAL CONTENT) \ CODE(MultiStatus, 207, MULTI STATUS) \ CODE(MultipleChoices, 300, MULTIPLE CHOICES) \ CODE(MovedPermanently, 301, MOVED PERMANENTLY) \ CODE(MovedTemporarily, 302, MOVED TEMPORARILY) \ CODE(SeeOther, 303, SEE OTHER) \ CODE(NotModified, 304, NOT MODIFIED) \ CODE(UseProxy, 305, USE PROXY) \ CODE(TemporaryRedirect, 307, TEMPORARY REDIRECT) \ CODE(BadRequest, 400, BAD REQUEST) \ CODE(Unauthorized, 401, UNAUTHORIZED) \ CODE(PaymentRequired, 402, PAYMENT REQUIRED) \ CODE(Forbidden, 403, FORBIDDEN) \ CODE(NotFound, 404, NOT FOUND) \ CODE(MethodNotAllowed, 405, METHOD NOT ALLOWED) \ CODE(NotAcceptable, 406, NOT ACCEPTABLE) \ CODE(ProxyAuthenticationRequired, 407, PROXY AUTHENTICATION REQUIRED) \ CODE(RequestTimeOut, 408, REQUEST TIMEOUT) \ CODE(Conflict, 409, CONFLICT) \ CODE(Gone, 410, GONE) \ CODE(LengthRequired, 411, LENGTH REQUIRED) \ CODE(PreconditionFailed, 412, PRECONDITION FAILED) \ CODE(RequestEntityTooLarge, 413, REQUEST ENTITY TOO LARGE) \ CODE(RequestUriTooLarge, 414, REQUEST URI TOO LARGE) \ CODE(UnsupportedMediaType, 415, UNSUPPORTED MEDIA TYPE) \ CODE(RequestedRangeNotSatisfiable, 416, REQUESTED RANGE NOT SATISFIABLE) \ CODE(ExpectationFailed, 417, EXPECTATION FAILED) \ CODE(ImATeapot, 418, IM A TEAPOT) \ CODE(UnprocessableEntity, 422, UNPROCESSABLE ENTITY) \ CODE(Locked, 423, LOCKED) \ CODE(FailedDependency, 424, FAILED DEPENDENCY) \ CODE(UnorderedCollection, 425, UNORDERED COLLECTION) \ CODE(UpgradeRequired, 426, UPGRADE REQUIRED) \ CODE(PreconditionRequired, 428, PRECONDITION REQUIRED) \ CODE(TooManyRequests, 429, TOO MANY REQUESTS) \ CODE(RequestHeaderFieldsTooLarge, 431, REQUEST HEADER FIELDS TOO LARGE) \ CODE(InternalServerError, 500, INTERNAL SERVER ERROR) \ CODE(NotImplemented, 501, NOT IMPLEMENTED) \ CODE(BadGateway, 502, BAD GATEWAY) \ CODE(ServiceUnavailable, 503, SERVICE UNAVAILABLE) \ CODE(GatewayTimeOut, 504, GATEWAY TIME OUT) \ CODE(HttpVersionNotSupported, 505, HTTP VERSION NOT SUPPORTED) \ CODE(VariantAlsoNegotiates, 506, VARIANT ALSO NEGOTIATES) \ CODE(InsufficientStorage, 507, INSUFFICIENT STORAGE) \ CODE(BandwidthLimitExceeded, 508, BANDWIDTH LIMIT EXCEEDED) \ CODE(NotExtended, 510, NOT EXTENDED) \ CODE(NetworkAuthenticationRequired, 511, NETWORK AUTHENTICATION REQUIRED) enum Status { #define CODE(a, b, c) a = b, HTTP_STATUS_CODES #undef CODE }; static std::map to_string = { #define CODE(a, b, c) { Status::a, #b " " #c }, HTTP_STATUS_CODES #undef CODE }; } #endif