class Motion::HTTP::Headers
Public Class Methods
new(headers = {})
click to toggle source
# File lib/common/http/headers.rb, line 4 def initialize(headers = {}) @headers = {} if headers headers.each {|key, value| set(key, value) } end end
Public Instance Methods
<<(key, value)
click to toggle source
alias :<< :add # FIXME: doesn't work in Android
# File lib/common/http/headers.rb, line 36 def <<(key, value) add(key, value) end
[](key)
click to toggle source
alias :[] :get # FIXME: doesn't work in Android
# File lib/common/http/headers.rb, line 15 def [](key) get(key) end
[]=(key, value)
click to toggle source
alias :[]= :set # FIXME: doesn't work in Android
# File lib/common/http/headers.rb, line 23 def []=(key, value) set(key, value) end
add(key, value)
click to toggle source
# File lib/common/http/headers.rb, line 27 def add(key, value) key = key.downcase @headers[key] ||= [] unless @headers[key].is_a?(Array) @headers[key] = [@headers[key]] end @headers[key] << value end
dup()
click to toggle source
FIXME: Android doesn't support dup (Java exception raised: java.lang.CloneNotSupportedException: Class com.yourcompany.motion_http.Headers doesn't implement Cloneable)
# File lib/common/http/headers.rb, line 49 def dup Headers.new(@headers) end
each(&block)
click to toggle source
# File lib/common/http/headers.rb, line 40 def each(&block) @headers.each(&block) end
get(key)
click to toggle source
# File lib/common/http/headers.rb, line 11 def get(key) @headers[key.downcase] end
set(key, value)
click to toggle source
# File lib/common/http/headers.rb, line 19 def set(key, value) @headers[key.downcase] = value end
to_hash()
click to toggle source
# File lib/common/http/headers.rb, line 44 def to_hash @headers # TODO: flatten array values end