Code

making it easier to add new actions, and more docco
[roundup.git] / roundup / instance.py
index 77dbb26dcf6013cb5826b8911f3e6c2e6ab51b6a..fb98b76537d1f9199f1efe93a0b1263763e35266 100644 (file)
 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
 # 
-# $Id: instance.py,v 1.3 2001-08-07 00:24:42 richard Exp $
+# $Id: instance.py,v 1.6 2002-09-10 00:18:20 richard Exp $
 
-''' Currently this module provides one function: open. This function opens
+__doc__ = '''
+Instance handling (open instance).
+
+Currently this module provides one function: open. This function opens
 an instance.
 '''
 
-import imp
+import imp, os
 
 class Opener:
     def __init__(self):
@@ -29,6 +32,12 @@ class Opener:
         self.instances = {}
 
     def open(self, instance_home):
+        '''Open the instance.
+
+        Raise ValueError if the instance home doesn't exist.
+        '''
+        if not os.path.exists(instance_home):
+            raise ValueError, 'no such directory: "%s"'%instance_home
         if self.instances.has_key(instance_home):
             return imp.load_package(self.instances[instance_home],
                 instance_home)
@@ -44,16 +53,4 @@ del Opener
 del opener
 
 
-#
-# $Log: not supported by cvs2svn $
-# Revision 1.2  2001/08/07 00:15:51  richard
-# Added the copyright/license notice to (nearly) all files at request of
-# Bizar Software.
-#
-# Revision 1.1  2001/08/05 07:43:52  richard
-# Instances are now opened by a special function that generates a unique
-# module name for the instances on import time.
-#
-#
-#
 # vim: set filetype=python ts=4 sw=4 et si