module GemeraldBeanstalk::EventServer

Public Class Methods

new(beanstalk) click to toggle source
Calls superclass method
# File lib/gemerald_beanstalk/event_server.rb, line 8
def initialize(beanstalk)
  @beanstalk = beanstalk
  @partial_message = ''
  super
end

Public Instance Methods

beanstalk() click to toggle source
# File lib/gemerald_beanstalk/event_server.rb, line 3
def beanstalk
  return @beanstalk
end
post_init() click to toggle source
# File lib/gemerald_beanstalk/event_server.rb, line 15
def post_init
  @connection = beanstalk.connect(self)
end
receive_data(data) click to toggle source
# File lib/gemerald_beanstalk/event_server.rb, line 20
def receive_data(data)
  if data[-2, 2] == "\r\n"
    message = @partial_message + data
    @partial_message = ''
    EventMachine.defer(proc { @connection.execute(message) })
  else
    @partial_message += data
  end
end
unbind() click to toggle source
# File lib/gemerald_beanstalk/event_server.rb, line 31
def unbind
  beanstalk.disconnect(@connection)
  @connection.close_connection
end