class PerfectQueue::Client
Attributes
backend[R]
config[R]
Public Class Methods
new(config)
click to toggle source
# File lib/perfectqueue/client.rb, line 21 def initialize(config) @config = {} config.each_pair {|k,v| @config[k.to_sym] = v } @backend = Backend.new_backend(self, @config) @retention_time = @config[:retention_time] || 300 @alive_time = @config[:alive_time] || 300 @retry_wait = @config[:retry_wait] || 300 # TODO retry wait algorithm end
Public Instance Methods
acquire(options={})
click to toggle source
:max_acquire => nil :alive_time => nil
# File lib/perfectqueue/client.rb, line 65 def acquire(options={}) alive_time = options[:alive_time] || @alive_time max_acquire = options[:max_acquire] || 1 @backend.acquire(alive_time, max_acquire, options) end
close()
click to toggle source
# File lib/perfectqueue/client.rb, line 106 def close @backend.close end
finish(task_token, options={})
click to toggle source
:message => nil :retention_time => default_retention_time
# File lib/perfectqueue/client.rb, line 80 def finish(task_token, options={}) retention_time = options[:retention_time] || @retention_time @backend.finish(task_token, retention_time, options) end
force_finish(key, options={})
click to toggle source
# File lib/perfectqueue/client.rb, line 72 def force_finish(key, options={}) retention_time = options[:retention_time] || @retention_time @backend.force_finish(key, retention_time, options) end
get_task_metadata(key, options={})
click to toggle source
# File lib/perfectqueue/client.rb, line 39 def get_task_metadata(key, options={}) @backend.get_task_metadata(key, options) end
heartbeat(task_token, options={})
click to toggle source
:message => nil :alive_time => nil
# File lib/perfectqueue/client.rb, line 88 def heartbeat(task_token, options={}) alive_time = options[:alive_time] || @alive_time @backend.heartbeat(task_token, alive_time, options) end
init_database(options={})
click to toggle source
# File lib/perfectqueue/client.rb, line 35 def init_database(options={}) @backend.init_database(options) end
list(options={}, &block)
click to toggle source
# File lib/perfectqueue/client.rb, line 51 def list(options={}, &block) @backend.list(options, &block) end
preempt(key, options={})
click to toggle source
:message => nil :alive_time => @alive_time
# File lib/perfectqueue/client.rb, line 45 def preempt(key, options={}) alive_time = options[:alive_time] || @alive_time @backend.preempt(key, alive_time, options) end
release(task_token, options={})
click to toggle source
# File lib/perfectqueue/client.rb, line 94 def release(task_token, options={}) alive_time = options[:alive_time] || 0 @backend.release(task_token, alive_time, options) end
retry(task_token, options={})
click to toggle source
# File lib/perfectqueue/client.rb, line 100 def retry(task_token, options={}) alive_time = options[:retry_wait] || @retry_wait @backend.release(task_token, alive_time, options) end
submit(key, type, data, options={})
click to toggle source
:run_at => Time.now :message => nil :user => nil :priority => nil
# File lib/perfectqueue/client.rb, line 59 def submit(key, type, data, options={}) @backend.submit(key, type, data, options) end