web/lib/django/contrib/gis/db/backend/util.py
changeset 29 cc9b7e14412b
parent 28 b758351d191f
child 30 239f9bcae806
--- a/web/lib/django/contrib/gis/db/backend/util.py	Wed May 19 17:43:59 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +0,0 @@
-"""
-A collection of utility routines and classes used by the spatial
-backends.
-"""
-
-def getstatusoutput(cmd):
-    """
-    Executes a shell command on the platform using subprocess.Popen and
-    return a tuple of the status and stdout output.
-    """
-    from subprocess import Popen, PIPE
-    # Set stdout and stderr to PIPE because we want to capture stdout and
-    # prevent stderr from displaying.
-    p = Popen(cmd, shell=True, stdout=PIPE, stderr=PIPE)
-    # We use p.communicate() instead of p.wait() to avoid deadlocks if the
-    # output buffers exceed POSIX buffer size.
-    stdout, stderr = p.communicate()
-    return p.returncode, stdout.strip()
-
-def gqn(val):
-    """
-    The geographic quote name function; used for quoting tables and 
-    geometries (they use single rather than the double quotes of the
-    backend quotename function).
-    """
-    if isinstance(val, basestring):
-        if isinstance(val, unicode): val = val.encode('ascii')
-        return "'%s'" % val
-    else:
-        return str(val)
-
-class SpatialOperation(object):
-    """
-    Base class for generating spatial SQL.
-    """
-    def __init__(self, function='', operator='', result='', beg_subst='', end_subst=''):
-        self.function = function
-        self.operator = operator
-        self.result = result
-        self.beg_subst = beg_subst
-        try:
-            # Try and put the operator and result into to the
-            # end substitution.
-            self.end_subst = end_subst % (operator, result)
-        except TypeError:
-            self.end_subst = end_subst
-
-    @property
-    def sql_subst(self):
-        return ''.join([self.beg_subst, self.end_subst])
-
-    def as_sql(self, geo_col):
-        return self.sql_subst % self.params(geo_col)
-
-    def params(self, geo_col):
-        return (geo_col, self.operator)
-
-class SpatialFunction(SpatialOperation):
-    """
-    Base class for generating spatial SQL related to a function.
-    """
-    def __init__(self, func, beg_subst='%s(%s, %%s', end_subst=')', result='', operator=''):
-        # Getting the function prefix.
-        kwargs = {'function' : func, 'operator' : operator, 'result' : result,
-                  'beg_subst' : beg_subst, 'end_subst' : end_subst,}
-        super(SpatialFunction, self).__init__(**kwargs)
-
-    def params(self, geo_col):
-        return (self.function, geo_col)