Module: ThreadedInMemoryQueue

Extended by:
Inline
Defined in:
lib/threaded_in_memory_queue.rb,
lib/threaded_in_memory_queue/errors.rb,
lib/threaded_in_memory_queue/inline.rb,
lib/threaded_in_memory_queue/master.rb,
lib/threaded_in_memory_queue/worker.rb,
lib/threaded_in_memory_queue/timeout.rb,
lib/threaded_in_memory_queue/version.rb

Defined Under Namespace

Modules: Inline, Timeout Classes: Master, NoWorkersError, Worker, WorkerNotStarted

Constant Summary collapse

VERSION =
"0.0.2"

Class Attribute Summary collapse

Class Method Summary collapse

Methods included from Inline

inline, inline=, inline?

Class Attribute Details

.loggerObject

Returns the value of attribute logger.



13
14
15
# File 'lib/threaded_in_memory_queue.rb', line 13

def logger
  @logger
end

Class Method Details

.enqueue(klass, *args) ⇒ Object

Raises:



39
40
41
42
43
# File 'lib/threaded_in_memory_queue.rb', line 39

def self.enqueue(klass, *args)
  raise NoWorkersError, "must start worker before enqueueing jobs" unless master
  master.enqueue(klass, *args)
  return true
end

.masterObject



31
32
33
# File 'lib/threaded_in_memory_queue.rb', line 31

def self.master
  @master
end

.master=(master) ⇒ Object



35
36
37
# File 'lib/threaded_in_memory_queue.rb', line 35

def self.master=(master)
  @master = master
end

.start(options = {}) ⇒ Object



16
17
18
19
20
# File 'lib/threaded_in_memory_queue.rb', line 16

def self.start(options = {})
  self.logger = options[:logger] if options[:logger]
  self.master = Master.new(options).start
  return self
end

.started?Boolean

Returns:

  • (Boolean)


22
23
24
25
# File 'lib/threaded_in_memory_queue.rb', line 22

def self.started?
  return false unless master
  master.alive?
end

.stop(timeout = 10) ⇒ Object



45
46
47
48
49
# File 'lib/threaded_in_memory_queue.rb', line 45

def self.stop(timeout = 10)
  return true unless master
  master.stop(timeout)
  return true
end

.stopped?Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/threaded_in_memory_queue.rb', line 27

def self.stopped?
  !started?
end