Beispiel #1
0
    def create_http_injector(self) -> Injector:
        """
        Create the dependency injector for running handlers in response to
        incoming HTTP requests.
        """
        http_components = {
            component.cls: component.init
            for component in self.HTTP_COMPONENTS
        }

        return self.INJECTOR_CLS(components={
            **http_components,
            **self.components
        },
                                 initial_state=self.preloaded_state,
                                 required_state={
                                     UMIMessage: 'message',
                                     UMIChannels: 'channels',
                                     KeywordArgs: 'kwargs',
                                     Handler: 'handler',
                                     Exception: 'exc',
                                     http.ResponseHeaders: 'response_headers',
                                     http.ResponseData: 'response_data'
                                 },
                                 resolvers=[dependency.HTTPResolver()])
Beispiel #2
0
    def create_http_injector(self) -> Injector:
        """
        Create the dependency injector for running handlers in response to
        incoming HTTP requests.

        Args:
            components: Any components that are created per-request.
            initial_state: Any preloaded components and other initial state.
        """
        http_components = {
            component.cls: component.init
            for component in self.HTTP_COMPONENTS
        }

        return self.INJECTOR_CLS(components={
            **http_components,
            **self.components
        },
                                 initial_state=self.preloaded_state,
                                 required_state={
                                     WSGIEnviron: 'wsgi_environ',
                                     KeywordArgs: 'kwargs',
                                     Exception: 'exc',
                                     http.ResponseHeaders: 'response_headers'
                                 },
                                 resolvers=[dependency.HTTPResolver()])