Class: Riak::Util::Headers
- Includes:
- Net::HTTPHeader
- Defined in:
- lib/riak/util/headers.rb
Overview
Represents headers from an HTTP request or response. Used internally by HTTP backends for processing headers.
Direct Known Subclasses
Class Method Summary collapse
-
.parse(chunk) ⇒ Object
Parse a single header line into its key and value.
Instance Method Summary collapse
-
#initialize ⇒ Headers
constructor
A new instance of Headers.
-
#parse(chunk) ⇒ Object
Parses a header line and adds it to the header collection.
Constructor Details
#initialize ⇒ Headers
Returns a new instance of Headers.
31 32 33 |
# File 'lib/riak/util/headers.rb', line 31 def initialize initialize_http_header({}) end |
Class Method Details
.parse(chunk) ⇒ Object
Parse a single header line into its key and value
37 38 39 40 41 42 43 |
# File 'lib/riak/util/headers.rb', line 37 def self.parse(chunk) line = chunk.strip # thanks Net::HTTPResponse return [nil,nil] if chunk =~ /\AHTTP(?:\/(\d+\.\d+))?\s+(\d\d\d)\s*(.*)\z/in m = /\A([^:]+):\s*/.match(line) [m[1], m.post_match] rescue [nil, nil] end |
Instance Method Details
#parse(chunk) ⇒ Object
Parses a header line and adds it to the header collection
47 48 49 50 |
# File 'lib/riak/util/headers.rb', line 47 def parse(chunk) key, value = self.class.parse(chunk) add_field(key, value) if key && value end |