Module: ActiveWaiter
- Defined in:
- lib/active_waiter.rb,
lib/active_waiter/engine.rb,
lib/active_waiter/version.rb,
lib/active_waiter/configuration.rb,
app/helpers/active_waiter/application_helper.rb,
app/controllers/active_waiter/jobs_controller.rb,
app/controllers/active_waiter/application_controller.rb
Defined Under Namespace
Modules: ApplicationHelper, EnumerableJob, Job
Classes: ApplicationController, Configuration, Engine, JobsController
Constant Summary
collapse
- VERSION =
"0.3.1"
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.configuration ⇒ Object
5
6
7
|
# File 'lib/active_waiter/configuration.rb', line 5
def configuration
@configuration ||= Configuration.new
end
|
Class Method Details
9
10
11
|
# File 'lib/active_waiter/configuration.rb', line 9
def configure
yield configuration
end
|
.enqueue(klass, *arguments) ⇒ Object
12
13
14
15
16
17
|
# File 'lib/active_waiter.rb', line 12
def enqueue(klass, *arguments)
next_uuid.tap do |uid|
ActiveWaiter.write(uid, {})
klass.perform_later({ uid: uid }, *arguments)
end
end
|
.next_uuid ⇒ Object
8
9
10
|
# File 'lib/active_waiter.rb', line 8
def next_uuid
SecureRandom.uuid
end
|
.read(uid) ⇒ Object
23
24
25
|
# File 'lib/active_waiter.rb', line 23
def read(uid)
Rails.cache.read("active_waiter:#{uid}")
end
|
.write(uid, value) ⇒ Object
19
20
21
|
# File 'lib/active_waiter.rb', line 19
def write(uid, value)
Rails.cache.write("active_waiter:#{uid}", value)
end
|