Class: IncludedInMemcached
- Inherits:
-
Object
- Object
- IncludedInMemcached
- Defined in:
- lib/spider/included_in_memcached.rb
Overview
A specialized class using memcached to track items stored. It supports three operations: new, <<, and include? . Together these can be used to add items to the memcache, then determine whether the item has been added.
To use it with Spider use the check_already_seen_with method:
Spider.start_at('http://example.com/') do |s|
s.check_already_seen_with IncludedInMemcached.new('localhost:11211')
end
Instance Method Summary collapse
-
#<<(v) ⇒ Object
Add an item to the memcache.
-
#include?(v) ⇒ Boolean
True if the item is in the memcache.
-
#initialize(*a) ⇒ IncludedInMemcached
constructor
Construct a new IncludedInMemcached instance.
Constructor Details
#initialize(*a) ⇒ IncludedInMemcached
Construct a new IncludedInMemcached instance. All arguments here are passed to MemCache (part of the memcache-client gem).
17 18 19 |
# File 'lib/spider/included_in_memcached.rb', line 17 def initialize(*a) @c = MemCache.new(*a) end |
Instance Method Details
#<<(v) ⇒ Object
Add an item to the memcache.
22 23 24 |
# File 'lib/spider/included_in_memcached.rb', line 22 def <<(v) @c.add(v.to_s, v) end |
#include?(v) ⇒ Boolean
True if the item is in the memcache.
27 28 29 |
# File 'lib/spider/included_in_memcached.rb', line 27 def include?(v) @c.get(v.to_s) == v end |