|
From: <sub...@co...> - 2004-06-14 12:51:03
|
Author: ahmedmo
Date: 2004-06-14 04:48:30 -0400 (Mon, 14 Jun 2004)
New Revision: 146
Removed:
trunk/SQLObject/converters.py
Log:
Removed file/folder
Deleted: trunk/SQLObject/converters.py
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/SQLObject/converters.py 2004-06-14 08:48:23 UTC (rev 145)
+++ trunk/SQLObject/converters.py 2004-06-14 08:48:30 UTC (rev 146)
@@ -1,183 +0,0 @@
-try:
- import mx.DateTime.ISO
- origISOStr =3D mx.DateTime.ISO.strGMT
- from mx.DateTime import DateTimeType
-except ImportError:
- try:
- import DateTime.ISO
- origISOStr =3D DateTime.ISO.strGMT
- from DateTime import DateTimeType
- except ImportError:
- origISOStr =3D None
- DateTimeType =3D None
-import time
-try:
- import datetime
-except ImportError:
- datetime =3D None
-
-try:
- import Sybase
- NumericType=3DSybase.NumericType
-except ImportError:
- NumericType =3D None=20
-
-if type(1=3D=3D1) =3D=3D type(1):
- class BOOL(object):
- def __init__(self, value):
- self.value =3D not not value
- def __nonzero__(self):
- return self.value
- def __repr__(self):
- if self:
- return 'TRUE'
- else:
- return 'FALSE'
- TRUE =3D BOOL(1)
- FALSE =3D BOOL(0)
-else:
- TRUE =3D 1=3D=3D1
- FALSE =3D 0=3D=3D1
-
-from types import InstanceType, ClassType, TypeType
-
-########################################
-## Quoting
-########################################
-
-sqlStringReplace =3D [
- ('\\', '\\\\'),
- ("'", "''"),
- ('\000', '\\0'),
- ('\b', '\\b'),
- ('\n', '\\n'),
- ('\r', '\\r'),
- ('\t', '\\t'),
- ]
-
-def isoStr(val):
- """
- Gets rid of time zone information
- (@@: should we convert to GMT?)
- """
- val =3D origISOStr(val)
- if val.find('+') =3D=3D -1:
- return val
- else:
- return val[:val.find('+')]
-
-class ConverterRegistry:
-
- def __init__(self):
- self.basic =3D {}
- self.klass =3D {}
-
- def registerConverter(self, typ, func):
- if type(typ) is ClassType:
- self.klass[typ] =3D func
- else:
- self.basic[typ] =3D func
-
- def lookupConverter(self, value, default=3DNone):
- if type(value) =3D=3D InstanceType:
- # lookup on klasses dict
- return self.klass.get(value.__class__, default)
- return self.basic.get(type(value), default)
- =20
-converters =3D ConverterRegistry()
-registerConverter =3D converters.registerConverter
-lookupConverter =3D converters.lookupConverter
-
-def StringLikeConverter(value, db):
- if db in ('mysql', 'postgres', 'sybase'):
- for orig, repl in sqlStringReplace:
- value =3D value.replace(orig, repl)
- elif db in ('sqlite', 'firebird','maxdb'):
- value =3D value.replace("'", "''")
- else:
- assert 0, "Database %s unknown" % db
- return "'%s'" % value
-
-registerConverter(type(""), StringLikeConverter)
-registerConverter(type(u""), StringLikeConverter)
-
-def IntConverter(value, db):
- return repr(int(value))
-
-registerConverter(type(1), IntConverter)
-registerConverter(type(0L), IntConverter)
-
-if NumericType:
- registerConverter(NumericType, IntConverter)
-
-def BoolConverter(value, db):
- if db in ('postgres',):
- if value:
- return "'t'"
- else:
- return "'f'"
- else:
- if value:
- return '1'
- else:
- return '0'
-
-registerConverter(type(TRUE), BoolConverter)
-
-def FloatConverter(value, db):
- return repr(value)
-
-registerConverter(type(1.0), FloatConverter)
-
-if DateTimeType:
- def DateTimeConverter(value, db):
- return "'%s'" % isoStr(value)
-
- registerConverter(DateTimeType, DateTimeConverter)
-
-def NoneConverter(value, db):
- return "NULL"
-
-registerConverter(type(None), NoneConverter)
-
-def SequenceConverter(value, db):
- return "(%s)" % ", ".join([sqlrepr(v, db) for v in value])
-
-registerConverter(type(()), SequenceConverter)
-registerConverter(type([]), SequenceConverter)
-
-if hasattr(time, 'struct_time'):
- def StructTimeConverter(value, db):
- return time.strftime("'%Y-%m-%d %H:%M:%S'", value)
-
- registerConverter(time.struct_time, StructTimeConverter)
-
-if datetime:
- def DateTimeConverter(value, db):
- return value.strftime("'%Y-%m-%d %H:%M:%s'")
-
- registerConverter(datetime.datetime, DateTimeConverter)
-
- def TimeConverter(value, db):
- return value.strftime("'%H:%M:%s'")
-
- registerConverter(datetime.time, TimeConverter)
-
- def DateConverter(value, db):
- return value.strftime("'%Y-%m-%d'")
-
- registerConverter(datetime.date, DateConverter)
-
-def sqlrepr(obj, db=3DNone):
- try:
- reprFunc =3D obj.__sqlrepr__
- except AttributeError:
- converter =3D lookupConverter(obj)
- if converter is None:
- raise ValueError, "Unknown SQL builtin type: %s for %s" % \
- (type(obj), repr(obj))
- return converter(obj, db)
- else:
- return reprFunc(db)
-
-
|