ruby-changes:23919
From: drbrain <ko1@a...>
Date: Sat, 9 Jun 2012 07:44:23 +0900 (JST)
Subject: [ruby-changes:23919] drbrain:r35970 (trunk): * lib/net/http/responses.rb: Add RFC 6586 response codes. Patch by
drbrain 2012-06-09 07:40:14 +0900 (Sat, 09 Jun 2012) New Revision: 35970 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=35970 Log: * lib/net/http/responses.rb: Add RFC 6586 response codes. Patch by Sangil Jung. [ruby-trunk - Feature #6480] * lib/net/http/response.rb: ditto * lib/net/http.rb: ditto * lib/webrick/httpstatus.rb: ditto Modified files: trunk/ChangeLog trunk/lib/net/http/response.rb trunk/lib/net/http/responses.rb trunk/lib/net/http.rb trunk/lib/webrick/httpstatus.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 35969) +++ ChangeLog (revision 35970) @@ -1,3 +1,11 @@ +Sat Jun 9 07:39:50 2012 Eric Hodel <drbrain@s...> + + * lib/net/http/responses.rb: Add RFC 6586 response codes. Patch by + Sangil Jung. [ruby-trunk - Feature #6480] + * lib/net/http/response.rb: ditto + * lib/net/http.rb: ditto + * lib/webrick/httpstatus.rb: ditto + Sat Jun 9 01:24:28 2012 Tanaka Akira <akr@f...> * process.c (rb_exec_err): before_exec() call moved from proc_exec_cmd Index: lib/webrick/httpstatus.rb =================================================================== --- lib/webrick/httpstatus.rb (revision 35969) +++ lib/webrick/httpstatus.rb (revision 35970) @@ -88,12 +88,16 @@ 415 => 'Unsupported Media Type', 416 => 'Request Range Not Satisfiable', 417 => 'Expectation Failed', + 428 => 'Precondition Required', + 429 => 'Too Many Requests', + 431 => 'Request Header Fields Too Large', 500 => 'Internal Server Error', 501 => 'Not Implemented', 502 => 'Bad Gateway', 503 => 'Service Unavailable', 504 => 'Gateway Timeout', - 505 => 'HTTP Version Not Supported' + 505 => 'HTTP Version Not Supported', + 511 => 'Network Authentication Required', } # Maps a status code to the corresponding Status class Index: lib/net/http/response.rb =================================================================== --- lib/net/http/response.rb (revision 35969) +++ lib/net/http/response.rb (revision 35970) @@ -55,6 +55,9 @@ # 415 HTTPUnsupportedMediaType # 416 HTTPRequestedRangeNotSatisfiable # 417 HTTPExpectationFailed +# 428 HTTPPreconditionRequired +# 429 HTTPTooManyRequests +# 431 HTTPRequestHeaderFieldsTooLarge # # 5xx HTTPServerError # 500 HTTPInternalServerError @@ -63,6 +66,7 @@ # 503 HTTPServiceUnavailable # 504 HTTPGatewayTimeOut # 505 HTTPVersionNotSupported +# 511 HTTPNetworkAuthenticationRequired # # xxx HTTPUnknownResponse # Index: lib/net/http/responses.rb =================================================================== --- lib/net/http/responses.rb (revision 35969) +++ lib/net/http/responses.rb (revision 35970) @@ -116,6 +116,16 @@ class Net::HTTPPreconditionFailed < Net::HTTPClientError # 412 HAS_BODY = true end +class Net::HTTPPreconditionRequired < Net::HTTPClientError # 428 + HAS_BODY = true +end +class Net::HTTPTooManyRequests < Net::HTTPClientError # 429 + HAS_BODY = true +end +class Net::HTTPRequestHeaderFieldsTooLarge < Net::HTTPClientError # 431 + HAS_BODY = true +end + class Net::HTTPRequestEntityTooLarge < Net::HTTPClientError # 413 HAS_BODY = true end @@ -133,24 +143,27 @@ HAS_BODY = true end -class Net::HTTPInternalServerError < Net::HTTPServerError # 500 +class Net::HTTPInternalServerError < Net::HTTPServerError # 500 HAS_BODY = true end -class Net::HTTPNotImplemented < Net::HTTPServerError # 501 +class Net::HTTPNotImplemented < Net::HTTPServerError # 501 HAS_BODY = true end -class Net::HTTPBadGateway < Net::HTTPServerError # 502 +class Net::HTTPBadGateway < Net::HTTPServerError # 502 HAS_BODY = true end -class Net::HTTPServiceUnavailable < Net::HTTPServerError # 503 +class Net::HTTPServiceUnavailable < Net::HTTPServerError # 503 HAS_BODY = true end -class Net::HTTPGatewayTimeOut < Net::HTTPServerError # 504 +class Net::HTTPGatewayTimeOut < Net::HTTPServerError # 504 HAS_BODY = true end -class Net::HTTPVersionNotSupported < Net::HTTPServerError # 505 +class Net::HTTPVersionNotSupported < Net::HTTPServerError # 505 HAS_BODY = true end +class Net::HTTPNetworkAuthenticationRequired < Net::HTTPServerError # 511 + HAS_BODY = true +end class Net::HTTPResponse CODE_CLASS_TO_OBJ = { @@ -198,13 +211,17 @@ '415' => Net::HTTPUnsupportedMediaType, '416' => Net::HTTPRequestedRangeNotSatisfiable, '417' => Net::HTTPExpectationFailed, + '428' => Net::HTTPPreconditionRequired, + '429' => Net::HTTPTooManyRequests, + '431' => Net::HTTPRequestHeaderFieldsTooLarge, '500' => Net::HTTPInternalServerError, '501' => Net::HTTPNotImplemented, '502' => Net::HTTPBadGateway, '503' => Net::HTTPServiceUnavailable, '504' => Net::HTTPGatewayTimeOut, - '505' => Net::HTTPVersionNotSupported + '505' => Net::HTTPVersionNotSupported, + '511' => Net::HTTPNetworkAuthenticationRequired, } end Index: lib/net/http.rb =================================================================== --- lib/net/http.rb (revision 35969) +++ lib/net/http.rb (revision 35970) @@ -347,6 +347,9 @@ # HTTPUnsupportedMediaType:: 415 # HTTPRequestedRangeNotSatisfiable:: 416 # HTTPExpectationFailed:: 417 + # HTTPPreconditionRequired:: 428 + # HTTPTooManyRequests:: 429 + # HTTPRequestHeaderFieldsTooLarge:: 431 # HTTPServerError:: 5xx # HTTPInternalServerError:: 500 # HTTPNotImplemented:: 501 @@ -354,6 +357,7 @@ # HTTPServiceUnavailable:: 503 # HTTPGatewayTimeOut:: 504 # HTTPVersionNotSupported:: 505 + # HTTPNetworkAuthenticationRequired:: 511 # # There is also the Net::HTTPBadResponse exception which is raised when # there is a protocol error. -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/