commit-gnue
[Top][All Lists]
Advanced

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

r5377 - trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc


From: reinhard
Subject: r5377 - trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc
Date: Fri, 19 Mar 2004 11:01:00 -0600 (CST)

Author: reinhard
Date: 2004-03-19 11:00:58 -0600 (Fri, 19 Mar 2004)
New Revision: 5377

Modified:
   trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc/typeconv.py
Log:
Pass 1/1/1 over RPC as 1/1/9999, because py_xmlrpc doesn't accept 1/1/1 as
date value.


Modified: trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc/typeconv.py
===================================================================
--- trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc/typeconv.py      
2004-03-19 14:17:12 UTC (rev 5376)
+++ trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc/typeconv.py      
2004-03-19 17:00:58 UTC (rev 5377)
@@ -49,9 +49,16 @@
 
   # Date/Time
   elif isinstance (value, mx.DateTime.DateTimeType):
-    return xmlrpc.dateTime (value.year, value.month, value.day, value.hour,
-                            value.minute, int (value.second))
+    # mx.DateTime uses date 1/1/1 for time-only values. py_xmlrpc doesn't like
+    # that.
+    y = value.year
+    m = value.month
+    d = value.day
+    if (y, m, d) == (1, 1, 1): (y, m, d) = (9999, 1, 1)
 
+    return xmlrpc.dateTime (y, m, d, value.hour, value.minute,
+                            int (value.second))
+
   # Boolean
   elif hasattr (types, 'BooleanType') and \
        isinstance (value, types.BooleanType):
@@ -103,6 +110,8 @@
   # Date/Time
   elif type (value) == type (xmlrpc.dateTime (1999, 12, 31, 23, 59, 59)):
     (year, month, day, hour, minute, second) = value.date ()
+    # 1/1/1 (i.e. time without date) is transported as 1/1/9999
+    if (year, month, day) == (9999, 1, 1): (year, month, day) = (1, 1, 1)
     return mx.DateTime.DateTime (year, month, day, hour, minute, second)
 
   # Boolean





reply via email to

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