Пример #1
0
    def load_module(self, name, stuff):
        module = ModuleLoader.load_module(self, name, stuff)
        file, filename, info = stuff

        if filename and not isdir(filename):
            last = getmtime(filename)
            self.mod_info[name] = (stuff, last)

        return module
Пример #2
0
        def find_module_in_dir(self, name, dir, allow_packages=1):
            ModuleLoader = self.__class__.__bases__[0]
            stuff = ModuleLoader.find_module_in_dir(self, name, dir, allow_packages)
            if stuff:
                #print 'standard module loader worked'
                return stuff
            else:
                if dir:
                    prepFileName = dir + os.sep + name + '.prep'
                else:
                    prepFileName = name + '.prep'

                if os.path.isfile(prepFileName):
                    #compile WITHOUT IMPORTING to avoid triggering recursion
                    mod = compileModule(prepFileName, verbose=0, importModule=0)
                    #now use the default...
                    return ModuleLoader.find_module_in_dir(self, name, dir, allow_packages)
                else:
                    return None
Пример #3
0
 def _reload(self, name, stuff):
     try:
         file, filename, info = stuff            
         stuff = (open(filename), filename, info)
         module = ModuleLoader.load_module(self, name, stuff)
         modules[name] = module
         self.notify(module)
     except ImportError, msg:
         stderr.write("could not reloaded module '%s'. See the following exception:\n\n" % name)
         #print_exc()
         print msg
         stderr.flush()
Пример #4
0
    def load_module(self, name, stuff):
	file, filename, info = stuff
	suff, mode, type = info
	if type == 'PACKAGE':
	    return self.load_package(name, stuff)
	if sys.modules.has_key(name):
	    m = sys.modules[name]
	else:
	    sys.modules[name] = m = imp.new_module(name)
	self.set_parent(m)
	if type == imp.C_EXTENSION and '.' in name:
	    return self.load_dynamic(name, stuff)
	else:
	    return ModuleLoader.load_module(self, name, stuff)
Пример #5
0
 def load_module(self, name, stuff):
     file, filename, info = stuff
     suff, mode, type = info
     if type == 'PACKAGE':
         return self.load_package(name, stuff)
     if sys.modules.has_key(name):
         m = sys.modules[name]
     else:
         sys.modules[name] = m = imp.new_module(name)
     self.set_parent(m)
     if type == imp.C_EXTENSION and '.' in name:
         return self.load_dynamic(name, stuff)
     else:
         return ModuleLoader.load_module(self, name, stuff)
Пример #6
0
        def find_module_in_dir(self, name, dir, allow_packages=1):
            ModuleLoader = self.__class__.__bases__[0]
            stuff = ModuleLoader.find_module_in_dir(self, name, dir,
                                                    allow_packages)
            if stuff:
                #print 'standard module loader worked'
                return stuff
            else:
                if dir:
                    prepFileName = dir + os.sep + name + '.prep'
                else:
                    prepFileName = name + '.prep'

                if os.path.isfile(prepFileName):
                    #compile WITHOUT IMPORTING to avoid triggering recursion
                    mod = compileModule(prepFileName,
                                        verbose=0,
                                        importModule=0)
                    #now use the default...
                    return ModuleLoader.find_module_in_dir(
                        self, name, dir, allow_packages)
                else:
                    return None
Пример #7
0
 def find_module(self, name, path = None):
     stuff = ModuleLoader.find_module(self, name, path)
     if stuff:
         return stuff
     if path:
         return
     
     if self.verbose: print "looking for: ", name, path            
     for base in url_path:
         url = urljoin(base, name + ".py")
         try:
             file = urlopen(url)
             name = tempfile.mktemp()            
             stream = open(name, 'wb')
             stream.write(file.read())
             stream.close
             file = open(name, 'r')
             return file, url, ('.py', 'r', 1)
         except HTTPError, he:
             print "Did not find: ", url
             print he
Пример #8
0
    def find_module_in_dir(self, name, dir):
	if dir is not None:
	    dirname = self.hooks.path_join(dir, name)
	    if self.hooks.path_isdir(dirname):
		return None, dirname, ('', '', 'PACKAGE')
	return ModuleLoader.find_module_in_dir(self, name, dir)
Пример #9
0
"""New import scheme with package support.
Пример #10
0
 def find_module_in_dir(self, name, dir):
     if dir is not None:
         dirname = self.hooks.path_join(dir, name)
         if self.hooks.path_isdir(dirname):
             return None, dirname, ('', '', 'PACKAGE')
     return ModuleLoader.find_module_in_dir(self, name, dir)
Пример #11
0
 def __init__(self):
     ModuleLoader.__init__(self)
     self.importing_modules = {}
     self.mod_info = {}
     self._start()
Пример #12
0
"""New import scheme with package support.