class Recluse::Tasks::Task
Task
interface. Runs the queue with customized behavior.
Attributes
queue[RW]
Queue
of links to check.
results[R]
HashTree
representation of results.
Public Class Methods
new(profile, queue_options: {}, results: nil)
click to toggle source
Create new task.
# File lib/recluse/tasks/task.rb, line 19 def initialize(profile, queue_options: {}, results: nil) @queue = Recluse::Queue.new(profile.email, queue_options) if results.nil? @results = Recluse::HashTree.new do |url1, url2| url1, url2 = url2, url1 if url2.length > url1.length # Detect if URL exists already, but just has a slash at end (url1 == url2 || (url1.length == (url2.length + 1) && url1[-1] == '/' && url2[-1] != '/' && url1[0...-1] == url2)) end else @results = results end @queue.add profile.roots end
Public Instance Methods
add(link)
click to toggle source
Add link (or links) to the queue.
# File lib/recluse/tasks/task.rb, line 35 def add(link) @queue.add link end
run()
click to toggle source
Run the queue.
# File lib/recluse/tasks/task.rb, line 41 def run @queue.run end