commit-gnue
[Top][All Lists]
Advanced

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

gnue designer/templates/__init__.py gnue-common...


From: Jason Cater
Subject: gnue designer/templates/__init__.py gnue-common...
Date: Mon, 05 Nov 2001 14:32:53 -0500

CVSROOT:        /home/cvs
Module name:    gnue
Changes by:     Jason Cater <address@hidden>    01/11/05 14:32:53

Modified files:
        designer/templates: __init__.py 
        gnue-common/src: GComm.py GConnections.py __init__.py 
        gnue-common/src/dbdrivers: factory.py 
        gnue-common/src/dbdrivers/odbc: DBdriver.py 

Log message:
        fixed cross-platform issue with __import__

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/templates/__init__.py.diff?cvsroot=OldCVS&tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/GComm.py.diff?cvsroot=OldCVS&tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/GConnections.py.diff?cvsroot=OldCVS&tr1=1.22&tr2=1.23&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/__init__.py.diff?cvsroot=OldCVS&tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/factory.py.diff?cvsroot=OldCVS&tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/odbc/DBdriver.py.diff?cvsroot=OldCVS&tr1=1.7&tr2=1.8&r1=text&r2=text

Patches:
Index: gnue/designer/templates/__init__.py
diff -u gnue/designer/templates/__init__.py:1.3 
gnue/designer/templates/__init__.py:1.4
--- gnue/designer/templates/__init__.py:1.3     Sun Oct  7 15:07:24 2001
+++ gnue/designer/templates/__init__.py Mon Nov  5 14:32:53 2001
@@ -28,6 +28,7 @@
 #
 
 import os, string, dircache
+from gnue.common import dyn_import
 
 #################################################################
 #
@@ -43,7 +44,7 @@
   for dir in dircache.listdir(basedir):
     if os.path.isdir(os.path.join(basedir, dir)):
       try:
-        packages.append(__import__('gnue/designer/templates/%s' %dir))
+        packages.append(dyn_import('gnue.designer.templates.%s' %dir))
       except ImportError:
         pass
   return packages
@@ -63,13 +64,14 @@
                   # is Simple) This will keep us from importing Simple
                   # three times if Simple.py, Simple.pyc, and Simple.lib
                   # all exist.
+
   for dir in dircache.listdir(basedir):
     base = string.split(dir,'.')[0]
     if not dir[0] in ('.','_') and not base in processed:
       processed.append(base)
       try:
-        templates.append(__import__(
-           '%s/%s' % (package.__name__,base)).TemplateInformation)
+        templates.append(dyn_import(
+           '%s.%s' % (package.__name__,base)).TemplateInformation)
       except ImportError:
         pass
   return templates
Index: gnue/gnue-common/src/GComm.py
diff -u gnue/gnue-common/src/GComm.py:1.5 gnue/gnue-common/src/GComm.py:1.6
--- gnue/gnue-common/src/GComm.py:1.5   Sun Nov  4 13:36:32 2001
+++ gnue/gnue-common/src/GComm.py       Mon Nov  5 14:32:53 2001
@@ -34,7 +34,7 @@
 #
 def attach(interface, params):
   try:
-    driver = __import__('gnue/common/commdrivers/%s' % interface)
+    driver = dyn_import('gnue.common.commdrivers.%s' % interface)
   except ImportError, mesg:
     GDebug.printMesg(1, \
        "Unable to import GComm Adapter '%s': \n%s" % (driver,mesg))
Index: gnue/gnue-common/src/GConnections.py
diff -u gnue/gnue-common/src/GConnections.py:1.22 
gnue/gnue-common/src/GConnections.py:1.23
--- gnue/gnue-common/src/GConnections.py:1.22   Sun Nov  4 18:25:02 2001
+++ gnue/gnue-common/src/GConnections.py        Mon Nov  5 14:32:53 2001
@@ -35,7 +35,7 @@
 import GDebug
 import GDataObjects
 import GLoginHandler
-from gnue.common import openResource
+from gnue.common import openResource, dyn_import
 
 class Error(StandardError):
   # Base error
@@ -216,7 +216,7 @@
 #
 def _load_dbdriver(driver, type, connectionManager):
   try:
-    dbdriver = __import__("gnue/common/dbdrivers/%s/DBdriver" % (driver))
+    dbdriver = dyn_import("gnue.common.dbdrivers.%s" % (driver))
   except ImportError, err:
     GDebug.printMesg(1,'ImportError importing driver %s' % (driver))
     GDebug.printMesg(1,err)
Index: gnue/gnue-common/src/__init__.py
diff -u gnue/gnue-common/src/__init__.py:1.4 
gnue/gnue-common/src/__init__.py:1.5
--- gnue/gnue-common/src/__init__.py:1.4        Mon Jun 25 15:27:46 2001
+++ gnue/gnue-common/src/__init__.py    Mon Nov  5 14:32:53 2001
@@ -32,8 +32,8 @@
 
 import os
 import urllib
+import string
 
-
 #
 # Open a file or URL resource, 
 # properly handling drive letters.
@@ -44,4 +44,18 @@
     return open(resource,'r')
   else:
     return urllib.urlopen(resource)
+
+
+#
+# Dynamically import a python module
+#
+import string
+
+def dyn_import(name):
+    mod = __import__(name)
+    components = string.split(name, '.')
+    for comp in components[1:]:
+        mod = getattr(mod, comp)
+    return mod
+
 
Index: gnue/gnue-common/src/dbdrivers/factory.py
diff -u gnue/gnue-common/src/dbdrivers/factory.py:1.1 
gnue/gnue-common/src/dbdrivers/factory.py:1.2
--- gnue/gnue-common/src/dbdrivers/factory.py:1.1       Sun Apr 15 21:33:50 2001
+++ gnue/gnue-common/src/dbdrivers/factory.py   Mon Nov  5 14:32:53 2001
@@ -23,6 +23,7 @@
 import string
 import sys
 import os
+from gnue.common import dyn_import
 
 class factory:
     def create(self, driver):
@@ -31,7 +32,7 @@
         if sys.platform == 'win32':
           os.putenv('PYTHONCASEOK','1')
 
-        DBdriver = __import__("gnue/common/dbdrivers/%s" % 
(driver[0])).DBdriver()
+        DBdriver = dyn_import("gnue.common.dbdrivers.%s" % 
(driver[0])).DBdriver()
 
         if driver[0] == "odbc":
             # call the ODBC driver loadDriver method to properly load
Index: gnue/gnue-common/src/dbdrivers/odbc/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/odbc/DBdriver.py:1.7 
gnue/gnue-common/src/dbdrivers/odbc/DBdriver.py:1.8
--- gnue/gnue-common/src/dbdrivers/odbc/DBdriver.py:1.7 Sun Nov  4 18:25:02 2001
+++ gnue/gnue-common/src/dbdrivers/odbc/DBdriver.py     Mon Nov  5 14:32:53 2001
@@ -38,7 +38,7 @@
 
 
 import sys, string
-from gnue.common import GDebug, GDataObjects, GConnections
+from gnue.common import GDebug, GDataObjects, GConnections, dyn_import
 from gnue.common.dbdrivers._dbsig.DBdriver \
    import DBSIG_RecordSet, DBSIG_ResultSet, DBSIG_DataObject, \
           DBSIG_DataObject_SQL, DBSIG_DataObject_Object
@@ -75,7 +75,7 @@
     GDebug.printMesg(1,"ODBC database driver initializing")
     try:
       backend, dsn = string.split(connectData['service'],'|',1)
-      self._backend = __import__("mx/ODBC/%s" % backend)
+      self._backend = dyn_import("mx.ODBC.%s" % backend)
       self._DatabaseError = self._backend.DatabaseError
     except ValueError:
       raise GDataObjects.ConnectionError, \



reply via email to

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