class Rack::Cookies::CookieJar

Public Instance Methods

[](name) click to toggle source
# File lib/rack/contrib/cookies.rb, line 11
def [](name)
  super(name.to_s)
end
[]=(key, options) click to toggle source
# File lib/rack/contrib/cookies.rb, line 15
def []=(key, options)
  unless options.is_a?(Hash)
    options = { :value => options }
  end

  options[:path] ||= '/'
  @set_cookies[key] = options
  super(key.to_s, options[:value])
end
delete(key, options = {}) click to toggle source
# File lib/rack/contrib/cookies.rb, line 25
def delete(key, options = {})
  options[:path] ||= '/'
  @delete_cookies[key] = options
  super(key.to_s)
end
finish!(resp) click to toggle source
# File lib/rack/contrib/cookies.rb, line 31
def finish!(resp)
  @set_cookies.each { |k, v| resp.set_cookie(k, v) }
  @delete_cookies.each { |k, v| resp.delete_cookie(k, v) }
end

Public Class Methods

new(cookies) click to toggle source
# File lib/rack/contrib/cookies.rb, line 4
def initialize(cookies)
  @set_cookies = {}
  @delete_cookies = {}
  super()
  update(cookies)
end