diff options
Diffstat (limited to 'js/dojo-1.7.2/dojo/topic.js')
| -rw-r--r-- | js/dojo-1.7.2/dojo/topic.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/js/dojo-1.7.2/dojo/topic.js b/js/dojo-1.7.2/dojo/topic.js new file mode 100644 index 0000000..7b1f529 --- /dev/null +++ b/js/dojo-1.7.2/dojo/topic.js @@ -0,0 +1,34 @@ +//>>built +define("dojo/topic", ["./Evented"], function(Evented){ + // summary: + // The export of this module is a pubsub hub + // You can also use listen function itself as a pub/sub hub: + // | topic.subscribe("some/topic", function(event){ + // | ... do something with event + // | }); + // | topic.publish("some/topic", {name:"some event", ...}); + + var hub = new Evented; + return { + publish: function(topic, event){ + // summary: + // Publishes a message to a topic on the pub/sub hub. All arguments after + // the first will be passed to the subscribers, so any number of arguments + // can be provided (not just event). + // topic: String + // The name of the topic to publish to + // event: Object + // An event to distribute to the topic listeners + return hub.emit.apply(hub, arguments); + }, + subscribe: function(topic, listener){ + // summary: + // Subcribes to a topic on the pub/sub hub + // topic: String + // The topic to subscribe to + // listener: Function + // A function to call when a message is published to the given topic + return hub.on.apply(hub, arguments); + } + } +}); |
