Class: WEBrick::HTTPVersion
Relationships & Source Files | |
Super Chains via Extension / Inclusion / Inheritance | |
Instance Chain:
self,
Comparable
|
|
Inherits: | Object |
Defined in: | lib/webrick/httpversion.rb |
Overview
Represents an HTTP protocol version
Class Method Summary
-
.convert(version)
Converts
version
into anHTTPVersion
. -
.new(version) ⇒ HTTPVersion
constructor
Creates a new
HTTPVersion
fromversion
.
Instance Attribute Summary
Instance Method Summary
-
#<=>(other)
Compares this version with
other
according to the HTTP specification rules. -
#to_s
The HTTP version as show in the HTTP request and response.
Constructor Details
.new(version) ⇒ HTTPVersion
Creates a new HTTPVersion
from version
.
# File 'lib/webrick/httpversion.rb', line 38
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
Class Method Details
.convert(version)
Converts version
into an HTTPVersion
# File 'lib/webrick/httpversion.rb', line 31
def self.convert(version) version.is_a?(self) ? version : new(version) end
Instance Attribute Details
#major (rw)
The major protocol version number
# File 'lib/webrick/httpversion.rb', line 21
attr_accessor :major
#minor (rw)
The minor protocol version number
# File 'lib/webrick/httpversion.rb', line 26
attr_accessor :minor
Instance Method Details
#<=>(other)
Compares this version with other
according to the HTTP specification rules.
#to_s
The HTTP version as show in the HTTP request and response. For example, “1.1”
# File 'lib/webrick/httpversion.rb', line 71
def to_s format("%d.%d", @major, @minor) end