Public Member Functions

PluginIdentity Class Reference

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.

Detailed Description

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.


Constructor & Destructor Documentation

virtual PluginIdentity::~PluginIdentity (  )  [inline, virtual]

Make sure destructor is virtual.

Definition at line 79 of file proxy/Plugin.h.


Member Function Documentation

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.

Returns:
A string identifying the plugin or NULL.

Reimplemented in PluginVC, and SpdyClientSession.

Definition at line 85 of file proxy/Plugin.h.

Referenced by FetchSM::httpConnect(), and HttpClientSession::new_transaction().


The documentation for this class was generated from the following file: