Remove the Publisher mixin.

This commit is contained in:
James Coglan
2011-11-26 18:23:08 +00:00
parent 3b83de82a0
commit b439f92a83
3 changed files with 12 additions and 37 deletions
-1
View File
@@ -19,7 +19,6 @@ module Faye
autoload :Draft75Parser, root + '/draft75_parser'
autoload :Draft76Parser, root + '/draft76_parser'
autoload :Protocol8Parser, root + '/protocol8_parser'
autoload :Publisher, root + '/publisher'
# http://www.w3.org/International/questions/qa-forms-utf-8.en.php
UTF8_MATCH = /^([\x00-\x7F]|[\xC2-\xDF][\x80-\xBF]|\xE0[\xA0-\xBF][\x80-\xBF]|[\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}|\xED[\x80-\x9F][\x80-\xBF]|\xF0[\x90-\xBF][\x80-\xBF]{2}|[\xF1-\xF3][\x80-\xBF]{3}|\xF4[\x80-\x8F][\x80-\xBF]{2})*$/
+12 -5
View File
@@ -10,8 +10,6 @@ module Faye
attr_reader :url, :ready_state, :buffered_amount
attr_accessor :onopen, :onmessage, :onerror, :onclose
include Publisher
def receive(data)
return false unless ready_state == OPEN
event = Event.new('message')
@@ -53,20 +51,29 @@ module Faye
end
def add_event_listener(type, listener, use_capture)
bind(type, listener)
@listeners ||= {}
list = @listeners[event_type] ||= []
list << listener
end
def remove_event_listener(type, listener, use_capture)
unbind(type, listener)
return unless @listeners and @listeners[event_type]
return @listeners.delete(event_type) unless listener
@listeners[event_type].delete_if(&listener.method(:==))
end
def dispatch_event(event)
event.target = event.current_target = self
event.event_phase = Event::AT_TARGET
trigger(event.type, event)
callback = __send__("on#{ event.type }")
callback.call(event) if callback
return unless @listeners and @listeners[event_type]
@listeners[event_type].each do |listener|
listener.call(*args)
end
end
end
-31
View File
@@ -1,31 +0,0 @@
class Faye::WebSocket
module Publisher
def count_listeners(event_type)
return 0 unless @subscribers and @subscribers[event_type]
@subscribers[event_type].size
end
def bind(event_type, &listener)
@subscribers ||= {}
list = @subscribers[event_type] ||= []
list << listener
end
def unbind(event_type, &listener)
return unless @subscribers and @subscribers[event_type]
return @subscribers.delete(event_type) unless listener
@subscribers[event_type].delete_if(&listener.method(:==))
end
def trigger(event_type, *args)
return unless @subscribers and @subscribers[event_type]
@subscribers[event_type].each do |listener|
listener.call(*args)
end
end
end
end