[Top][All Lists]
[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
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- r5377 - trunk/gnue-common/src/rpc/drivers/xmlrpc/py_xmlrpc,
reinhard <=