def auto_configure_backend_factory(self): "Assign :attr:`backend_factory` from ``settings.DOWNLOADVIEW_BACKEND``" try: self.backend_factory = import_member(settings.DOWNLOADVIEW_BACKEND) except AttributeError: raise ImproperlyConfigured('SmartDownloadMiddleware requires ' 'settings.DOWNLOADVIEW_BACKEND')
def auto_configure_backend_factory(self): "Assign :attr:`backend_factory` from ``settings.DOWNLOADVIEW_BACKEND``" try: self.backend_factory = import_member(settings.DOWNLOADVIEW_BACKEND) except AttributeError: raise ImproperlyConfigured("SmartDownloadMiddleware requires " "settings.DOWNLOADVIEW_BACKEND")
def auto_configure_middlewares(self): """Populate :attr:`middlewares` from ``settings.DOWNLOADVIEW_MIDDLEWARES``.""" for (key, import_string, kwargs) in getattr(settings, "DOWNLOADVIEW_MIDDLEWARES", []): factory = import_member(import_string) middleware = factory(**kwargs) self.middlewares.append((key, middleware))
def auto_configure_middlewares(self): """Populate :attr:`middlewares` from ``settings.DOWNLOADVIEW_MIDDLEWARES``.""" for (key, import_string, kwargs) in getattr(settings, 'DOWNLOADVIEW_MIDDLEWARES', []): factory = import_member(import_string) middleware = factory(**kwargs) self.middlewares.append((key, middleware))
def auto_configure_backend_options(self): """Populate :attr:`dispatcher` using :attr:`factory` and ``settings.DOWNLOADVIEW_RULES``.""" try: options_list = copy.deepcopy(settings.DOWNLOADVIEW_RULES) except AttributeError: raise ImproperlyConfigured('SmartDownloadMiddleware requires ' 'settings.DOWNLOADVIEW_RULES') for key, options in enumerate(options_list): args = [] kwargs = {} if isinstance(options, collections.Mapping): # Using kwargs. kwargs = options else: args = options if 'backend' in kwargs: # Specific backend for this rule. factory = import_member(kwargs['backend']) del kwargs['backend'] else: # Fallback to global backend. factory = self.backend_factory middleware_instance = factory(*args, **kwargs) self.dispatcher.middlewares.append((key, middleware_instance))
def auto_configure_backend_options(self): """Populate :attr:`dispatcher` using :attr:`factory` and ``settings.DOWNLOADVIEW_RULES``.""" try: options_list = copy.deepcopy(settings.DOWNLOADVIEW_RULES) except AttributeError: raise ImproperlyConfigured("SmartDownloadMiddleware requires " "settings.DOWNLOADVIEW_RULES") for key, options in enumerate(options_list): args = [] kwargs = {} if isinstance(options, collections.Mapping): # Using kwargs. kwargs = options else: args = options if "backend" in kwargs: # Specific backend for this rule. factory = import_member(kwargs["backend"]) del kwargs["backend"] else: # Fallback to global backend. factory = self.backend_factory middleware_instance = factory(*args, **kwargs) self.dispatcher.middlewares.append((key, middleware_instance))