Exemplo n.º 1
0
 def __call__(self, that):
     # internal appspace manager
     that._M = Pathways.appspace(
         self.pattern,
         self.required,
         self.defaults,
         *self.args,
         **self.kw
     )
     # lock internal appspace global settings
     that._M.settings.lock()
     # set internal appspace global settings
     that._G = that._M.settings.final
     return that
Exemplo n.º 2
0
    def __init__(self, pattern=None, required=None, defaults=None, **kw):
        '''
        init

        @param pattern: pattern configuration or appspace label (default: None)
        @param required: required settings (default: None)
        @param defaults: default settings (default: None)
        '''
        super(RootMixin, self).__init__()
        if pattern is not None:
            # external appspace
            self.M = Pathways.appspace(pattern, required, defaults)
            # freeze external appspace global settings
            self.M.freeze(kw)
        else:
            self.M = None
        self._setup()