Changeset 12186 for main/waeup.ikoba/trunk/src/waeup/ikoba/configuration.py
- Timestamp:
- 9 Dec 2014, 16:45:52 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/waeup.ikoba/trunk/src/waeup/ikoba/configuration.py
r11949 r12186 22 22 from zope.component.interfaces import IFactory 23 23 from zope.interface import implementedBy 24 from waeup.ikoba.interfaces import ( 25 ISessionConfiguration, IConfigurationContainer, ISessionConfigurationAdd, 26 application_sessions_vocab) 24 from waeup.ikoba.interfaces import IConfigurationContainer 27 25 from waeup.ikoba.utils.helpers import attrs_to_fields 28 26 29 27 class ConfigurationContainer(grok.Container): 30 28 """ 31 The node containing the session configuration models29 The node which may contain further configuration models (see waeup.kofa). 32 30 """ 33 31 34 32 grok.implements(IConfigurationContainer) 35 33 36 def addSessionConfiguration(self, sessionconfiguration):37 """Add a session configuration object.38 """39 if not ISessionConfiguration.providedBy(sessionconfiguration):40 raise TypeError(41 'ConfigurationContainers contain only '42 'ISessionConfiguration instances')43 code = unicode(sessionconfiguration.application_session)44 self[code] = sessionconfiguration45 return46 47 34 ConfigurationContainer = attrs_to_fields(ConfigurationContainer) 48 49 class SessionConfiguration(grok.Model):50 """51 Session configuration model52 """53 54 grok.implements(ISessionConfiguration, ISessionConfigurationAdd)55 56 def getSessionString(self):57 return application_sessions_vocab.getTerm(self.application_session).title58 59 SessionConfiguration = attrs_to_fields(SessionConfiguration)60 61 class SessionConfigurationFactory(grok.GlobalUtility):62 """A factory for session configuration objects.63 """64 grok.implements(IFactory)65 grok.name(u'waeup.SessionConfiguration')66 title = u"Create a new session configuration object.",67 description = u"This factory instantiates new session configurations."68 69 def __call__(self, *args, **kw):70 return SessionConfiguration(*args, **kw)71 72 def getInterfaces(self):73 return implementedBy(SessionConfiguration)
Note: See TracChangeset for help on using the changeset viewer.