[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnue] r6941 - trunk/gnue-appserver/src
From: |
johannes |
Subject: |
[gnue] r6941 - trunk/gnue-appserver/src |
Date: |
Wed, 2 Feb 2005 13:39:00 -0600 (CST) |
Author: johannes
Date: 2005-02-02 13:38:59 -0600 (Wed, 02 Feb 2005)
New Revision: 6941
Modified:
trunk/gnue-appserver/src/geasGsdGen.py
Log:
Add support for python's datetime types
Modified: trunk/gnue-appserver/src/geasGsdGen.py
===================================================================
--- trunk/gnue-appserver/src/geasGsdGen.py 2005-02-02 19:10:52 UTC (rev
6940)
+++ trunk/gnue-appserver/src/geasGsdGen.py 2005-02-02 19:38:59 UTC (rev
6941)
@@ -27,6 +27,9 @@
import string
import mx.DateTime
+if sys.version_info [:2] >= (2, 3):
+ import datetime
+
from gnue.common.apps import i18n, errors
from gnue.common.schema import Objects
from gnue.common.apps.GClientApp import *
@@ -51,7 +54,10 @@
msg = u_("The class '%s' contains circular data-references") % classname
errors.UserError.__init__ (self, msg)
+class ValueError (errors.SystemError):
+ pass
+
# =============================================================================
# Generate GNUe Schema Definition files
# =============================================================================
@@ -315,6 +321,7 @@
'datatype'.
"""
+ print "NATIVE:", repr (native)
if datatype [:6] == "string" or datatype == "id":
checktype (native, [types.NoneType, types.UnicodeType])
@@ -338,6 +345,10 @@
if isinstance (native, mx.DateTime.DateTimeType):
return native.date
+ elif sys.version_info [:2] >= (2, 3) and \
+ isinstance (native, datetime.date):
+ return native.isoformat ()
+
else:
raise ValueError, u_("%s is not a valid date object") % repr (native)
@@ -349,6 +360,14 @@
elif isinstance (native, mx.DateTime.DateTimeDeltaType):
return str (native)
+ elif sys.version_info [:2] >= (2, 3) and \
+ isinstance (native, datetime.time):
+ return native.isoformat ()
+
+ elif sys.version_info [:2] >= (2, 3) and \
+ isinstance (native, datetime.timedelta):
+ return "%s" % native
+
else:
raise ValueError, u_("%s is not a valid time object") % repr (native)
@@ -357,6 +376,10 @@
if isinstance (native, mx.DateTime.DateTimeType):
return str (native)
+ elif sys.version_info [:2] >= (2, 3) and \
+ isinstance (native, datetime.datetime):
+ return native.isoformat ()
+
else:
raise ValueError, \
u_("%s is not a valid datetime object") % repr (native)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnue] r6941 - trunk/gnue-appserver/src,
johannes <=