self.service = function (role, fn) { self.allocate(role, function (port, ready) { up.on('up', function () { self.assume(role, port); }); fn(port, ready); if (fn.length === 1) ready(); }); };
self.service = function (role, params, fn) { if (typeof role === 'object') { fn = params; params = role; role = params.role; } else if (typeof params === 'function') { fn = params; params = {}; } self.allocate(role, params, function (port, ready) { up.on('up', function () { params.port = port; self.assume(role, params); }); fn(port, ready); if (fn.length === 1) ready(); }); };