commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnue] r7017 - in trunk: gnue-appserver/src gnue-common/src/datasources/


From: reinhard
Subject: [gnue] r7017 - in trunk: gnue-appserver/src gnue-common/src/datasources/drivers/appserver/appserver gnue-common/src/rpc/drivers/xmlrpc/pw_xmlrpc gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc
Date: Sat, 12 Feb 2005 16:45:06 -0600 (CST)

Author: reinhard
Date: 2005-02-12 16:45:04 -0600 (Sat, 12 Feb 2005)
New Revision: 7017

Modified:
   trunk/gnue-appserver/src/geasInstance.py
   trunk/gnue-common/src/datasources/drivers/appserver/appserver/Connection.py
   trunk/gnue-common/src/rpc/drivers/xmlrpc/pw_xmlrpc/typeconv.py
   trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc/typeconv.py
Log:
Fixed RPC to Python conversion for dictionaries, and fixed some other bugs that
were obscured by this one.


Modified: trunk/gnue-appserver/src/geasInstance.py
===================================================================
--- trunk/gnue-appserver/src/geasInstance.py    2005-02-12 12:11:44 UTC (rev 
7016)
+++ trunk/gnue-appserver/src/geasInstance.py    2005-02-12 22:45:04 UTC (rev 
7017)
@@ -314,14 +314,13 @@
     obj = Object.Object (sess, self.__classdef.fullName,
                          self.__getValue (u'gnue_id'))
 
-    # check the parameters
+    # check and convert the parameters
+    parameters = {}
     if params is not None:
-      for parameter in params.keys ():
-        paramDef = proceduredef.parameters [parameter]
-        params [parameter] = self.__convert (params [parameter], paramDef,
-                                             ParameterValueError)
-    else:
-      params = {}
+      for name in [x.encode ('ascii') for x in params.keys ()]:
+        paramDef = proceduredef.parameters [name]
+        parameters [name] = self.__convert (params [name], paramDef,
+                                            ParameterValueError)
 
     engine = getLanguageAdapter (proceduredef.gnue_language)
 
@@ -356,8 +355,8 @@
     sess.setcontext (proceduredef.module.gnue_name)
 
     method = cx.buildFunction (proceduredef.gnue_name, proceduredef.gnue_code,
-                               params)
-    result = method (**params)
+                               parameters)
+    result = method (**parameters)
     if (proceduredef.gnue_type is None) != (result is None):
       if result is not None or not proceduredef.gnue_nullable:
         raise ResultTypeError, (proceduredef.fullName, proceduredef.gnue_type,

Modified: 
trunk/gnue-common/src/datasources/drivers/appserver/appserver/Connection.py
===================================================================
--- trunk/gnue-common/src/datasources/drivers/appserver/appserver/Connection.py 
2005-02-12 12:11:44 UTC (rev 7016)
+++ trunk/gnue-common/src/datasources/drivers/appserver/appserver/Connection.py 
2005-02-12 22:45:04 UTC (rev 7017)
@@ -194,7 +194,7 @@
           continue
 
         if item [2] is None:
-          masterkey = ''
+          masterkey = None
         else:
           masterkey = connectData [item [2]]
 

Modified: trunk/gnue-common/src/rpc/drivers/xmlrpc/pw_xmlrpc/typeconv.py
===================================================================
--- trunk/gnue-common/src/rpc/drivers/xmlrpc/pw_xmlrpc/typeconv.py      
2005-02-12 12:11:44 UTC (rev 7016)
+++ trunk/gnue-common/src/rpc/drivers/xmlrpc/pw_xmlrpc/typeconv.py      
2005-02-12 22:45:04 UTC (rev 7017)
@@ -139,7 +139,7 @@
   elif isinstance (value, types.DictionaryType):
     result = {}
     for (key, val) in value.items ():
-      result [python_to_rpc (key, exception)] = python_to_rpc (val, exception)
+      result [rpc_to_python (key, exception)] = rpc_to_python (val, exception)
     return result
 
   else:

Modified: trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc/typeconv.py
===================================================================
--- trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc/typeconv.py      
2005-02-12 12:11:44 UTC (rev 7016)
+++ trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc/typeconv.py      
2005-02-12 22:45:04 UTC (rev 7017)
@@ -136,7 +136,7 @@
   elif isinstance (value, types.DictionaryType):
     result = {}
     for (key, val) in value.items ():
-      result [python_to_rpc (key, exception)] = python_to_rpc (val, exception)
+      result [rpc_to_python (key, exception)] = rpc_to_python (val, exception)
     return result
 
   else:





reply via email to

[Prev in Thread] Current Thread [Next in Thread]