class EventMachine::DatagramObject
@private
Public Class Methods
new(io)
click to toggle source
Calls superclass method
EventMachine::Selectable.new
# File lib/em/pure_ruby.rb, line 1176 def initialize io super io @outbound_q = [] end
Public Instance Methods
get_outbound_data_size()
click to toggle source
# File lib/em/pure_ruby.rb, line 1207 def get_outbound_data_size @outbound_q.inject(0) {|memo,obj| memo += (obj || "").length} end
select_for_reading?()
click to toggle source
select_for_reading?
# File lib/em/pure_ruby.rb, line 1202 def select_for_reading? true end
select_for_writing?()
click to toggle source
select_for_writing?
# File lib/em/pure_ruby.rb, line 1190 def select_for_writing? unless @close_scheduled if @outbound_q.empty? @close_scheduled = true if @close_requested false else true end end end
send_datagram(data, target)
click to toggle source
# File lib/em/pure_ruby.rb, line 1182 def send_datagram data, target # TODO, coalesce here perhaps by being smarter about appending to @outbound_q.last? unless @close_scheduled or @close_requested @outbound_q << [data.to_s, target] end end