Abstract interface class for plugin based continuations. More...
#include <Plugin.h>
Inherited by PluginVC, and SpdyClientSession.
Public Member Functions | |
virtual | ~PluginIdentity () |
Make sure destructor is virtual. | |
virtual char const * | getPluginTag () const |
Get the plugin tag. | |
virtual int64_t | getPluginId () const |
Get the plugin instance ID. |
Abstract interface class for plugin based continuations.
The primary intended use of this is for logging so that continuations that generate logging messages can generate plugin local data in a generic way.
The core will at appropriate times dynamically cast the continuation to this class and if successful access the plugin data via these methods.
Plugins should mix this in to continuations for which it is useful. The default implementations return empty / invalid responses and should be overridden by the plugin.
Definition at line 75 of file proxy/Plugin.h.
virtual PluginIdentity::~PluginIdentity | ( | ) | [inline, virtual] |
Make sure destructor is virtual.
Definition at line 79 of file proxy/Plugin.h.
virtual int64_t PluginIdentity::getPluginId | ( | ) | const [inline, virtual] |
Get the plugin instance ID.
A plugin can create multiple subsidiary instances. This is used as the identifier for those to distinguish the instances.
Reimplemented in PluginVC, and SpdyClientSession.
Definition at line 90 of file proxy/Plugin.h.
Referenced by FetchSM::httpConnect(), and HttpClientSession::new_transaction().
virtual char const* PluginIdentity::getPluginTag | ( | ) | const [inline, virtual] |
Get the plugin tag.
The returned string must have a lifetime at least as long as the plugin.
NULL
. Reimplemented in PluginVC, and SpdyClientSession.
Definition at line 85 of file proxy/Plugin.h.
Referenced by FetchSM::httpConnect(), and HttpClientSession::new_transaction().