class Fluent::PluginHelper::Server::CallbackSocket
def on(event, &callback)
def on(event, &callback) raise "BUG: this event is disabled for #{@server_type}: #{event}" unless @enabled_events.include?(event) case event when :data @sock.data(&callback) when :write_complete cb = ->(){ callback.call(self) } @sock.on_write_complete(&cb) when :close cb = ->(){ callback.call(self) } @sock.on_close(&cb) else raise "BUG: unknown event: #{event}" end end