Class: Jugglite::DeferrableBody
- Inherits:
-
Object
- Object
- Jugglite::DeferrableBody
- Includes:
- EventMachine::Deferrable
- Defined in:
- lib/jugglite/deferrable_body.rb
Instance Method Summary collapse
- #each(&blk) ⇒ Object
-
#initialize ⇒ DeferrableBody
constructor
A new instance of DeferrableBody.
- #write(body) ⇒ Object
Constructor Details
#initialize ⇒ DeferrableBody
Returns a new instance of DeferrableBody.
5 6 7 |
# File 'lib/jugglite/deferrable_body.rb', line 5 def initialize @queue = EM::Queue.new end |
Instance Method Details
#each(&blk) ⇒ Object
13 14 15 16 17 18 19 20 |
# File 'lib/jugglite/deferrable_body.rb', line 13 def each(&blk) @body_callback = blk processor = proc { |item| @body_callback.call(item) @queue.pop(&processor) } @queue.pop(&processor) end |
#write(body) ⇒ Object
9 10 11 |
# File 'lib/jugglite/deferrable_body.rb', line 9 def write(body) @queue.push(body) end |