def __init__(self, app, conf, **local_conf): self.conf = conf self.conf.register_opts(self.opts) # Determine the context class to use self.ctxcls = RequestContext if 'context_class' in local_conf: self.ctxcls = utils.import_class(local_conf['context_class']) super(ContextMiddleware, self).__init__(app)
def make_context(self, *args, **kwargs): """ Create a context with the given arguments. """ # Determine the context class to use ctxcls = context.RequestContext if 'context_class' in self.options: ctxcls = utils.import_class(self.options['context_class']) return ctxcls(*args, **kwargs)
def _import_factory(self, local_conf): """Import an app/filter class. Lookup the KEY from the PasteDeploy local conf and import the class named there. This class can then be used as an app or filter factory. Note we support the <module>:<class> format. Note also that if you do e.g. key = value then ConfigParser returns a value with a leading newline, so we strip() the value before using it. """ class_name = local_conf[self.KEY].replace(':', '.').strip() return utils.import_class(class_name)