GIF87a;
#-- # HTTPVersion.rb -- presentation of HTTP version # # Author: IPR -- Internet Programming with Ruby -- writers # Copyright (c) 2002 Internet Programming with Ruby writers. All rights # reserved. # # $IPR: httpversion.rb,v 1.5 2002/09/21 12:23:37 gotoyuzo Exp $ module WEBrick ## # Represents an HTTP protocol version class HTTPVersion include Comparable ## # The major protocol version number attr_accessor :major ## # The minor protocol version number attr_accessor :minor ## # Converts +version+ into an HTTPVersion def self.convert(version) version.is_a?(self) ? version : new(version) end ## # Creates a new HTTPVersion from +version+. def initialize(version) case version when HTTPVersion @major, @minor = version.major, version.minor when String if /^(\d+)\.(\d+)$/ =~ version @major, @minor = $1.to_i, $2.to_i end end if @major.nil? || @minor.nil? raise ArgumentError, format("cannot convert %s into %s", version.class, self.class) end end ## # Compares this version with +other+ according to the HTTP specification # rules. def <=>(other) unless other.is_a?(self.class) other = self.class.new(other) end if (ret = @major <=> other.major) == 0 return @minor <=> other.minor end return ret end ## # The HTTP version as show in the HTTP request and response. For example, # "1.1" def to_s format("%d.%d", @major, @minor) end end end
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
httpauth | Folder | 0755 |
|
|
httpservlet | Folder | 0755 |
|
|
accesslog.rb | File | 4.31 KB | 0644 |
|
cgi.rb | File | 7.97 KB | 0644 |
|
compat.rb | File | 912 B | 0644 |
|
config.rb | File | 5.56 KB | 0644 |
|
cookie.rb | File | 3.88 KB | 0644 |
|
htmlutils.rb | File | 680 B | 0644 |
|
httpauth.rb | File | 3.33 KB | 0644 |
|
httpproxy.rb | File | 9.65 KB | 0644 |
|
httprequest.rb | File | 14.7 KB | 0644 |
|
httpresponse.rb | File | 11 KB | 0644 |
|
https.rb | File | 1.87 KB | 0644 |
|
httpserver.rb | File | 7.69 KB | 0644 |
|
httpservlet.rb | File | 669 B | 0644 |
|
httpstatus.rb | File | 5.13 KB | 0644 |
|
httputils.rb | File | 12.71 KB | 0644 |
|
httpversion.rb | File | 1.57 KB | 0644 |
|
log.rb | File | 3.96 KB | 0644 |
|
server.rb | File | 8.42 KB | 0644 |
|
ssl.rb | File | 6.67 KB | 0644 |
|
utils.rb | File | 6.44 KB | 0644 |
|
version.rb | File | 384 B | 0644 |
|