Python twisted.python.reflect.namedObject() Examples
The following are 21
code examples of twisted.python.reflect.namedObject().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
twisted.python.reflect
, or try the search function
.
Example #1
Source File: worker.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def _buildFailure(self, error, errorClass, frames): """ Helper to build a C{Failure} with some traceback. @param error: An C{Exception} instance. @param error: The class name of the C{error} class. @param frames: A flat list of strings representing the information need to approximatively rebuild C{Failure} frames. @return: A L{Failure} instance with enough information about a test error. """ if _PY3: errorClass = errorClass.decode("utf-8") errorType = namedObject(errorClass) failure = Failure(error, errorType) for i in range(0, len(frames), 3): failure.frames.append( (frames[i], frames[i + 1], int(frames[i + 2]), [], [])) return failure
Example #2
Source File: worker.py From learn_python3_spider with MIT License | 6 votes |
def _buildFailure(self, error, errorClass, frames): """ Helper to build a C{Failure} with some traceback. @param error: An C{Exception} instance. @param error: The class name of the C{error} class. @param frames: A flat list of strings representing the information need to approximatively rebuild C{Failure} frames. @return: A L{Failure} instance with enough information about a test error. """ errorType = namedObject(errorClass) failure = Failure(error, errorType) for i in range(0, len(frames), 3): failure.frames.append( (frames[i], frames[i + 1], int(frames[i + 2]), [], [])) return failure
Example #3
Source File: upgrade.py From ccs-calendarserver with Apache License 2.0 | 6 votes |
def applyUpgrade(self, fp): """ Apply the data upgrade .py files to the database. """ # Find the module function we need to execute try: module = getModule(__name__) module = ".".join(module.name.split(".")[:-1]) + ".upgrades." + fp.basename()[:-3] + ".doUpgrade" doUpgrade = namedObject(module) except ImportError: msg = "Failed data upgrade: %s" % (fp.basename()[:-4],) self.log.error(msg) raise RuntimeError(msg) self.log.warn("Applying data upgrade: {module}", module=module) yield doUpgrade(self.sqlStore)
Example #4
Source File: nevowlore.py From BitTorrent with GNU General Public License v3.0 | 6 votes |
def nevowify(filename, linkrel, ext, url, templ, options=None, outfileGenerator=tree.getOutputFileName): if options is None: options = {} pclass = options['pageclass'] pclass = reflect.namedObject(pclass) page = pclass(docFactory=loaders.htmlfile(filename)) s = page.renderString() s = ____wait(s) newFilename = outfileGenerator(filename, ext) if options.has_key('nolore'): open(newFilename, 'w').write(s) return doc = parseStringAndReport(s) clonedNode = templ.cloneNode(1) tree.munge(doc, clonedNode, linkrel, os.path.dirname(filename), filename, ext, url, options, outfileGenerator) tree.makeSureDirectoryExists(newFilename) clonedNode.writexml(open(newFilename, 'wb'))
Example #5
Source File: components.py From BitTorrent with GNU General Public License v3.0 | 6 votes |
def removeComponent(self, component): """ Remove the given component from me entirely, for all interfaces for which it has been registered. @return: a list of the interfaces that were removed. """ if (isinstance(component, types.ClassType) or isinstance(component, types.TypeType)): warnings.warn("passing interface to removeComponent, you probably want unsetComponent", DeprecationWarning, 1) self.unsetComponent(component) return [component] l = [] for k, v in self._adapterCache.items(): if v is component: del self._adapterCache[k] l.append(reflect.namedObject(k)) return l
Example #6
Source File: components.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 5 votes |
def removeComponent(self, component): """ Remove the given component from me entirely, for all interfaces for which it has been registered. @return: a list of the interfaces that were removed. """ l = [] for k, v in list(self._adapterCache.items()): if v is component: del self._adapterCache[k] l.append(reflect.namedObject(k)) return l
Example #7
Source File: test_signals.py From maas with GNU Affero General Public License v3.0 | 5 votes |
def pick_django_signal(): return namedObject( "django.db.models.signals." + random.choice(django_signal_names) )
Example #8
Source File: newjelly.py From BitTorrent with GNU General Public License v3.0 | 5 votes |
def _unjelly_function(self, rest): modSplit = string.split(rest[0], '.') # if len(rest) > 0: warn("reference numbers will be out of sync") modName = string.join(modSplit[:-1], '.') if not self.taster.isModuleAllowed(modName): raise InsecureJelly("Module not allowed: %s"% modName) # XXX do I need an isFunctionAllowed? function = namedObject(rest[0]) self.resolveReference(function) return function
Example #9
Source File: newjelly.py From BitTorrent with GNU General Public License v3.0 | 5 votes |
def _unjelly_class(self, rest): clist = string.split(rest[0], '.') # if len(rest) > 0: warn("reference numbers will be out of sync") modName = string.join(clist[:-1], '.') if not self.taster.isModuleAllowed(modName): raise InsecureJelly("module %s not allowed" % modName) klaus = namedObject(rest[0]) if type(klaus) is not types.ClassType: raise InsecureJelly("class %s unjellied to something that isn't a class: %s" % (repr(name), repr(klaus))) if not self.taster.isClassAllowed(klaus): raise InsecureJelly("class not allowed: %s" % qual(klaus)) self.resolveReference(klaus) return klaus
Example #10
Source File: jelly.py From BitTorrent with GNU General Public License v3.0 | 5 votes |
def _unjelly_function(self, rest): modSplit = string.split(rest[0], '.') modName = string.join(modSplit[:-1], '.') if not self.taster.isModuleAllowed(modName): raise InsecureJelly("Module not allowed: %s"% modName) # XXX do I need an isFunctionAllowed? function = namedObject(rest[0]) return function
Example #11
Source File: jelly.py From BitTorrent with GNU General Public License v3.0 | 5 votes |
def _unjelly_class(self, rest): clist = string.split(rest[0], '.') modName = string.join(clist[:-1], '.') if not self.taster.isModuleAllowed(modName): raise InsecureJelly("module %s not allowed" % modName) klaus = namedObject(rest[0]) if type(klaus) is not types.ClassType: raise InsecureJelly("class %s unjellied to something that isn't a class: %s" % (repr(name), repr(klaus))) if not self.taster.isClassAllowed(klaus): raise InsecureJelly("class not allowed: %s" % qual(klaus)) return klaus
Example #12
Source File: jelly.py From python-for-android with Apache License 2.0 | 5 votes |
def _unjelly_function(self, rest): modSplit = rest[0].split('.') modName = '.'.join(modSplit[:-1]) if not self.taster.isModuleAllowed(modName): raise InsecureJelly("Module not allowed: %s"% modName) # XXX do I need an isFunctionAllowed? function = namedObject(rest[0]) return function
Example #13
Source File: jelly.py From python-for-android with Apache License 2.0 | 5 votes |
def _unjelly_class(self, rest): clist = rest[0].split('.') modName = '.'.join(clist[:-1]) if not self.taster.isModuleAllowed(modName): raise InsecureJelly("module %s not allowed" % modName) klaus = namedObject(rest[0]) objType = type(klaus) if objType not in (types.ClassType, types.TypeType): raise InsecureJelly( "class %r unjellied to something that isn't a class: %r" % ( rest[0], klaus)) if not self.taster.isClassAllowed(klaus): raise InsecureJelly("class not allowed: %s" % qual(klaus)) return klaus
Example #14
Source File: components.py From python-for-android with Apache License 2.0 | 5 votes |
def removeComponent(self, component): """ Remove the given component from me entirely, for all interfaces for which it has been registered. @return: a list of the interfaces that were removed. """ l = [] for k, v in self._adapterCache.items(): if v is component: del self._adapterCache[k] l.append(reflect.namedObject(k)) return l
Example #15
Source File: jelly.py From learn_python3_spider with MIT License | 5 votes |
def _unjelly_class(self, rest): cname = nativeString(rest[0]) clist = cname.split(nativeString('.')) modName = nativeString('.').join(clist[:-1]) if not self.taster.isModuleAllowed(modName): raise InsecureJelly("module %s not allowed" % modName) klaus = namedObject(cname) objType = type(klaus) if objType not in (_OldStyleClass, type): raise InsecureJelly( "class %r unjellied to something that isn't a class: %r" % ( cname, klaus)) if not self.taster.isClassAllowed(klaus): raise InsecureJelly("class not allowed: %s" % qual(klaus)) return klaus
Example #16
Source File: jelly.py From learn_python3_spider with MIT License | 5 votes |
def unjelly(self, obj): if type(obj) is not list: return obj jelTypeBytes = obj[0] if not self.taster.isTypeAllowed(jelTypeBytes): raise InsecureJelly(jelTypeBytes) regClass = unjellyableRegistry.get(jelTypeBytes) if regClass is not None: method = getattr(_createBlank(regClass), "unjellyFor", regClass) return self._maybePostUnjelly(method(self, obj)) regFactory = unjellyableFactoryRegistry.get(jelTypeBytes) if regFactory is not None: return self._maybePostUnjelly(regFactory(self.unjelly(obj[1]))) jelTypeText = nativeString(jelTypeBytes) thunk = getattr(self, '_unjelly_%s' % jelTypeText, None) if thunk is not None: return thunk(obj[1:]) else: nameSplit = jelTypeText.split('.') modName = '.'.join(nameSplit[:-1]) if not self.taster.isModuleAllowed(modName): raise InsecureJelly( "Module %s not allowed (in type %s)." % (modName, jelTypeText)) clz = namedObject(jelTypeText) if not self.taster.isClassAllowed(clz): raise InsecureJelly("Class %s not allowed." % jelTypeText) return self._genericUnjelly(clz, obj[1])
Example #17
Source File: components.py From learn_python3_spider with MIT License | 5 votes |
def removeComponent(self, component): """ Remove the given component from me entirely, for all interfaces for which it has been registered. @return: a list of the interfaces that were removed. """ l = [] for k, v in list(self._adapterCache.items()): if v is component: del self._adapterCache[k] l.append(reflect.namedObject(k)) return l
Example #18
Source File: jelly.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 5 votes |
def _unjelly_class(self, rest): cname = nativeString(rest[0]) clist = cname.split(nativeString('.')) modName = nativeString('.').join(clist[:-1]) if not self.taster.isModuleAllowed(modName): raise InsecureJelly("module %s not allowed" % modName) klaus = namedObject(cname) objType = type(klaus) if objType not in (_OldStyleClass, type): raise InsecureJelly( "class %r unjellied to something that isn't a class: %r" % ( cname, klaus)) if not self.taster.isClassAllowed(klaus): raise InsecureJelly("class not allowed: %s" % qual(klaus)) return klaus
Example #19
Source File: jelly.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 5 votes |
def unjelly(self, obj): if type(obj) is not list: return obj jelTypeBytes = obj[0] if not self.taster.isTypeAllowed(jelTypeBytes): raise InsecureJelly(jelTypeBytes) regClass = unjellyableRegistry.get(jelTypeBytes) if regClass is not None: method = getattr(_createBlank(regClass), "unjellyFor", regClass) return self._maybePostUnjelly(method(self, obj)) regFactory = unjellyableFactoryRegistry.get(jelTypeBytes) if regFactory is not None: return self._maybePostUnjelly(regFactory(self.unjelly(obj[1]))) jelTypeText = nativeString(jelTypeBytes) thunk = getattr(self, '_unjelly_%s' % jelTypeText, None) if thunk is not None: return thunk(obj[1:]) else: nameSplit = jelTypeText.split('.') modName = '.'.join(nameSplit[:-1]) if not self.taster.isModuleAllowed(modName): raise InsecureJelly( "Module %s not allowed (in type %s)." % (modName, jelTypeText)) clz = namedObject(jelTypeText) if not self.taster.isClassAllowed(clz): raise InsecureJelly("Class %s not allowed." % jelTypeText) return self._genericUnjelly(clz, obj[1])
Example #20
Source File: jelly.py From python-for-android with Apache License 2.0 | 4 votes |
def unjelly(self, obj): if type(obj) is not types.ListType: return obj jelType = obj[0] if not self.taster.isTypeAllowed(jelType): raise InsecureJelly(jelType) regClass = unjellyableRegistry.get(jelType) if regClass is not None: if isinstance(regClass, ClassType): inst = _Dummy() # XXX chomp, chomp inst.__class__ = regClass method = inst.unjellyFor elif isinstance(regClass, type): # regClass.__new__ does not call regClass.__init__ inst = regClass.__new__(regClass) method = inst.unjellyFor else: method = regClass # this is how it ought to be done val = method(self, obj) if hasattr(val, 'postUnjelly'): self.postCallbacks.append(inst.postUnjelly) return val regFactory = unjellyableFactoryRegistry.get(jelType) if regFactory is not None: state = self.unjelly(obj[1]) inst = regFactory(state) if hasattr(inst, 'postUnjelly'): self.postCallbacks.append(inst.postUnjelly) return inst thunk = getattr(self, '_unjelly_%s'%jelType, None) if thunk is not None: ret = thunk(obj[1:]) else: nameSplit = jelType.split('.') modName = '.'.join(nameSplit[:-1]) if not self.taster.isModuleAllowed(modName): raise InsecureJelly( "Module %s not allowed (in type %s)." % (modName, jelType)) clz = namedObject(jelType) if not self.taster.isClassAllowed(clz): raise InsecureJelly("Class %s not allowed." % jelType) if hasattr(clz, "__setstate__"): ret = _newInstance(clz) state = self.unjelly(obj[1]) ret.__setstate__(state) else: state = self.unjelly(obj[1]) ret = _newInstance(clz, state) if hasattr(clz, 'postUnjelly'): self.postCallbacks.append(ret.postUnjelly) return ret
Example #21
Source File: jelly.py From BitTorrent with GNU General Public License v3.0 | 4 votes |
def unjelly(self, obj): if type(obj) is not types.ListType: return obj jelType = obj[0] if not self.taster.isTypeAllowed(jelType): raise InsecureJelly(jelType) regClass = unjellyableRegistry.get(jelType) if regClass is not None: if isinstance(regClass, ClassType): inst = _Dummy() # XXX chomp, chomp inst.__class__ = regClass method = inst.unjellyFor elif isinstance(regClass, type): # regClass.__new__ does not call regClass.__init__ inst = regClass.__new__(regClass) method = inst.unjellyFor else: method = regClass # this is how it ought to be done val = method(self, obj) if hasattr(val, 'postUnjelly'): self.postCallbacks.append(inst.postUnjelly) return val regFactory = unjellyableFactoryRegistry.get(jelType) if regFactory is not None: state = self.unjelly(obj[1]) inst = regFactory(state) if hasattr(inst, 'postUnjelly'): self.postCallbacks.append(inst.postUnjelly) return inst thunk = getattr(self, '_unjelly_%s'%jelType, None) if thunk is not None: ret = thunk(obj[1:]) else: nameSplit = string.split(jelType, '.') modName = string.join(nameSplit[:-1], '.') if not self.taster.isModuleAllowed(modName): raise InsecureJelly("Module %s not allowed (in type %s)." % (modName, jelType)) clz = namedObject(jelType) if not self.taster.isClassAllowed(clz): raise InsecureJelly("Class %s not allowed." % jelType) if hasattr(clz, "__setstate__"): ret = _newInstance(clz, {}) state = self.unjelly(obj[1]) ret.__setstate__(state) else: state = self.unjelly(obj[1]) ret = _newInstance(clz, state) if hasattr(clz, 'postUnjelly'): self.postCallbacks.append(ret.postUnjelly) return ret