changeset 276:a00e87d48213

bridge, bridge constructor: fixed mix stuff
author Goffi <goffi@goffi.org>
date Sun, 30 Jan 2011 22:54:58 +0100
parents 01a0bd6e7fae
children 05caa87196e6
files frontends/src/bridge/DBus.py frontends/src/primitivus/primitivus frontends/src/wix/chat.py src/bridge/bridge_constructor/bridge_contructor.py src/bridge/bridge_constructor/bridge_template.ini src/sat.tac src/tools/memory.py
diffstat 7 files changed, 19 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/frontends/src/bridge/DBus.py	Tue Jan 25 16:39:27 2011 +0100
+++ b/frontends/src/bridge/DBus.py	Sun Jan 30 22:54:58 2011 +0100
@@ -55,7 +55,7 @@
 
     def callMenu(self, category, name, menu_type, profile_key):
         debug ("callMenu")
-        return self.db_req_iface.callMenu(category, name, menu_type, profile_key)
+        return unicode(self.db_req_iface.callMenu(category, name, menu_type, profile_key))
 
     def confirmationAnswer(self, id, accepted, data):
         debug ("confirmationAnswer")
@@ -91,7 +91,7 @@
 
     def getMenuHelp(self, category, name, menu_type):
         debug ("getMenuHelp")
-        return self.db_req_iface.getMenuHelp(category, name, menu_type)
+        return unicode(self.db_req_iface.getMenuHelp(category, name, menu_type))
 
     def getMenus(self, ):
         debug ("getMenus")
@@ -99,11 +99,11 @@
 
     def getParamA(self, name, category, attribute="value", profile_key="@DEFAULT@"):
         debug ("getParamA")
-        return self.db_comm_iface.getParamA(name, category, attribute, profile_key)
+        return unicode(self.db_comm_iface.getParamA(name, category, attribute, profile_key))
 
     def getParams(self, profile_key="@DEFAULT@"):
         debug ("getParams")
-        return self.db_comm_iface.getParams(profile_key)
+        return unicode(self.db_comm_iface.getParams(profile_key))
 
     def getParamsCategories(self, ):
         debug ("getParamsCategories")
@@ -111,11 +111,11 @@
 
     def getParamsForCategory(self, category, profile_key="@DEFAULT@"):
         debug ("getParamsForCategory")
-        return self.db_comm_iface.getParamsForCategory(category, profile_key)
+        return unicode(self.db_comm_iface.getParamsForCategory(category, profile_key))
 
     def getParamsUI(self, profile_key="@DEFAULT@"):
         debug ("getParamsUI")
-        return self.db_comm_iface.getParamsUI(profile_key)
+        return unicode(self.db_comm_iface.getParamsUI(profile_key))
 
     def getPresenceStatus(self, profile_key="@DEFAULT@"):
         debug ("getPresenceStatus")
@@ -123,7 +123,7 @@
 
     def getProfileName(self, profile_key="@DEFAULT@"):
         debug ("getProfileName")
-        return self.db_req_iface.getProfileName(profile_key)
+        return unicode(self.db_req_iface.getProfileName(profile_key))
 
     def getProfilesList(self, ):
         debug ("getProfilesList")
@@ -135,7 +135,7 @@
 
     def getVersion(self, ):
         debug ("getVersion")
-        return self.db_req_iface.getVersion()
+        return unicode(self.db_req_iface.getVersion())
 
     def getWaitingSub(self, profile_key="@DEFAULT@"):
         debug ("getWaitingSub")
@@ -147,11 +147,11 @@
 
     def launchAction(self, action_type, data, profile_key="@DEFAULT@"):
         debug ("launchAction")
-        return self.db_req_iface.launchAction(action_type, data, profile_key)
+        return unicode(self.db_req_iface.launchAction(action_type, data, profile_key))
 
     def registerNewAccount(self, login, password, host, port=5222):
         debug ("registerNewAccount")
-        return self.db_comm_iface.registerNewAccount(login, password, host, port)
+        return unicode(self.db_comm_iface.registerNewAccount(login, password, host, port))
 
     def sendMessage(self, to_jid, message, subject='', mess_type="chat", profile_key="@DEFAULT@"):
         debug ("sendMessage")
--- a/frontends/src/primitivus/primitivus	Tue Jan 25 16:39:27 2011 +0100
+++ b/frontends/src/primitivus/primitivus	Sun Jan 30 22:54:58 2011 +0100
@@ -330,7 +330,7 @@
             chat = self.chat_wins[contact]
             self.bridge.sendMessage(contact,
                                     editBar.get_edit_text(),
-                                    type = "groupchat" if chat.type == 'group' else "chat",
+                                    mess_type = "groupchat" if chat.type == 'group' else "chat",
                                     profile_key=self.profile)
             editBar.set_edit_text('')
 
--- a/frontends/src/wix/chat.py	Tue Jan 25 16:39:27 2011 +0100
+++ b/frontends/src/wix/chat.py	Sun Jan 30 22:54:58 2011 +0100
@@ -194,7 +194,7 @@
         """Behaviour when enter pressed in send line."""
         self.host.bridge.sendMessage(self.target.short if self.type=='group' else self.target,
                                      event.GetString(), 
-                                     type = "groupchat" if self.type=='group' else "chat",
+                                     mess_type = "groupchat" if self.type=='group' else "chat",
                                      profile_key=self.host.profile)
         self.textBox.Clear()
 
--- a/src/bridge/bridge_constructor/bridge_contructor.py	Tue Jan 25 16:39:27 2011 +0100
+++ b/src/bridge/bridge_constructor/bridge_contructor.py	Sun Jan 30 22:54:58 2011 +0100
@@ -407,9 +407,11 @@
             if function["type"] == "method":
                 completion['debug'] = "" if not self.options.debug else 'debug ("%s")\n%s' % (section,8*' ')
                 completion['args_result'] = self.getArguments(function['sig_in'], name=arg_doc)
+                result = "self.db_%(category)s_iface.%(name)s(%(args_result)s)" % completion
+                completion['result'] = ("unicode(%s)" if self.options.unicode and function['sig_out'] == 's' else "%s") % result
                 methods_part.append("""\
     def %(name)s(self, %(args)s):
-        %(debug)sreturn self.db_%(category)s_iface.%(name)s(%(args_result)s)
+        %(debug)sreturn %(result)s
 """ % completion)
 
         #at this point, methods_part should be filled,
--- a/src/bridge/bridge_constructor/bridge_template.ini	Tue Jan 25 16:39:27 2011 +0100
+++ b/src/bridge/bridge_constructor/bridge_template.ini	Sun Jan 30 22:54:58 2011 +0100
@@ -161,6 +161,7 @@
 param_0_default="@DEFAULT@"
 doc=Get real profile name from profile key
 doc_param_0=%(doc_profile_key)s
+doc_return=Real profile name, or empty string if the profile doesn't exist
 
 [getProfilesList]
 type=method
--- a/src/sat.tac	Tue Jan 25 16:39:27 2011 +0100
+++ b/src/sat.tac	Sun Jan 30 22:54:58 2011 +0100
@@ -141,7 +141,7 @@
       for e in message.elements():
         if e.name == "body":
           mess_type = message['type'] if message.hasAttribute('type') else 'normal'
-          self.host.bridge.newMessage(message["from"], e.children[0], mess_type, profile=self.parent.profile)
+          self.host.bridge.newMessage(message["from"], e.children[0], mess_type, message['to'], profile=self.parent.profile)
           self.host.memory.addToHistory(self.parent.jid, jid.JID(message["from"]), self.parent.jid, "chat", e.children[0])
           break
     
@@ -616,7 +616,7 @@
         self.profiles[profile].xmlstream.send(message)
         self.memory.addToHistory(current_jid, current_jid, jid.JID(to), message["type"], unicode(msg))
         if type!="groupchat":
-            self.bridge.newMessage(message['from'], unicode(msg), to=message['to'], type=type, profile=profile) #We send back the message, so all clients are aware of it
+            self.bridge.newMessage(message['from'], unicode(msg), mess_type=type, to_jid=message['to'], profile=profile) #We send back the message, so all clients are aware of it
 
 
     def setPresence(self, to="", show="", priority = 0, statuses={}, profile_key='@DEFAULT@'):
--- a/src/tools/memory.py	Tue Jan 25 16:39:27 2011 +0100
+++ b/src/tools/memory.py	Sun Jan 30 22:54:58 2011 +0100
@@ -244,7 +244,7 @@
         profile = self.getProfileName(profile_key)
         if not profile:
             error(_('Requesting a param for an non-existant profile'))
-            return None
+            return ""
 
         if attr == "value": 
             return self.__getParam(profile, category, name) or node[1].getAttribute(attr)