diff options
Diffstat (limited to 'ruby_1_8_5/lib/webrick/httpstatus.rb')
-rw-r--r-- | ruby_1_8_5/lib/webrick/httpstatus.rb | 126 |
1 files changed, 0 insertions, 126 deletions
diff --git a/ruby_1_8_5/lib/webrick/httpstatus.rb b/ruby_1_8_5/lib/webrick/httpstatus.rb deleted file mode 100644 index 0b22c992b3..0000000000 --- a/ruby_1_8_5/lib/webrick/httpstatus.rb +++ /dev/null @@ -1,126 +0,0 @@ -# -# httpstatus.rb -- HTTPStatus Class -# -# Author: IPR -- Internet Programming with Ruby -- writers -# Copyright (c) 2000, 2001 TAKAHASHI Masayoshi, GOTOU Yuuzou -# Copyright (c) 2002 Internet Programming with Ruby writers. All rights -# reserved. -# -# $IPR: httpstatus.rb,v 1.11 2003/03/24 20:18:55 gotoyuzo Exp $ - -module WEBrick - - module HTTPStatus - - class Status < StandardError; end - class Info < Status; end - class Success < Status; end - class Redirect < Status; end - class Error < Status; end - class ClientError < Error; end - class ServerError < Error; end - - class EOFError < StandardError; end - - StatusMessage = { - 100, 'Continue', - 101, 'Switching Protocols', - 200, 'OK', - 201, 'Created', - 202, 'Accepted', - 203, 'Non-Authoritative Information', - 204, 'No Content', - 205, 'Reset Content', - 206, 'Partial Content', - 300, 'Multiple Choices', - 301, 'Moved Permanently', - 302, 'Found', - 303, 'See Other', - 304, 'Not Modified', - 305, 'Use Proxy', - 307, 'Temporary 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, 'Request Entity Too Large', - 414, 'Request-URI Too Large', - 415, 'Unsupported Media Type', - 416, 'Request Range Not Satisfiable', - 417, 'Expectation Failed', - 500, 'Internal Server Error', - 501, 'Not Implemented', - 502, 'Bad Gateway', - 503, 'Service Unavailable', - 504, 'Gateway Timeout', - 505, 'HTTP Version Not Supported' - } - - CodeToError = {} - - StatusMessage.each{|code, message| - var_name = message.gsub(/[ \-]/,'_').upcase - err_name = message.gsub(/[ \-]/,'') - - case code - when 100...200; parent = Info - when 200...300; parent = Success - when 300...400; parent = Redirect - when 400...500; parent = ClientError - when 500...600; parent = ServerError - end - - eval %- - RC_#{var_name} = #{code} - class #{err_name} < #{parent} - def self.code() RC_#{var_name} end - def self.reason_phrase() StatusMessage[code] end - def code() self::class::code end - def reason_phrase() self::class::reason_phrase end - alias to_i code - end - - - - CodeToError[code] = const_get(err_name) - } - - def reason_phrase(code) - StatusMessage[code.to_i] - end - def info?(code) - code.to_i >= 100 and code.to_i < 200 - end - def success?(code) - code.to_i >= 200 and code.to_i < 300 - end - def redirect?(code) - code.to_i >= 300 and code.to_i < 400 - end - def error?(code) - code.to_i >= 400 and code.to_i < 600 - end - def client_error?(code) - code.to_i >= 400 and code.to_i < 500 - end - def server_error?(code) - code.to_i >= 500 and code.to_i < 600 - end - - def self.[](code) - CodeToError[code] - end - - module_function :reason_phrase - module_function :info?, :success?, :redirect?, :error? - module_function :client_error?, :server_error? - end -end |