Author: remi
Date: 2009-03-24 11:17:15 +0100 (Tue, 24 Mar 2009)
New Revision: 4204

Modified:
   
software_suite_v2/tuxware/tuxdroidserver/trunk/resources/01_robot_system/resourceGadgetFramework.py
   
software_suite_v2/tuxware/tuxdroidserver/trunk/resources/03_advanced_api/resourceTestGadgetMessage.py
Log:
* added a logger to the gadget framework

Modified: 
software_suite_v2/tuxware/tuxdroidserver/trunk/resources/01_robot_system/resourceGadgetFramework.py
===================================================================
--- 
software_suite_v2/tuxware/tuxdroidserver/trunk/resources/01_robot_system/resourceGadgetFramework.py
 2009-03-24 10:15:54 UTC (rev 4203)
+++ 
software_suite_v2/tuxware/tuxdroidserver/trunk/resources/01_robot_system/resourceGadgetFramework.py
 2009-03-24 10:17:15 UTC (rev 4204)
@@ -8,6 +8,7 @@
 from util.misc.tuxPaths import TUXDROID_LANGUAGE
 from util.misc.tuxPaths import TUXDROID_DEFAULT_LOCUTOR
 from util.misc.tuxPaths import USER_BASE_PATH
+from util.logger.SimpleLogger import *
 
 # Framework events/statuses
 ST_NAME_FW_RUN = "framework_run"
@@ -81,9 +82,19 @@
             'locutor' : locutor,
             'pitch' : pitch,
         }
+        # Create a logger
+        self.logger = SimpleLogger("gadget_framework")
+        self.logger.resetLog()
+        self.logger.setLevel(LOG_LEVEL_DEBUG)
+        self.logger.setTarget(LOG_TARGET_BOTH)
+        self.logger.logInfo("-----------------------------------------------")
+        self.logger.logInfo("Tux Droid Gadget Framework")
+        self.logger.logInfo("Licence : GPL")
+        self.logger.logInfo("-----------------------------------------------")
 
     def stop(self):
         self.getConfigurator().store()
+        self.logger.logInfo("Undeploy the gadgets container")
         self.__gadgetsContainer.undeploy()
         self.__publishEvents(True, ST_NAME_FW_RUN, ["False",])
 
@@ -92,9 +103,11 @@
     # 
--------------------------------------------------------------------------
 
     def __onDirectoryDeployed(self, observerName):
+        self.logger.logInfo("Directory deployed [%s]" % observerName)
         self.__publishEvents(True, ST_NAME_FW_CONTAINER_DEPLOYED, ["True",])
 
     def __onDirectoryUndeployed(self, observerName):
+        self.logger.logInfo("Directory undeployed [%s]" % observerName)
         self.__publishEvents(True, ST_NAME_FW_CONTAINER_DEPLOYED, ["False",])
 
     def __onGadgetDeployed(self, gadget, gadgetWorkingPath):
@@ -119,6 +132,8 @@
         gadget.setOnGadgetTraceCallback(self.__onGadgetTrace)
         gadget.setOnGadgetStartingCallback(self.__onGadgetStarting)
         gadget.setOnGadgetStoppedCallback(self.__onGadgetStopped)
+        self.logger.logDebug("Gadget deployed [%s] to [%s]" % (
+            gadget.getDescription().getName(), gadgetWorkingPath))
         self.__publishEvents(False, ST_NAME_FW_GADGET_LOADED, [uuid,])
 
     def __onGadgetDeploymentError(self, observerName, gadgetFileName, message):
@@ -127,6 +142,8 @@
             gadgetFileName,
             message,
         ]
+        self.logger.logWarning("Gadget deployment error [%s, %s] to (%s)" % (
+            observerName, gadgetFileName, message))
         self.__publishEvents(False, ST_NAME_FW_CONTAINER_ERROR, messagesList)
 
     def __onGadgetUndeployed(self, gadget, gadgetWorkingPath):
@@ -140,6 +157,8 @@
             resourcesManager.removeFileToServe(helpUrl)
         googleGadgetUrl = '/%s/google_gadget_code.txt' % uuid
         resourcesManager.removeFileToServe(googleGadgetUrl)
+        self.logger.logDebug("Gadget deployed [%s] to [%s]" % (
+            gadget.getDescription().getName(), gadgetWorkingPath))
         self.__publishEvents(False, ST_NAME_FW_GADGET_UNLOADED, [uuid,])
 
     # 
--------------------------------------------------------------------------
@@ -153,6 +172,8 @@
         uuid = gadget.getDescription().getUuid()
         locutor = instanceParameters['locutor']
         pitch = instanceParameters['pitch']
+        self.logger.logDebug("Gadget NOTIFICATION [%s] (%s : %s)" % (
+            gadget.getDescription().getName(), messageId, messageStr))
         self.__publishEvents(False, ST_NAME_FW_GADGET_NOTIFICATION, [uuid, "0",
             locutor, pitch, messageId, messageStr])
 
@@ -160,6 +181,8 @@
         uuid = gadget.getDescription().getUuid()
         locutor = instanceParameters['locutor']
         pitch = instanceParameters['pitch']
+        self.logger.logDebug("Gadget MESSAGE [%s] (%s)" % (
+            gadget.getDescription().getName(), message))
         self.__publishEvents(False, ST_NAME_FW_GADGET_MESSAGE, [uuid, "0",
             locutor, pitch, message])
 
@@ -167,6 +190,8 @@
         messageStr = ""
         for message in messagesList:
             messageStr += message
+        self.logger.logError("Gadget ERROR [%s] (%s)" % (
+            gadget.getDescription().getName(), messageStr))
         self.__publishEvents(False, ST_NAME_FW_GADGET_ERROR, [
             gadget.getDescription().getUuid(), "0", messageStr])
 
@@ -174,11 +199,15 @@
         messageStr = ""
         for message in messagesList:
             messageStr += message
+        self.logger.logDebug("Gadget TRACE [%s] (%s)" % (
+            gadget.getDescription().getName(), messageStr))
         self.__publishEvents(False, ST_NAME_FW_GADGET_TRACE, [
             gadget.getDescription().getUuid(), "0", messageStr])
 
     def __onGadgetStarting(self, gadget, instanceParameters):
         uuid = gadget.getDescription().getUuid()
+        self.logger.logInfo("Gadget starting [%s] (%s)" % (
+            gadget.getDescription().getName(), str(instanceParameters)))
         self.__publishEvents(True, ST_NAME_FW_GADGET_STARTING, [uuid, "0"])
 
     def __onGadgetStopped(self, gadget, instanceParameters):
@@ -304,12 +333,17 @@
             resourceGadgetFramework.defaultConfiguration)
         if config['auto-start']:
             gadgetsContainer = resourceGadgetFramework.getGadgetsContainer()
-            for directory in gadgetsContainer.getDirectories():
-                gadgetsContainer.removeDirectory(directory)
+            resourceGadgetFramework.logger.logInfo("Set locales 
[%s:%s:%s:%s]." % (
+                config['language'], config['country'],
+                config['locutor'], config['pitch']))
             gadgetsContainer.setLocales(config['language'], config['country'],
                 config['locutor'], config['pitch'])
+            resourceGadgetFramework.logger.logInfo("Add directory in the 
container [%s]." %\
+                    config['gadgets_path'])
             gadgetsContainer.addDirectory(config['gadgets_path'])
+            resourceGadgetFramework.logger.logInfo("Deploy the gadgets 
container.")
             gadgetsContainer.deploy()
+            resourceGadgetFramework.logger.logInfo("Gadgets container is 
deployed.")
             resourceGadgetFramework.publishEvents(True, ST_NAME_FW_RUN, 
["True",])
 
     def execute(self, id, parameters):
@@ -333,14 +367,25 @@
             gadgetsContainer = resourceGadgetFramework.getGadgetsContainer()
             resourceGadgetFramework.publishEvents(True, ST_NAME_FW_RUN,
                 ["False",])
+            resourceGadgetFramework.logger.logInfo("Undeploy the gadgets 
container.")
             gadgetsContainer.undeploy()
+            resourceGadgetFramework.logger.logInfo("Gadgets container is 
undeployed.")
             for directory in gadgetsContainer.getDirectories():
+                resourceGadgetFramework.logger.logInfo("Remove directory from 
the container [%s]." %\
+                    directory)
                 gadgetsContainer.removeDirectory(directory)
+            resourceGadgetFramework.logger.logInfo("Set locales 
[%s:%s:%s:%s]." % (
+                parameters['language'], parameters['country'],
+                parameters['locutor'], parameters['pitch']))
             gadgetsContainer.setLocales(parameters['language'],
                 parameters['country'], parameters['locutor'],
                 parameters['pitch'])
+            resourceGadgetFramework.logger.logInfo("Add directory in the 
container [%s]." %\
+                    parameters['gadgets_path'])
             gadgetsContainer.addDirectory(parameters['gadgets_path'])
+            resourceGadgetFramework.logger.logInfo("Deploy the gadgets 
container.")
             gadgetsContainer.deploy()
+            resourceGadgetFramework.logger.logInfo("Gadgets container is 
deployed.")
             resourceGadgetFramework.publishEvents(True, ST_NAME_FW_RUN,
                 ["True",])
         return headersStruct, contentStruct

Modified: 
software_suite_v2/tuxware/tuxdroidserver/trunk/resources/03_advanced_api/resourceTestGadgetMessage.py
===================================================================
--- 
software_suite_v2/tuxware/tuxdroidserver/trunk/resources/03_advanced_api/resourceTestGadgetMessage.py
       2009-03-24 10:15:54 UTC (rev 4203)
+++ 
software_suite_v2/tuxware/tuxdroidserver/trunk/resources/03_advanced_api/resourceTestGadgetMessage.py
       2009-03-24 10:17:15 UTC (rev 4204)
@@ -48,16 +48,24 @@
         spl = args[0].split(":")
         gadgetUuid = spl[0]
         def async():
+            def logThis():
+                container = resourceGadgetFramework.getGadgetsContainer()
+                gadget = container.getGadgetByUuid(gadgetUuid)
+                if gadget != None:
+                    resourceGadgetFramework.logger.logInfo(
+                        "Gadget stopped [%s]" % 
gadget.getDescription().getName())
             if not resourceTTS.stackIsFilled(gadgetUuid):
                 time.sleep(0.5)
                 if not resourceTTS.stackIsFilled(gadgetUuid):
                     if not 
eventsHandler.waitCondition(ST_NAME_TTS_STACK_FILLING,
                         (gadgetUuid, None), 10.0):
+                        logThis()
                         self.__publishEvents(True, ST_NAME_FW_GADGET_STOPPED,
                             [gadgetUuid,])
                         return
             eventsHandler.waitCondition(ST_NAME_TTS_STACK_EMPTY, (gadgetUuid,
                 None), 600.0)
+            logThis()
             self.__publishEvents(True, ST_NAME_FW_GADGET_STOPPED, 
[gadgetUuid,])
         t = threading.Thread(target = async)
         t.start()


------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn

Reply via email to