Class: WEBrick::HTTPVersion
- Inherits:
 - 
      Object
      
        
- Object
 - WEBrick::HTTPVersion
 
 
- Includes:
 - Comparable
 
- Defined in:
 - lib/webrick/httpversion.rb
 
Overview
Represents an HTTP protocol version
Instance Attribute Summary collapse
- 
  
    
      #major  ⇒ Object 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The major protocol version number.
 - 
  
    
      #minor  ⇒ Object 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The minor protocol version number.
 
Class Method Summary collapse
- 
  
    
      .convert(version)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Converts
versioninto an HTTPVersion. 
Instance Method Summary collapse
- 
  
    
      #<=>(other)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Compares this version with
otheraccording to the HTTP specification rules. - 
  
    
      #initialize(version)  ⇒ HTTPVersion 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    
Creates a new HTTPVersion from
version. - 
  
    
      #to_s  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
The HTTP version as show in the HTTP request and response.
 
Constructor Details
#initialize(version) ⇒ HTTPVersion
Creates a new HTTPVersion from version.
      38 39 40 41 42 43 44 45 46 47 48 49 50 51  | 
    
      # 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  | 
  
Instance Attribute Details
#major ⇒ Object
The major protocol version number
      21 22 23  | 
    
      # File 'lib/webrick/httpversion.rb', line 21 def major @major end  | 
  
#minor ⇒ Object
The minor protocol version number
      26 27 28  | 
    
      # File 'lib/webrick/httpversion.rb', line 26 def minor @minor end  | 
  
Class Method Details
.convert(version) ⇒ Object
Converts version into an HTTPVersion
      31 32 33  | 
    
      # File 'lib/webrick/httpversion.rb', line 31 def self.convert(version) version.is_a?(self) ? version : new(version) end  | 
  
Instance Method Details
#<=>(other) ⇒ Object
Compares this version with other according to the HTTP specification rules.
      57 58 59 60 61 62 63 64 65  | 
    
      # File 'lib/webrick/httpversion.rb', line 57 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  | 
  
#to_s ⇒ Object
The HTTP version as show in the HTTP request and response. For example, “1.1”
      71 72 73  | 
    
      # File 'lib/webrick/httpversion.rb', line 71 def to_s format("%d.%d", @major, @minor) end  |