Module: Taskinator
- Defined in:
- lib/taskinator.rb,
lib/taskinator/api.rb,
lib/taskinator/task.rb,
lib/taskinator/tasks.rb,
lib/taskinator/logger.rb,
lib/taskinator/queues.rb,
lib/taskinator/process.rb,
lib/taskinator/version.rb,
lib/taskinator/visitor.rb,
lib/taskinator/executor.rb,
lib/taskinator/definition.rb,
lib/taskinator/job_worker.rb,
lib/taskinator/complete_on.rb,
lib/taskinator/persistence.rb,
lib/taskinator/task_worker.rb,
lib/taskinator/queues/resque.rb,
lib/taskinator/process_worker.rb,
lib/taskinator/queues/sidekiq.rb,
lib/taskinator/redis_connection.rb,
lib/taskinator/definition/builder.rb,
lib/taskinator/queues/delayed_job.rb,
lib/taskinator/create_process_worker.rb
Defined Under Namespace
Modules: Api, CompleteOn, Definition, Logging, Persistence, Queues, Visitor
Classes: CreateProcessWorker, Executor, JobWorker, NoOpInstrumenter, Process, ProcessWorker, RedisConnection, Task, TaskWorker, Tasks
Constant Summary
collapse
- NAME =
"Taskinator"
- LICENSE =
'See LICENSE.txt for licensing details.'
- DEFAULTS =
{
}
- VERSION =
"0.0.16"
Class Attribute Summary collapse
-
.queue_adapter ⇒ Object
the queue adapter to use supported adapters include :delayed_job, :redis and :sidekiq NOTE: ensure that the respective gem is included.
-
.queue_config ⇒ Object
configuration, usually a hash, which will be passed to the configured queue adapter.
Class Method Summary
collapse
Class Attribute Details
.queue_adapter ⇒ Object
the queue adapter to use supported adapters include :delayed_job, :redis and :sidekiq NOTE: ensure that the respective gem is included
84
85
86
|
# File 'lib/taskinator.rb', line 84
def queue_adapter
@queue_adapter
end
|
.queue_config ⇒ Object
configuration, usually a hash, which will be passed to the configured queue adapter
93
94
95
|
# File 'lib/taskinator.rb', line 93
def queue_config
@queue_config
end
|
Class Method Details
Configuration for Taskinator client, use like:
Taskinator.configure do |config|
config.redis = { :namespace => 'myapp', :pool_size => 1, :url => 'redis://myhost:8877/0' }
config.queue_config = { :process_queue => 'processes', :task_queue => 'tasks' }
end
55
56
57
|
# File 'lib/taskinator.rb', line 55
def configure
yield self if block_given?
end
|
.instrumenter ⇒ Object
set the instrumenter to use. can be ActiveSupport::Notifications
108
109
110
|
# File 'lib/taskinator.rb', line 108
def instrumenter
@instrumenter ||= NoOpInstrumenter.new
end
|
.instrumenter=(value) ⇒ Object
111
112
113
|
# File 'lib/taskinator.rb', line 111
def instrumenter=(value)
@instrumenter = value
end
|
.options ⇒ Object
40
41
42
|
# File 'lib/taskinator.rb', line 40
def options
@options ||= DEFAULTS.dup
end
|
.options=(opts) ⇒ Object
43
44
45
|
# File 'lib/taskinator.rb', line 43
def options=(opts)
@options = opts
end
|
.queue ⇒ Object
100
101
102
103
104
|
# File 'lib/taskinator.rb', line 100
def queue
adapter = self.queue_adapter || :resque
config = queue_config || {}
@queue ||= Taskinator::Queues.create_adapter(adapter, config)
end
|
.redis(&block) ⇒ Object
59
60
61
62
|
# File 'lib/taskinator.rb', line 59
def redis(&block)
raise ArgumentError, "requires a block" unless block_given?
redis_pool.with(&block)
end
|