Class: Arrow::CookieSet
- Inherits:
-
Object
- Object
- Object
- Arrow::CookieSet
- Extends:
- Forwardable
- Includes:
- Enumerable
- Defined in:
- lib/arrow/cookieset.rb
Overview
An object class which provides a convenient way of accessing a set of Arrow::Cookies.
Synopsis
cset = Arrow::CookieSet.new() cset = Arrow::CookieSet.new( ) cset['cookiename'] # => Arrow::Cookie cset['cookiename'] = cset['cookiename'] = 'cookievalue' cset[:cookiename] = 'cookievalue' cset << Arrow::Cookie.new( *args ) cset.include?( 'cookiename' ) cset.include?( ) cset.each do || ... end
Authors
Michael Granger
Jeremiah Jordan
Please see the file LICENSE in the top-level directory for licensing details.
Instance Method Summary
-
- (Object) <<(cookie)
Append operator: Add the given cookie to the set, replacing an existing cookie with the same name if one exists.
-
- (Object) [](name)
Index operator method: returns the Arrow::Cookie with the given name if it exists in the cookieset.
-
- (Object) []=(name, value)
Index set operator method: set the cookie that corresponds to the given name to value.
-
- (Boolean) include?(name_or_cookie)
(also: #key?)
Returns true if the CookieSet includes either a cookie with the given name or an Arrow::Cookie object.
-
- (CookieSet) initialize(*cookies)
constructor
Create a new CookieSet prepopulated with the given cookies.
-
- (Object) length
(also: #size)
Returns the number of cookies in the cookieset.
Methods inherited from Object
deprecate_class_method, deprecate_method, inherited
Methods included from Loggable
Constructor Details
- (CookieSet) initialize(*cookies)
Create a new CookieSet prepopulated with the given cookies
48 49 50 |
# File 'lib/arrow/cookieset.rb', line 48 def initialize( * ) = Set.new( .flatten ) end |
Instance Method Details
- (Object) <<(cookie)
Append operator: Add the given cookie to the set, replacing an existing cookie with the same name if one exists.
99 100 101 102 103 104 |
# File 'lib/arrow/cookieset.rb', line 99 def <<( ) .delete( ) .add( ) return self end |
- (Object) [](name)
Index operator method: returns the Arrow::Cookie with the given name if it exists in the cookieset.
69 70 71 72 |
# File 'lib/arrow/cookieset.rb', line 69 def []( name ) name = name.to_s return .find() {|| .name == name } end |
- (Object) []=(name, value)
Index set operator method: set the cookie that corresponds to the given name to value. If value is not an Arrow::Cookie, one with be created and its value set to value.
78 79 80 81 82 83 84 |
# File 'lib/arrow/cookieset.rb', line 78 def []=( name, value ) value = Arrow::Cookie.new( name.to_s, value ) unless value.is_a?( Arrow::Cookie ) raise ArgumentError, "cannot set a cookie named '%s' with a key of '%s'" % [ value.name, name ] if value.name.to_s != name.to_s self << value end |
- (Boolean) include?(name_or_cookie) Also known as: key?
Returns true if the CookieSet includes either a cookie with the given name or an Arrow::Cookie object.
89 90 91 92 93 |
# File 'lib/arrow/cookieset.rb', line 89 def include?( ) return true if .include?( ) name = .to_s return self[name] ? true : false end |
- (Object) length Also known as: size
Returns the number of cookies in the cookieset
61 62 63 |
# File 'lib/arrow/cookieset.rb', line 61 def length return .length end |