Sha256: 7f37fc440e73a8b14526721a00233961cdc7bc6bd479abb75cd2d45767e802fb

Contents?: true

Size: 1.02 KB

Versions: 8

Compression:

Stored size: 1.02 KB

Contents

# * George Moschovitis  <gm@navel.gr>
# (c) 2004-2005 Navel, all rights reserved.
# $Id$

module N

# Encapsulates a HTTP Cookie.

class Cookie
	attr_reader :name
	attr_accessor :value, :version
	attr_accessor :domain, :path, :secure
	attr_accessor :comment, :max_age

	def initialize(name, value)
		@name = name
		@value = value
		@version = 0     # Netscape Cookie
		@domain = @path = @secure = @comment = @max_age =
		@expires = @comment_url = @discard = @port = nil
	end

	def expires=(t)
		@expires = t && (t.is_a?(Time) ? t.httpdate : t.to_s)
	end

	def expires
		@expires && Time.parse(@expires)
	end

	def to_s
		ret = ""
		ret << @name << "=" << @value
		ret << "; " << "Version=" << @version.to_s if @version > 0
		ret << "; " << "Domain="  << @domain  if @domain
		ret << "; " << "Expires=" << @expires if @expires
		ret << "; " << "Max-Age=" << @max_age.to_s if @max_age
		ret << "; " << "Comment=" << @comment if @comment
		ret << "; " << "Path="    << @path if @path
		ret << "; " << "Secure"   if @secure
		ret
	end

end

end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
nitro-0.12.0 lib/nitro/cookie.rb
nitro-0.10.0 lib/nitro/cookie.rb
nitro-0.11.0 lib/nitro/cookie.rb
nitro-0.13.0 lib/nitro/cookie.rb
nitro-0.14.0 lib/nitro/cookie.rb
nitro-0.15.0 lib/nitro/cookie.rb
nitro-0.9.5 lib/nitro/cookie.rb
nitro-0.9.3 lib/nitro/cookie.rb