/[circus]/circus/circus/circus.py
ViewVC logotype

Diff of /circus/circus/circus.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.16 by tvon, Sun Nov 17 03:26:20 2002 UTC revision 1.17 by tvon, Sun Nov 17 04:04:19 2002 UTC
# Line 125  class Ringmaster: Line 125  class Ringmaster:
125    
126    
127      def _import_name(self, modulename, name):      def _import_name(self, modulename, name):
128          """Used as:          """Utility method to dynamically import modules.
129            
130            Works like:
131              from <modulename> import <name>              from <modulename> import <name>
132          """          """
133    
# Line 148  class Ringmaster: Line 150  class Ringmaster:
150                which in turn calls the load() method (overloaded by child)                which in turn calls the load() method (overloaded by child)
151          """          """
152                    
153            # Wrap this in a try statement in case the module dosent exist.
154          # Load the module          # Load the module
155          Module = self._import_name("Circus" + module_name + "." +          Module = self._import_name("Circus" + module_name + "." +
156              string.lower(module_name), "MyModule")              string.lower(module_name), "MyModule")
157                    
         #if not Module:  
         #    print "AH FUCK"  
158    
159          # Add it to our modules          # Add it to our modules
160          self.modules.setdefault(module_name, Module())          try:
161                self.modules.setdefault(module_name, Module())
         # Add module name to events list, so we know what it wants to know about  
         for e in self.modules[module_name].my_events:  
             try:  
                 self.module_events[e].append(module_name)  
             except KeyError:  
                 self.module_events[e] = [module_name]  
           
         self.modules[module_name].__name__ = module_name  
         self.modules[module_name]._load(self.config, self.display)  
162    
163                # Add module name to events list, so we know what it wants to
164                # know about
165                for e in self.modules[module_name].my_events:
166                    try:
167                        self.module_events[e].append(module_name)
168                    except KeyError:
169                        self.module_events[e] = [module_name]
170                
171                self.modules[module_name].__name__ = module_name
172                self.modules[module_name]._load(self.config, self.display)
173            except Exception:
174                sys.stderr.write("Module '" + module_name + "' failed to load\n")
175    
176      def unload_module(self, module_name):      def unload_module(self, module_name):
177          self.modules[module_name]._unload()          self.modules[module_name]._unload()

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.17

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26