Skip to content

Instantly share code, notes, and snippets.

@jstotz
Created September 27, 2010 19:31
Show Gist options
  • Save jstotz/599660 to your computer and use it in GitHub Desktop.
Save jstotz/599660 to your computer and use it in GitHub Desktop.
var sys = require('sys'),
http = require('http'),
events = require('events'),
router = require('./lib/router').createRouter();
// Routing table
router.get('/handlers/:name/messages', function(name) {
var response = this.response;
response.writeHead(200, {'Content-Type': 'text/plain'});
handlers[name].addListener('message', function(message) {
response.write(message);
});
});
// Web server
var httpServer = http.createServer(function(req, res) { router.routeRequest(req, res) });
httpServer.listen(8000);
// Handlers
var hello_handler = new events.EventEmitter();
var handlers = {
"hello": hello_handler
};
// Simulate continuously emmitting events
setInterval(function() {
hello_handler.emit('message', (new Date).toString());
}, 1000);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment