dbus service: Bug fix, restoring attribute 'service name' for cloudeebus.Agent
authorFrederic PAUT <frederic.paut@linux.intel.com>
Mon, 29 Jul 2013 08:45:38 +0000 (10:45 +0200)
committerFrederic PAUT <frederic.paut@linux.intel.com>
Mon, 29 Jul 2013 08:45:38 +0000 (10:45 +0200)
cloudeebus/cloudeebus.js
cloudeebus/cloudeebus.py
doc/agent/server.html

index e0ee0a4..4d2ec54 100644 (file)
@@ -205,7 +205,8 @@ cloudeebus.BusConnection.prototype.addService = function(serviceName) {
 //objPath : a DBus path to access it
 //jsHdl : a Javascript handler to process methods, 
 //xml : the xml which describe interface/methods/signals...
-cloudeebus.Agent = function(objPath, jsHdl, xml) {
+cloudeebus.Agent = function(srvName, objPath, jsHdl, xml) {
+       this.srvName = srvName;
        this.xml = xml;
        this.objectPath = objPath;
        this.jsHdl = jsHdl;
@@ -371,6 +372,7 @@ cloudeebus.Service.prototype.addAgent = function(agent) {
                }
                
                var arglist = [
+                   agent.srvName,
                    agent.objectPath,
                    agent.xml
                    ];
index ce8bf33..5a69f9d 100755 (executable)
@@ -619,8 +619,9 @@ class CloudeebusService:
         '''
         arguments: objectPath, xmlTemplate
         '''
-        agentObjectPath = list[0]
-        xmlTemplate = list[1]
+        srvName = list[0]
+        agentObjectPath = list[1]
+        xmlTemplate = list[2]
         className = createClassName(agentObjectPath)
         if (self.dynDBusClasses.has_key(className) == False):
             self.dynDBusClasses[className] = DynDBusClass(className, self.globalCtx, self.localCtx)
@@ -629,7 +630,7 @@ class CloudeebusService:
 
         ## Class already exist, instanciate it if not already instanciated
         if (self.serviceAgents.has_key(className) == False):
-            self.serviceAgents[className] = eval(className + "(self.bus, callback=self.srvCB, objPath='"+agentObjectPath+"', busName=self.srvName)", self.globalCtx, self.localCtx)
+            self.serviceAgents[className] = eval(className + "(self.bus, callback=self.srvCB, objPath='"+agentObjectPath+"', busName='"+srvName+"')", self.globalCtx, self.localCtx)
             
         self.serviceAgents[className].add_to_connection()
         return (agentObjectPath)
index 7952612..63ef99b 100644 (file)
@@ -60,7 +60,7 @@ sampleObjectHandler = {
 
 function addAgent(service) {
   window.gService = service;
-  var agent = new cloudeebus.Agent("/org/cloudeebus/Sample", sampleObjectHandler, sampleXml);
+  var agent = new cloudeebus.Agent(service.name, "/org/cloudeebus/Sample", sampleObjectHandler, sampleXml);
   cloudeebus.log("Adding agent " + agent.objectPath + " on " + service.name + ", mapped on Javascript object: 'sampleObjectHandler");
   service.addAgent(agent).then(logCB, errorCB);
   window.gAgent = agent;