- if (agent.jsHdl.interfaceProxies && agent.jsHdl.interfaceProxies[ifName])
- if (agent.jsHdl.interfaceProxies[ifName][signal]) {
- methodExist = true;
- } else {
- agent.jsHdl.interfaceProxies[ifName][signal] = function() {
- service._emitSignal(agent.objectPath, signal, arguments[0]);
- };
- return;
- }
-
- if ((agent.jsHdl[signal] == undefined || agent.jsHdl[signal] == null) && !methodExist)
- agent.jsHdl[signal] = function() {
- service._emitSignal(agent.objectPath, signal, arguments[0]);
+ if (agent.handler[signal])
+ cloudeebus.log("Signal '" + signal + "' emitter already implemented");
+ else {
+ agent.handler[signal] = function() {
+ var args = [];
+ for (var i=0; i < arguments.length; i++ )
+ args.push(arguments[i]);
+ service._emitSignal(agent.objectPath, signal, args);