def registerType(klass, package): # Registering a class results in classgen doing its thing # Set up accessor/mutators and sane meta/portal_type generateClass(klass) data = { 'klass': klass, 'name': klass.__name__, 'identifier': klass.meta_type.capitalize().replace(' ', '_'), 'meta_type': klass.meta_type, 'portal_type': klass.portal_type, 'package': package, 'module': sys.modules[klass.__module__], 'schema': klass.schema, 'signature': klass.schema.signature(), } key = '%s.%s' % (package, data['meta_type']) if key in _types.keys(): existing = _types[key] existing_name = '%s.%s' % (existing['module'].__name__, existing['name']) override_name = '%s.%s' % (data['module'].__name__, data['name']) log('ArchetypesTool: Trying to register "%s" which ' 'has already been registered. The new type %s ' 'is going to override %s' % (key, override_name, existing_name)) _types[key] = data
def registerType(klass, package): # Registering a class results in classgen doing its thing # Set up accessor/mutators and sane meta/portal_type generateClass(klass) data = { 'klass': klass, 'name': klass.__name__, 'identifier': klass.meta_type.capitalize().replace(' ', '_'), 'meta_type': klass.meta_type, 'portal_type': klass.portal_type, 'package': package, 'module': sys.modules[klass.__module__], 'schema': klass.schema, 'signature': klass.schema.signature(), } key = '%s.%s' % (package, data['meta_type']) if key in _types.keys(): existing = _types[key] existing_name = '%s.%s' % ( existing['module'].__name__, existing['name']) override_name = '%s.%s' % (data['module'].__name__, data['name']) log('ArchetypesTool: Trying to register "%s" which ' 'has already been registered. The new type %s ' 'is going to override %s' % (key, override_name, existing_name)) _types[key] = data
def registerType(klass, package=None): if not package: deprecated("registerType without a package name is deprecated. " "Please apply a package name for class %s" % repr(klass), level=2) package = _guessPackage(klass.__module__) # Registering a class results in classgen doing its thing # Set up accessor/mutators and sane meta/portal_type generateClass(klass) data = { 'klass' : klass, 'name' : klass.__name__, 'identifier': klass.meta_type.capitalize().replace(' ', '_'), 'meta_type': klass.meta_type, 'portal_type': klass.portal_type, 'package' : package, 'module' : sys.modules[klass.__module__], 'schema' : klass.schema, 'signature' : klass.schema.signature(), # backward compatibility, remove later 'type' : klass.schema, } key = '%s.%s' % (package, data['meta_type']) if key in _types.keys(): existing = _types[key] existing_name = '%s.%s' % (existing['module'].__name__, existing['name']) override_name = '%s.%s' % (data['module'].__name__, data['name']) log('ArchetypesTool: Trying to register "%s" which ' \ 'has already been registered. The new type %s ' \ 'is going to override %s' % (key, override_name, existing_name)) _types[key] = data
return str(self.id) def setId(self, value, *kw): """Setting a new ID isn't allowed """ assert value == self.getId(), "You are not allowed to change the id" security.declareProtected(View, "Type") def Type(self): return self.archetype_name security.declareProtected(View, "Description") def Description(self): lines = [line.strip() for line in self.__doc__.splitlines()] return " ".join([line for line in lines if line]) security.declareProtected(View, "getCriteriaItems") def getCriteriaItems(self): """Return a sequence of items to be used to build the catalog query. """ return () # because I don't register the class I've to generator it on my own. Otherwise # I'm not able to unit test it in the right way. generateClass(ATBaseCriterion) InitializeClass(ATBaseCriterion)
return str(self.id) def setId(self, value, *kw): """Setting a new ID isn't allowed """ assert value == self.getId(), 'You are not allowed to change the id' security.declareProtected(View, 'Type') def Type(self): return self.archetype_name security.declareProtected(View, 'Description') def Description(self): lines = [line.strip() for line in self.__doc__.splitlines()] return ' '.join([line for line in lines if line]) security.declareProtected(View, 'getCriteriaItems') def getCriteriaItems(self): """Return a sequence of items to be used to build the catalog query. """ return () # because I don't register the class I've to generator it on my own. Otherwise # I'm not able to unit test it in the right way. generateClass(ATBaseCriterion) InitializeClass(ATBaseCriterion)