module ICAPrb module Server # Status Codes by IANA / RFC for HTTP HTTP_STATUS_CODES = {100=>'Continue', 101=>'Switching Protocols', 102=>'Processing', 200=>'OK', 201=>'Created', 202=>'Accepted', 203=>'Non-Authoritative Information', 204=>'No Content', 205=>'Reset Content', 206=>'Partial Content', 207=>'Multi-Status', 208=>'Already Reported', 226=>'IM Used', 300=>'Multiple Choices', 301=>'Moved Permanently', 302=>'Found', 303=>'See Other', 304=>'Not Modified', 305=>'Use Proxy', 306=>'Unused', 307=>'Temporary Redirect', 308=>'Permanent Redirect', 400=>'Bad Request', 401=>'Unauthorized', 402=>'Payment Required', 403=>'Forbidden', 404=>'Not Found', 405=>'Method Not Allowed', 406=>'Not Acceptable', 407=>'Proxy Authentication Required', 408=>'Request Timeout', 409=>'Conflict', 410=>'Gone', 411=>'Length Required', 412=>'Precondition Failed', 413=>'Payload Too Large', 414=>'URI Too Long', 415=>'Unsupported Media Type', 416=>'Range Not Satisfiable', 417=>'Expectation Failed', 421=>'Misdirected Request', 422=>'Unprocessable Entity', 423=>'Locked', 424=>'Failed Dependency', 425=>'Unassigned', 426=>'Upgrade Required', 427=>'Unassigned', 428=>'Precondition Required', 429=>'Too Many Requests', 430=>'Unassigned', 431=>'Request Header Fields Too Large', 451=>'Unavailable For Legal Reasons', 500=>'Internal Server Error', 501=>'Not Implemented', 502=>'Bad Gateway', 503=>'Service Unavailable', 504=>'Gateway Timeout', 505=>'HTTP Version Not Supported', 506=>'Variant Also Negotiates', 507=>'Insufficient Storage', 508=>'Loop Detected', 509=>'Unassigned', 510=>'Not Extended', 511=>'Network Authentication Required'} # differences defined in RFC 3507 ICAP_STATUS_CODES = HTTP_STATUS_CODES.dup.merge( { 100 => 'Continue after ICAP Preview', 204 => 'No modifications needed', 404 => 'ICAP Service not found', 405 => 'Method not allowed for service', 408 => 'Request timeout', 500 => 'Server error', 501 => 'Method not implemented', 503 => 'Service overloaded', 505 => 'ICAP version not supported by server' }) end end