Exemplo n.º 1
0
 def call_dbg(self, msg):
     from mpi4py import MPI
     comm = MPI.COMM_WORLD
     size = comm.Get_size()
     rank = comm.Get_rank()
     wpsLog.debug( "\n\n -------------< %s >-------------- MPI proc %d of %d (%x):" % ( msg, rank, size, os.getpid() ) )
     wpsLog.debug( repr(traceback.format_stack()) + "\n\n" )
Exemplo n.º 2
0
 def getInstance(self, key):
     instance = self._instances.get(key, None)
     if instance is None:
         constructor = self._registry.get(key, None)
         wpsLog.debug("  Using %s '%s': %s " % (self.name, key, str(type(constructor))))
         instance = constructor(key)
         self._instances[key] = instance
     return instance
Exemplo n.º 3
0
    def __init__( self, name, directory, package_path ):
        wpsLog.debug( "Init '%s' Module Registry:  dir='%s' package='%s'" % ( name, directory, package_path ) )
        self.name = name
        self._registry = {}
        subdirs = [ o for o in os.listdir(directory) if os.path.isdir(os.path.join(directory,o)) ]

        for modulename in subdirs:
            try:
                module = importlib.import_module( "."+modulename, package_path )
                if hasattr( module, 'getConstructor' ):
                    constructor = module.getConstructor()
                    self._registry[modulename] = constructor
                    wpsLog.debug( "Registering %s '%s'" % ( self.name, modulename ) )
            except Exception:
                wpsLog.warning( "\n --------------- Error Registering %s '%s' --------------- \n %s" % ( self.name, modulename, traceback.format_exc() ) )
Exemplo n.º 4
0
 def getInstance( self, key  ):
     constructor = self._registry.get( key, None )
     wpsLog.debug( "  Using %s '%s': %s " % ( self.name, key, str(type(constructor)) ) )
     return constructor(key)