This docs on this page refers to a PREVIOUS VERSION. For the latest stable release, go to https://docs.bokeh.org/

Archived docs for versions <= 1.0.4 have had to be modified from their original published configuration, and may be missing some features (e.g. source listing)

All users are encourage to update to version 1.1 or later, as soon as they are able.

bokeh.application.handlers.handler — Bokeh 1.0.2 documentation

bokeh.application.handlers.handler

Provide a base class for Bokeh Application handler classes.

When a Bokeh server session is initiated, the Bokeh server asks the Application for a new Document to service the session. To do this, the Application first creates a new empty Document, then it passes this new Document to the modify_document method of each of its handlers. When all handlers have updated the Document, it is used to service the user session.

Below is an example outline of a custom handler that might modify documents based off information in some database:

class DatabaseHandler(Handler):
    """ A Bokeh Application handler to initialize Documents from a database

    """

    def modify_document(self, doc):

        # do some data base lookup here to generate 'plot'

        # add the plot to the document (i.e modify the document)
        doc.add_root(plot)

        # and return it
        return doc
class Handler(*args, **kwargs)[source]

Provide a mechanism for Bokeh applications to build up new Bokeh Documents.

modify_document(doc)[source]

Modify an application document in a specified manner.

When a Bokeh server session is initiated, the Bokeh server asks the Application for a new Document to service the session. To do this, the Application first creates a new empty Document, then it passes this Document to the modify_document method of each of its handlers. When all handlers have updated the Document, it is used to service the user session.

Subclasses must implement this method

Parameters:doc (Document) – A Bokeh Document to update in-place
Returns:Document
on_server_loaded(server_context)[source]

Execute code when the server is first started.

Subclasses may implement this method to provide for any one-time initialization that is necessary after the server starts, but before any sessions are created.

Parameters:server_context (ServerContext) –
on_server_unloaded(server_context)[source]

Execute code when the server cleanly exits. (Before stopping the server’s IOLoop.)

Subclasses may implement this method to provide for any one-time tear down that is necessary before the server exits.

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)[source]

Execute code when a new session is created.

Subclasses may implement this method to provide for any per-session initialization that is necessary before modify_doc is called for the session.

Parameters:session_context (SessionContext) –
on_session_destroyed(session_context)[source]

Execute code when a session is destroyed.

Subclasses may implement this method to provide for any per-session tear-down that is necessary when sessions are destroyed.

Parameters:session_context (SessionContext) –
static_path()[source]

Return a path to app-specific static resources, if applicable.

url_path()[source]

Returns a default URL path, if applicable.

Handlers subclasses may optionally implement this method, to inform the Bokeh application what URL it should be installed at.

If multiple handlers specify url_path the Application will use the value from the first handler in its list of handlers.

error

If the handler fails, may contain a related error message.

error_detail

If the handler fails, may contain a traceback or other details.

failed

True if the handler failed to modify the doc