{"_id":"channels","_rev":"14-caaf57386933f69840f2b89459567410","name":"channels","description":"Event channels in node.js","dist-tags":{"latest":"0.0.4"},"versions":{"0.0.1":{"name":"channels","description":"Event channels in node.js","keywords":["async","flow control"],"author":{"name":"Peter 'Pita' Martischka","email":"petermartischka@googlemail.com"},"main":"channels.js","version":"0.0.1","_npmJsonOpts":{"file":"/home/pita/.npm/channels/0.0.1/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"channels@0.0.1","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.14","_nodeVersion":"v0.4.8","_defaultsLoaded":true,"dist":{"shasum":"bf379a7d5b08a7260ec8b26bd799382dd1b93eea","tarball":"https://registry.npmjs.org/channels/-/channels-0.0.1.tgz","integrity":"sha512-wKbfOM0hiTVMV6d9P5x5JORzzKfAodf73U6uOppAA7CKehskw6kuO7ful9tQUmCYGIVCPBiZ0Hf9iMtGWDjCMA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBOQQorXSyWPmxQpobNRaN9Ck/Ar6/vC7WXzAjoRn6fzAiEAyPbTBWOQfQJ2OH2kRNEwp1at5sP6+JSyoYHKnXR9/cI="}]},"scripts":{},"directories":{}},"0.0.2":{"name":"channels","description":"Event channels in node.js","keywords":["async","flow control"],"author":{"name":"Peter 'Pita' Martischka","email":"petermartischka@googlemail.com"},"main":"channels.js","version":"0.0.2","_npmJsonOpts":{"file":"/home/pita/.npm/channels/0.0.2/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"channels@0.0.2","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.14","_nodeVersion":"v0.4.8","_defaultsLoaded":true,"dist":{"shasum":"d9ba8b408ac74eee0bfa7c1a322963e1668ec6a1","tarball":"https://registry.npmjs.org/channels/-/channels-0.0.2.tgz","integrity":"sha512-goWd1wzDosHPbGy2ndS7VMpgMw5b+1SjQoSQI1uhf6hyjoiQE1m+tOfog0YEvsoHGXAVbzKx26VSz/gYs43xWw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjvyUqJNojGOlpnaEeL9FnSlA4WzK+zqC2tTABqV+Z9wIhAIhXz9z7agAWC8TUvi3dvPLzmpvDLi5s7OJ/YgCUTHwI"}]},"scripts":{},"maintainers":[{"name":"pita","email":"petermartischka@googlemail.com"}],"directories":{}},"0.0.3":{"name":"channels","description":"Event channels in node.js","keywords":["async","flow control"],"author":{"name":"Peter 'Pita' Martischka","email":"petermartischka@googlemail.com"},"main":"channels.js","version":"0.0.3","readme":"# Example\n\n```js\n/*\n  Imagine we have an airport with 2 gateways. Every gateway can only be used by one plane at the same time. \n  The planes should land in the order they registered their landing at the airport\n*/\n\nvar channels = require(\"channels\");\n\nfunction doLanding(landing, callback)\n{\n  setTimeout(function()\n  {\n    console.log(new Date().toString() + \" \" +landing.planeName + \" landed on \" + landing.gateway);\n    callback();\n  },1000);\n}\n\nvar airport = new channels.channels(doLanding);\n\nairport.emit(\"gateway1\", {planeName: \"superjet1\", gateway: \"gateway1\"});\nairport.emit(\"gateway2\", {planeName: \"superjet2\", gateway: \"gateway2\"});\n\nairport.emit(\"gateway1\", {planeName: \"superjet3\", gateway: \"gateway1\"});\nairport.emit(\"gateway2\", {planeName: \"superjet4\", gateway: \"gateway2\"});\n\nairport.emit(\"gateway1\", {planeName: \"superjet5\", gateway: \"gateway1\"});\nairport.emit(\"gateway2\", {planeName: \"superjet6\", gateway: \"gateway2\"});\n```\n## Output\n\n<pre>\nThu Jul 28 2011 18:44:52 GMT+0100 (BST) superjet1 landed on gateway1\nThu Jul 28 2011 18:44:52 GMT+0100 (BST) superjet2 landed on gateway2\nThu Jul 28 2011 18:44:53 GMT+0100 (BST) superjet3 landed on gateway1\nThu Jul 28 2011 18:44:53 GMT+0100 (BST) superjet4 landed on gateway2\nThu Jul 28 2011 18:44:54 GMT+0100 (BST) superjet5 landed on gateway1\nThu Jul 28 2011 18:44:54 GMT+0100 (BST) superjet6 landed on gateway2\n</pre>\n","readmeFilename":"README.md","_id":"channels@0.0.3","dist":{"shasum":"aa3b92198d9a1d788b154dd085299f82e1261cc6","tarball":"https://registry.npmjs.org/channels/-/channels-0.0.3.tgz","integrity":"sha512-BwSeFrT54cHKFfn7sSrinxMIKBUj7qEybnoo59BxBTzhrn8w1RzOJnPgcYKmQzrxn9bi+S/6RDAIFfMc1wXSvA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHX8/X42aVqh2foVCoEtU2x1SutBVt9Pm6MvGtyY7ulsAiEAuHlXFyFiFSkpksWy9QTrlPHSWUkw08DwYbByxZQb1mA="}]},"_from":".","_npmVersion":"1.2.15","_npmUser":{"name":"pita","email":"petermartischka@googlemail.com"},"maintainers":[{"name":"pita","email":"petermartischka@googlemail.com"}],"directories":{}},"0.0.4":{"name":"channels","description":"Event channels in node.js","keywords":["async","flow control"],"author":{"name":"Peter 'Pita' Martischka","email":"petermartischka@googlemail.com"},"main":"channels.js","version":"0.0.4","readme":"# Example\n\n```js\n/*\n  Imagine we have an airport with 2 gateways. Every gateway can only be used by one plane at the same time. \n  The planes should land in the order they registered their landing at the airport\n*/\n\nvar channels = require(\"channels\");\n\nfunction doLanding(landing, callback)\n{\n  setTimeout(function()\n  {\n    console.log(new Date().toString() + \" \" +landing.planeName + \" landed on \" + landing.gateway);\n    callback();\n  },1000);\n}\n\nvar airport = new channels.channels(doLanding);\n\nairport.emit(\"gateway1\", {planeName: \"superjet1\", gateway: \"gateway1\"});\nairport.emit(\"gateway2\", {planeName: \"superjet2\", gateway: \"gateway2\"});\n\nairport.emit(\"gateway1\", {planeName: \"superjet3\", gateway: \"gateway1\"});\nairport.emit(\"gateway2\", {planeName: \"superjet4\", gateway: \"gateway2\"});\n\nairport.emit(\"gateway1\", {planeName: \"superjet5\", gateway: \"gateway1\"});\nairport.emit(\"gateway2\", {planeName: \"superjet6\", gateway: \"gateway2\"});\n```\n## Output\n\n<pre>\nThu Jul 28 2011 18:44:52 GMT+0100 (BST) superjet1 landed on gateway1\nThu Jul 28 2011 18:44:52 GMT+0100 (BST) superjet2 landed on gateway2\nThu Jul 28 2011 18:44:53 GMT+0100 (BST) superjet3 landed on gateway1\nThu Jul 28 2011 18:44:53 GMT+0100 (BST) superjet4 landed on gateway2\nThu Jul 28 2011 18:44:54 GMT+0100 (BST) superjet5 landed on gateway1\nThu Jul 28 2011 18:44:54 GMT+0100 (BST) superjet6 landed on gateway2\n</pre>\n","readmeFilename":"README.md","_id":"channels@0.0.4","dist":{"shasum":"1bee323edea152bb9ef04f41bc6e6b0f5948a941","tarball":"https://registry.npmjs.org/channels/-/channels-0.0.4.tgz","integrity":"sha512-4zRxUJ/sN+GmA0NeB1wIBA8xzU6C30FsGkSIWob7OLIQVwMKE/ct9n3RLfq8XiLUpafK5gWg7+HuUVzXMXYqVw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCLuZFjK0mp74HkUTTUSX1vhGNCG7FcYbW0xxo4TzCg5gIhAP4mhg7u5Gclds0O+Pb5VJ1osbo8ZQbf23f/uuNyB2Xc"}]},"_from":".","_npmVersion":"1.2.15","_npmUser":{"name":"johnyma22","email":"john@mclear.co.uk"},"maintainers":[{"name":"pita","email":"petermartischka@googlemail.com"},{"name":"johnyma22","email":"john@mclear.co.uk"}],"directories":{}}},"maintainers":[{"email":"petermartischka@googlemail.com","name":"pita"},{"email":"john@mclear.co.uk","name":"johnyma22"},{"email":"wes@wesleytodd.com","name":"wesleytodd"}],"time":{"modified":"2022-06-13T05:53:14.278Z","created":"2011-07-28T18:56:44.188Z","0.0.1":"2011-07-28T18:56:45.222Z","0.0.2":"2011-08-07T16:14:27.945Z","0.0.3":"2013-03-24T21:36:24.698Z","0.0.4":"2013-04-17T14:45:39.800Z"},"author":{"name":"Peter 'Pita' Martischka","email":"petermartischka@googlemail.com"},"users":{"delacap":true}}