162 lines
3.3 KiB
C++
162 lines
3.3 KiB
C++
/*!
|
||
* (C) Copyright 2003-2017 Awox SA. All rights reserved.
|
||
* This work contains confidential trade secrets of Awox.
|
||
* Use, examination, copying, transfer and disclosure to others
|
||
* are prohibited, except with the express written agreement of Awox.
|
||
*
|
||
* @Author: Awox
|
||
* @Date: 22/06/2017
|
||
*/
|
||
|
||
/*------------------------------- INCLUDES ----------------------------------*/
|
||
|
||
#include "http-reason.h"
|
||
|
||
|
||
/*! ----------------------------------------------------------------------------
|
||
* @fn HttpReason
|
||
*
|
||
* @brief constructor of the http reason.
|
||
*/
|
||
HttpReason::HttpReason (void)
|
||
{
|
||
}
|
||
|
||
|
||
/*! ----------------------------------------------------------------------------
|
||
* @fn get
|
||
*
|
||
* @brief return as string the reazson from the http code.
|
||
*/
|
||
std::string HttpReason::get (uint16_t a_code)
|
||
{
|
||
switch (a_code) {
|
||
// --- 100
|
||
case 100:
|
||
return "Continue";
|
||
case 101:
|
||
return "Switching Protocols";
|
||
case 102:
|
||
return "Processing";
|
||
// --- 200
|
||
case 200:
|
||
return "OK";
|
||
case 201:
|
||
return "Created";
|
||
case 202:
|
||
return "Accepted";
|
||
case 203:
|
||
return "Non-Authoritative Information";
|
||
case 204:
|
||
return "No Content";
|
||
case 205:
|
||
return "Reset Content";
|
||
case 206:
|
||
return "Partial Content";
|
||
case 207:
|
||
return "Multi-Status";
|
||
// --- 300
|
||
case 300:
|
||
return "Multiple Choices";
|
||
case 301:
|
||
return "Moved Permanently";
|
||
case 302:
|
||
return "Moved Temporarily";
|
||
case 303:
|
||
return "See Other";
|
||
case 304:
|
||
return "Not Modified";
|
||
case 305:
|
||
return "Use Proxy";
|
||
case 307:
|
||
return "Temporary Redirect";
|
||
case 308:
|
||
return "Permanent Redirect";
|
||
case 310:
|
||
return "Too many Redirects";
|
||
// --- 400
|
||
case 400:
|
||
return "Bad Request";
|
||
case 401:
|
||
return "Unauthorized";
|
||
case 402:
|
||
return "Payment Required";
|
||
case 403:
|
||
return "Forbidden";
|
||
case 404:
|
||
return "Not Found";
|
||
case 405:
|
||
return "Method Not Allowed";
|
||
case 406:
|
||
return "Not Acceptable";
|
||
case 407:
|
||
return "Proxy Authentication Required";
|
||
case 408:
|
||
return "Request Time-out";
|
||
case 409:
|
||
return "Conflict";
|
||
case 410:
|
||
return "Gone";
|
||
case 411:
|
||
return "Length Required";
|
||
case 412:
|
||
return "Precondition Failed";
|
||
case 413:
|
||
return "Request Entity Too Large";
|
||
case 414:
|
||
return "Request-URI Too Long";
|
||
case 415:
|
||
return "Unsupported Media Type";
|
||
case 416:
|
||
return "Requested range unsatisfiable";
|
||
case 417:
|
||
return "Expectation failed";
|
||
case 418:
|
||
return "I’m a teapot";
|
||
case 421:
|
||
return "Bad mapping / Misdirected Request";
|
||
case 422:
|
||
return "Unprocessable entity";
|
||
case 423:
|
||
return "Locked";
|
||
case 424:
|
||
return "Method failure";
|
||
case 425:
|
||
return "Unordered Collection";
|
||
case 426:
|
||
return "Upgrade Required";
|
||
case 449:
|
||
return "Retry With";
|
||
case 450:
|
||
return "Blocked by Windows Parental Controls";
|
||
case 451:
|
||
return "Unavailable For Legal Reasons";
|
||
case 456:
|
||
return "Unrecoverable Error";
|
||
// --- 500
|
||
case 500:
|
||
return "Internal Server Error";
|
||
case 501:
|
||
return "Not Implemented";
|
||
case 502:
|
||
return "Bad Gateway";
|
||
case 503:
|
||
return "Service Unavailable";
|
||
case 504:
|
||
return "Gateway Time-out";
|
||
case 505:
|
||
return "HTTP Version not supported";
|
||
case 506:
|
||
return "Variant Also Negotiates";
|
||
case 507:
|
||
return "Insufficient storage";
|
||
case 509:
|
||
return "Bandwidth Limit Exceeded";
|
||
case 510:
|
||
return "Not extended";
|
||
case 511:
|
||
return "Network authentication required";
|
||
}
|
||
return "Unknown";
|
||
}
|