bokeh.application.handlers.directory#
Provide a Bokeh Application Handler to build up documents by running
the code from main.py or main.ipynb files in specified directories.
The directory may also optionally contain:
- A - server_lifecyle.pymodule to provide lifecycle callbacks for the application and sessions.
- A - staticsubdirectory containing app-specific static resources to serve.
- A - theme.yamlfile containing a Bokeh theme to automatically apply to all new documents.
- A - templatessubdirectory containing templates for app display
A full directory layout might look like:
myapp
   |
   +---main.py
   +---server_lifecycle.py
   +---static
   +---theme.yaml
   +---templates
        +---index.html
- class DirectoryHandler(*, filename: str | PathLike[str], argv: list[str] = [])[source]#
- Load an application directory which modifies a Document. - __init__(*, filename: str | PathLike[str], argv: list[str] = []) None[source]#
- Keywords:
- filename (str) : a path to an application directory with either “main.py” or “main.ipynb” - argv (list[str], optional) : a list of string arguments to make available as sys.argv to main.py 
 
 - modify_document(doc: Document) None[source]#
- Execute the configured - main.pyor- main.ipynbto modify the document.- This method will also search the app directory for any theme or template files, and automatically configure the document with them if they are found. 
 - on_server_loaded(server_context: ServerContext) None[source]#
- Execute on_server_unloaded` from - server_lifecycle.py(if it is defined) when the server is first started.- Parameters:
- server_context (ServerContext) 
 
 - on_server_unloaded(server_context: ServerContext) None[source]#
- Execute - on_server_unloadedfrom- server_lifecycle.py(if it is defined) when the server cleanly exits. (Before stopping the server’s- IOLoop.)- Parameters:
- server_context (ServerContext) 
 - Warning - In practice this code may not run, since servers are often killed by a signal. 
 - on_session_created(session_context: SessionContext) Coroutine[Any, Any, None][source]#
- Execute - on_session_createdfrom- server_lifecycle.py(if it is defined) when a new session is created.- Parameters:
- session_context (SessionContext) 
 
 - on_session_destroyed(session_context: SessionContext) Coroutine[Any, Any, None][source]#
- Execute - on_session_destroyedfrom- server_lifecycle.py(if it is defined) when a session is destroyed.- Parameters:
- session_context (SessionContext) 
 
 - process_request(request: HTTPServerRequest) dict[str, Any][source]#
- Processes incoming HTTP request returning a dictionary of additional data to add to the session_context. - Parameters:
- request – HTTP request 
- Returns:
- A dictionary of JSON serializable data to be included on the session context.