Source code for jivago.config.debug_jivago_context

from typing import List, Type

from jivago.config.production_jivago_context import ProductionJivagoContext
from jivago.config.router.cors_rule import CorsRule
from jivago.config.router.router_builder import RouterBuilder
from jivago.lang.annotations import Override
from jivago.lang.registry import Registry
from jivago.wsgi.filter.filter import Filter
from jivago.wsgi.filter.system_filters.error_handling.debug_exception_filter import DebugExceptionFilter
from jivago.wsgi.filter.system_filters.error_handling.unknown_exception_filter import UnknownExceptionFilter


[docs]class DebugJivagoContext(ProductionJivagoContext): def __init__(self, root_package: "Module", registry: Registry, banner: bool = True): super().__init__(root_package, registry, banner=banner)
[docs] def create_router_config(self) -> RouterBuilder: return super().create_router_config().add_rule(CorsRule("/", {"Access-Control-Allow-Origin": '*', 'Access-Control-Allow-Headers': '*', 'Access-Control-Allow-Methods': '*'}))
[docs] @Override def get_default_filters(self) -> List[Type[Filter]]: production_filters = super().get_default_filters() production_filters.remove(UnknownExceptionFilter) return [DebugExceptionFilter] + production_filters