Class: Uploadr::Queue
- Inherits:
-
Object
- Object
- Uploadr::Queue
- Includes:
- Celluloid
- Defined in:
- lib/uploadr/queue.rb
Instance Attribute Summary collapse
-
#files ⇒ Object
Returns the value of attribute files.
Instance Method Summary collapse
- #completed ⇒ Object
-
#initialize ⇒ Queue
constructor
A new instance of Queue.
- #shift ⇒ Object
- #wait_completion ⇒ Object
Constructor Details
#initialize ⇒ Queue
Returns a new instance of Queue.
9 10 11 12 13 14 15 16 |
# File 'lib/uploadr/queue.rb', line 9 def initialize @worker_count = Uploadr.worker_count @files = [] Uploadr.directories.each do |dir| @files << Dir.glob("#{File.(dir)}/**/*.jpg", File::FNM_CASEFOLD) end @files.flatten! end |
Instance Attribute Details
#files ⇒ Object
Returns the value of attribute files.
7 8 9 |
# File 'lib/uploadr/queue.rb', line 7 def files @files end |
Instance Method Details
#completed ⇒ Object
22 23 24 25 26 27 |
# File 'lib/uploadr/queue.rb', line 22 def completed @worker_count -= 1 if @worker_count == 0 signal(:all_completed) end end |
#shift ⇒ Object
18 19 20 |
# File 'lib/uploadr/queue.rb', line 18 def shift @files.shift end |
#wait_completion ⇒ Object
29 30 31 32 |
# File 'lib/uploadr/queue.rb', line 29 def wait_completion wait(:all_completed) Actor[:log].puts "Shutting down..." end |