Mercurial > SimpleWebPresenter
changeset 58:ba5afd9ff24e
Rename http-response-status-codes to StatusCodes
| author | Tom Fredrik "BFG" Klaussen <bfg@blenning.no> |
|---|---|
| date | Thu, 11 Oct 2012 13:04:53 +0200 |
| parents | 0f1e08cdfff2 |
| children | 0e157721bbad |
| files | StatusCodes.inc common-functions.inc http-response-status-codes.inc |
| diffstat | 3 files changed, 297 insertions(+), 297 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/StatusCodes.inc Thu Oct 11 13:04:53 2012 +0200 @@ -0,0 +1,296 @@ +<?php +/** + * StatusCodes provides named constants for + * HTTP protocol status codes. Written for the + * Recess Framework (http://www.recessframework.com/) + * + * @author Kris Jordan + * @author Tom Fredrik Blenning Klaussen + * @copyright MIT + */ +class StatusCodes +{ + // [Informational 1xx] + /** + * <a href="http://httpstatus.es/100">HTTP_CONTINUE</a> + */ + const HTTP_CONTINUE = 100; + /** + * <a href="http://httpstatus.es/101">HTTP_SWITCHING_PROTOCOLS</a> + */ + const HTTP_SWITCHING_PROTOCOLS = 101; + + // [Successful 2xx] + /** + * <a href="http://httpstatus.es/200">HTTP_OK</a> + */ + const HTTP_OK = 200; + /** + * <a href="http://httpstatus.es/201">HTTP_CREATED</a> + */ + const HTTP_CREATED = 201; + /** + * <a href="http://httpstatus.es/202">HTTP_ACCEPTED</a> + */ + const HTTP_ACCEPTED = 202; + /** + * <a href="http://httpstatus.es/203">HTTP_ACCEPTED</a> + */ + const HTTP_NONAUTHORITATIVE_INFORMATION = 203; + /** + * <a href="http://httpstatus.es/204">HTTP_NO_CONTENT</a> + */ + const HTTP_NO_CONTENT = 204; + /** + * <a href="http://httpstatus.es/205">HTTP_RESET_CONTENT</a> + */ + const HTTP_RESET_CONTENT = 205; + /** + * <a href="http://httpstatus.es/206">HTTP_PARTIAL_CONTENT</a> + */ + const HTTP_PARTIAL_CONTENT = 206; + + // [Redirection 3xx] + /** + * <a href="http://httpstatus.es/300">HTTP_MULTIPLE_CHOICES</a> + */ + const HTTP_MULTIPLE_CHOICES = 300; + /** + * <a href="http://httpstatus.es/301">HTTP_MOVED_PERMANENTLY</a> + */ + const HTTP_MOVED_PERMANENTLY = 301; + /** + * <a href="http://httpstatus.es/302">HTTP_FOUND</a> + */ + const HTTP_FOUND = 302; + /** + * <a href="http://httpstatus.es/303">HTTP_SEE_OTHER</a> + */ + const HTTP_SEE_OTHER = 303; + /** + * <a href="http://httpstatus.es/304">HTTP_NOT_MODIFIED</a> + */ + const HTTP_NOT_MODIFIED = 304; + /** + * <a href="http://httpstatus.es/305">HTTP_USE_PROXY</a> + */ + const HTTP_USE_PROXY = 305; + /** + * <a href="http://httpstatus.es/306">HTTP_UNUSED</a> + */ + const HTTP_UNUSED = 306; + /** + * <a href="http://httpstatus.es/307">HTTP_TEMPORARY_REDIRECT</a> + */ + const HTTP_TEMPORARY_REDIRECT = 307; + + // [Client Error 4xx] + /** + * Defines the beginning of errorCodes + * @private + */ + const errorCodesBeginAt = 400; + /** + * <a href="http://httpstatus.es/400">HTTP_BAD_REQUEST</a> + */ + const HTTP_BAD_REQUEST = 400; + /** + * <a href="http://httpstatus.es/401">HTTP_UNAUTHORIZED</a> + */ + const HTTP_UNAUTHORIZED = 401; + /** + * <a href="http://httpstatus.es/402">HTTP_PAYMENT_REQUIRED</a> + */ + const HTTP_PAYMENT_REQUIRED = 402; + /** + * <a href="http://httpstatus.es/403">HTTP_FORBIDDEN</a> + */ + const HTTP_FORBIDDEN = 403; + /** + * <a href="http://httpstatus.es/404">HTTP_NOT_FOUND</a> + */ + const HTTP_NOT_FOUND = 404; + /** + * <a href="http://httpstatus.es/405">HTTP_METHOD_NOT_ALLOWED</a> + */ + const HTTP_METHOD_NOT_ALLOWED = 405; + /** + * <a href="http://httpstatus.es/406">HTTP_NOT_ACCEPTABLE</a> + */ + const HTTP_NOT_ACCEPTABLE = 406; + /** + * <a href="http://httpstatus.es/407">HTTP_PROXY_AUTHENTICATION_REQUIRED</a> + */ + const HTTP_PROXY_AUTHENTICATION_REQUIRED = 407; + /** + * <a href="http://httpstatus.es/408">HTTP_REQUEST_TIMEOUT</a> + */ + const HTTP_REQUEST_TIMEOUT = 408; + /** + * <a href="http://httpstatus.es/409">HTTP_CONFLICT</a> + */ + const HTTP_CONFLICT = 409; + /** + * <a href="http://httpstatus.es/410">HTTP_GONE</a> + */ + const HTTP_GONE = 410; + /** + * <a href="http://httpstatus.es/411">HTTP_LENGTH_REQUIRED</a> + */ + const HTTP_LENGTH_REQUIRED = 411; + /** + * <a href="http://httpstatus.es/412">HTTP_PRECONDITION_FAILED</a> + */ + const HTTP_PRECONDITION_FAILED = 412; + /** + * <a href="http://httpstatus.es/413">HTTP_REQUEST_ENTITY_TOO_LARGE</a> + */ + const HTTP_REQUEST_ENTITY_TOO_LARGE = 413; + /** + * <a href="http://httpstatus.es/414">HTTP_REQUEST_URI_TOO_LONG</a> + */ + const HTTP_REQUEST_URI_TOO_LONG = 414; + /** + * <a href="http://httpstatus.es/415">HTTP_UNSUPPORTED_MEDIA_TYPE</a> + */ + const HTTP_UNSUPPORTED_MEDIA_TYPE = 415; + /** + * <a href="http://httpstatus.es/416">HTTP_REQUESTED_RANGE_NOT_SATISFIABLE</a> + */ + const HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416; + /** + * <a href="http://httpstatus.es/417">HTTP_EXPECTATION_FAILED</a> + */ + const HTTP_EXPECTATION_FAILED = 417; + + // [Server Error 5xx] + /** + * <a href="http://httpstatus.es/500">HTTP_INTERNAL_SERVER_ERROR</a> + */ + const HTTP_INTERNAL_SERVER_ERROR = 500; + /** + * <a href="http://httpstatus.es/501">HTTP_NOT_IMPLEMENTED</a> + */ + const HTTP_NOT_IMPLEMENTED = 501; + /** + * <a href="http://httpstatus.es/502">HTTP_BAD_GATEWAY</a> + */ + const HTTP_BAD_GATEWAY = 502; + /** + * <a href="http://httpstatus.es/503">HTTP_SERVICE_UNAVAILABLE</a> + */ + const HTTP_SERVICE_UNAVAILABLE = 503; + /** + * <a href="http://httpstatus.es/504">HTTP_GATEWAY_TIMEOUT</a> + */ + const HTTP_GATEWAY_TIMEOUT = 504; + /** + * <a href="http://httpstatus.es/505">HTTP_VERSION_NOT_SUPPORTED</a> + */ + const HTTP_VERSION_NOT_SUPPORTED = 505; + + private static $messages = + array( + // [Informational 1xx] + 100=>'100 Continue', + 101=>'101 Switching Protocols', + + // [Successful 2xx] + 200=>'200 OK', + 201=>'201 Created', + 202=>'202 Accepted', + 203=>'203 Non-Authoritative Information', + 204=>'204 No Content', + 205=>'205 Reset Content', + 206=>'206 Partial Content', + + // [Redirection 3xx] + 300=>'300 Multiple Choices', + 301=>'301 Moved Permanently', + 302=>'302 Found', + 303=>'303 See Other', + 304=>'304 Not Modified', + 305=>'305 Use Proxy', + 306=>'306 (Unused)', + 307=>'307 Temporary Redirect', + + // [Client Error 4xx] + 400=>'400 Bad Request', + 401=>'401 Unauthorized', + 402=>'402 Payment Required', + 403=>'403 Forbidden', + 404=>'404 Not Found', + 405=>'405 Method Not Allowed', + 406=>'406 Not Acceptable', + 407=>'407 Proxy Authentication Required', + 408=>'408 Request Timeout', + 409=>'409 Conflict', + 410=>'410 Gone', + 411=>'411 Length Required', + 412=>'412 Precondition Failed', + 413=>'413 Request Entity Too Large', + 414=>'414 Request-URI Too Long', + 415=>'415 Unsupported Media Type', + 416=>'416 Requested Range Not Satisfiable', + 417=>'417 Expectation Failed', + + // [Server Error 5xx] + 500=>'500 Internal Server Error', + 501=>'501 Not Implemented', + 502=>'502 Bad Gateway', + 503=>'503 Service Unavailable', + 504=>'504 Gateway Timeout', + 505=>'505 HTTP Version Not Supported' + ); + + /** + * Get the header for the specified code. + * + * @param $code Http status code + * @return A textual representation of the header + */ + public static function httpHeaderFor($code) + { + return 'HTTP/1.1 ' . self::$messages[$code]; + } + + /** + * Get a canonical status message for the specified code + * + * @param $code Http status code + * @return Text for the specified code + */ + public static function getMessageForCode($code) + { + return self::$messages[$code]; + } + + /** + * Checks if the specified code is an error code. + * + * @param $code Http status code + * @return bool Answer + */ + public static function isError($code) + { + return is_numeric($code) && $code >= self::HTTP_BAD_REQUEST; + } + + /** + * Can the specified status code have a body? + * + * @param $code Http status code + * @return bool Answer + */ + public static function canHaveBody($code) + { + return + // True if not in 100s + ($code < self::HTTP_CONTINUE || $code >= self::HTTP_OK) + && // and not 204 NO CONTENT + $code != self::HTTP_NO_CONTENT + && // and not 304 NOT MODIFIED + $code != self::HTTP_NOT_MODIFIED; + } +} +?> \ No newline at end of file
--- a/common-functions.inc Thu Oct 11 01:07:17 2012 +0200 +++ b/common-functions.inc Thu Oct 11 13:04:53 2012 +0200 @@ -8,7 +8,7 @@ $baseDir = dirname(__FILE__); $cache = CacheTimeCheck::instance(__FILE__); -$cache->includeOnce('http-response-status-codes.inc', $baseDir); +$cache->includeOnce('StatusCodes.inc', $baseDir); function repMapString($map) {
--- a/http-response-status-codes.inc Thu Oct 11 01:07:17 2012 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,296 +0,0 @@ -<?php -/** - * StatusCodes provides named constants for - * HTTP protocol status codes. Written for the - * Recess Framework (http://www.recessframework.com/) - * - * @author Kris Jordan - * @author Tom Fredrik Blenning Klaussen - * @copyright MIT - */ -class StatusCodes -{ - // [Informational 1xx] - /** - * <a href="http://httpstatus.es/100">HTTP_CONTINUE</a> - */ - const HTTP_CONTINUE = 100; - /** - * <a href="http://httpstatus.es/101">HTTP_SWITCHING_PROTOCOLS</a> - */ - const HTTP_SWITCHING_PROTOCOLS = 101; - - // [Successful 2xx] - /** - * <a href="http://httpstatus.es/200">HTTP_OK</a> - */ - const HTTP_OK = 200; - /** - * <a href="http://httpstatus.es/201">HTTP_CREATED</a> - */ - const HTTP_CREATED = 201; - /** - * <a href="http://httpstatus.es/202">HTTP_ACCEPTED</a> - */ - const HTTP_ACCEPTED = 202; - /** - * <a href="http://httpstatus.es/203">HTTP_ACCEPTED</a> - */ - const HTTP_NONAUTHORITATIVE_INFORMATION = 203; - /** - * <a href="http://httpstatus.es/204">HTTP_NO_CONTENT</a> - */ - const HTTP_NO_CONTENT = 204; - /** - * <a href="http://httpstatus.es/205">HTTP_RESET_CONTENT</a> - */ - const HTTP_RESET_CONTENT = 205; - /** - * <a href="http://httpstatus.es/206">HTTP_PARTIAL_CONTENT</a> - */ - const HTTP_PARTIAL_CONTENT = 206; - - // [Redirection 3xx] - /** - * <a href="http://httpstatus.es/300">HTTP_MULTIPLE_CHOICES</a> - */ - const HTTP_MULTIPLE_CHOICES = 300; - /** - * <a href="http://httpstatus.es/301">HTTP_MOVED_PERMANENTLY</a> - */ - const HTTP_MOVED_PERMANENTLY = 301; - /** - * <a href="http://httpstatus.es/302">HTTP_FOUND</a> - */ - const HTTP_FOUND = 302; - /** - * <a href="http://httpstatus.es/303">HTTP_SEE_OTHER</a> - */ - const HTTP_SEE_OTHER = 303; - /** - * <a href="http://httpstatus.es/304">HTTP_NOT_MODIFIED</a> - */ - const HTTP_NOT_MODIFIED = 304; - /** - * <a href="http://httpstatus.es/305">HTTP_USE_PROXY</a> - */ - const HTTP_USE_PROXY = 305; - /** - * <a href="http://httpstatus.es/306">HTTP_UNUSED</a> - */ - const HTTP_UNUSED = 306; - /** - * <a href="http://httpstatus.es/307">HTTP_TEMPORARY_REDIRECT</a> - */ - const HTTP_TEMPORARY_REDIRECT = 307; - - // [Client Error 4xx] - /** - * Defines the beginning of errorCodes - * @private - */ - const errorCodesBeginAt = 400; - /** - * <a href="http://httpstatus.es/400">HTTP_BAD_REQUEST</a> - */ - const HTTP_BAD_REQUEST = 400; - /** - * <a href="http://httpstatus.es/401">HTTP_UNAUTHORIZED</a> - */ - const HTTP_UNAUTHORIZED = 401; - /** - * <a href="http://httpstatus.es/402">HTTP_PAYMENT_REQUIRED</a> - */ - const HTTP_PAYMENT_REQUIRED = 402; - /** - * <a href="http://httpstatus.es/403">HTTP_FORBIDDEN</a> - */ - const HTTP_FORBIDDEN = 403; - /** - * <a href="http://httpstatus.es/404">HTTP_NOT_FOUND</a> - */ - const HTTP_NOT_FOUND = 404; - /** - * <a href="http://httpstatus.es/405">HTTP_METHOD_NOT_ALLOWED</a> - */ - const HTTP_METHOD_NOT_ALLOWED = 405; - /** - * <a href="http://httpstatus.es/406">HTTP_NOT_ACCEPTABLE</a> - */ - const HTTP_NOT_ACCEPTABLE = 406; - /** - * <a href="http://httpstatus.es/407">HTTP_PROXY_AUTHENTICATION_REQUIRED</a> - */ - const HTTP_PROXY_AUTHENTICATION_REQUIRED = 407; - /** - * <a href="http://httpstatus.es/408">HTTP_REQUEST_TIMEOUT</a> - */ - const HTTP_REQUEST_TIMEOUT = 408; - /** - * <a href="http://httpstatus.es/409">HTTP_CONFLICT</a> - */ - const HTTP_CONFLICT = 409; - /** - * <a href="http://httpstatus.es/410">HTTP_GONE</a> - */ - const HTTP_GONE = 410; - /** - * <a href="http://httpstatus.es/411">HTTP_LENGTH_REQUIRED</a> - */ - const HTTP_LENGTH_REQUIRED = 411; - /** - * <a href="http://httpstatus.es/412">HTTP_PRECONDITION_FAILED</a> - */ - const HTTP_PRECONDITION_FAILED = 412; - /** - * <a href="http://httpstatus.es/413">HTTP_REQUEST_ENTITY_TOO_LARGE</a> - */ - const HTTP_REQUEST_ENTITY_TOO_LARGE = 413; - /** - * <a href="http://httpstatus.es/414">HTTP_REQUEST_URI_TOO_LONG</a> - */ - const HTTP_REQUEST_URI_TOO_LONG = 414; - /** - * <a href="http://httpstatus.es/415">HTTP_UNSUPPORTED_MEDIA_TYPE</a> - */ - const HTTP_UNSUPPORTED_MEDIA_TYPE = 415; - /** - * <a href="http://httpstatus.es/416">HTTP_REQUESTED_RANGE_NOT_SATISFIABLE</a> - */ - const HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416; - /** - * <a href="http://httpstatus.es/417">HTTP_EXPECTATION_FAILED</a> - */ - const HTTP_EXPECTATION_FAILED = 417; - - // [Server Error 5xx] - /** - * <a href="http://httpstatus.es/500">HTTP_INTERNAL_SERVER_ERROR</a> - */ - const HTTP_INTERNAL_SERVER_ERROR = 500; - /** - * <a href="http://httpstatus.es/501">HTTP_NOT_IMPLEMENTED</a> - */ - const HTTP_NOT_IMPLEMENTED = 501; - /** - * <a href="http://httpstatus.es/502">HTTP_BAD_GATEWAY</a> - */ - const HTTP_BAD_GATEWAY = 502; - /** - * <a href="http://httpstatus.es/503">HTTP_SERVICE_UNAVAILABLE</a> - */ - const HTTP_SERVICE_UNAVAILABLE = 503; - /** - * <a href="http://httpstatus.es/504">HTTP_GATEWAY_TIMEOUT</a> - */ - const HTTP_GATEWAY_TIMEOUT = 504; - /** - * <a href="http://httpstatus.es/505">HTTP_VERSION_NOT_SUPPORTED</a> - */ - const HTTP_VERSION_NOT_SUPPORTED = 505; - - private static $messages = - array( - // [Informational 1xx] - 100=>'100 Continue', - 101=>'101 Switching Protocols', - - // [Successful 2xx] - 200=>'200 OK', - 201=>'201 Created', - 202=>'202 Accepted', - 203=>'203 Non-Authoritative Information', - 204=>'204 No Content', - 205=>'205 Reset Content', - 206=>'206 Partial Content', - - // [Redirection 3xx] - 300=>'300 Multiple Choices', - 301=>'301 Moved Permanently', - 302=>'302 Found', - 303=>'303 See Other', - 304=>'304 Not Modified', - 305=>'305 Use Proxy', - 306=>'306 (Unused)', - 307=>'307 Temporary Redirect', - - // [Client Error 4xx] - 400=>'400 Bad Request', - 401=>'401 Unauthorized', - 402=>'402 Payment Required', - 403=>'403 Forbidden', - 404=>'404 Not Found', - 405=>'405 Method Not Allowed', - 406=>'406 Not Acceptable', - 407=>'407 Proxy Authentication Required', - 408=>'408 Request Timeout', - 409=>'409 Conflict', - 410=>'410 Gone', - 411=>'411 Length Required', - 412=>'412 Precondition Failed', - 413=>'413 Request Entity Too Large', - 414=>'414 Request-URI Too Long', - 415=>'415 Unsupported Media Type', - 416=>'416 Requested Range Not Satisfiable', - 417=>'417 Expectation Failed', - - // [Server Error 5xx] - 500=>'500 Internal Server Error', - 501=>'501 Not Implemented', - 502=>'502 Bad Gateway', - 503=>'503 Service Unavailable', - 504=>'504 Gateway Timeout', - 505=>'505 HTTP Version Not Supported' - ); - - /** - * Get the header for the specified code. - * - * @param $code Http status code - * @return A textual representation of the header - */ - public static function httpHeaderFor($code) - { - return 'HTTP/1.1 ' . self::$messages[$code]; - } - - /** - * Get a canonical status message for the specified code - * - * @param $code Http status code - * @return Text for the specified code - */ - public static function getMessageForCode($code) - { - return self::$messages[$code]; - } - - /** - * Checks if the specified code is an error code. - * - * @param $code Http status code - * @return bool Answer - */ - public static function isError($code) - { - return is_numeric($code) && $code >= self::HTTP_BAD_REQUEST; - } - - /** - * Can the specified status code have a body? - * - * @param $code Http status code - * @return bool Answer - */ - public static function canHaveBody($code) - { - return - // True if not in 100s - ($code < self::HTTP_CONTINUE || $code >= self::HTTP_OK) - && // and not 204 NO CONTENT - $code != self::HTTP_NO_CONTENT - && // and not 304 NOT MODIFIED - $code != self::HTTP_NOT_MODIFIED; - } -} -?> \ No newline at end of file
