Apama
9.10.0.4.289795
|
Base of the inheritence tree for Connectivity plugins. More...
#include <sag_connectivity_plugins.hpp>
Public Member Functions | |
Plugin (const std::string &name, const std::string &chainId, const map_t &config) | |
Give the plugin instance name and the chain name. More... | |
virtual | ~Plugin () |
Virtual destructor to ensure that we can delete any part of the tree. More... | |
virtual void | start () |
Called when the plugin should be started up (after all plugins are connected together). More... | |
virtual void | hostReady () |
Called when the host indicates it is ready to start receiving input (sends will be queued until this point). More... | |
virtual void | shutdown () |
Release any resources created by the connectivity plug-in, and terminate and join any background threads. More... | |
const std::string & | getName () const |
Return the name of this plugin instance. More... | |
Base of the inheritence tree for Connectivity plugins.
Normally plugins will implement either AbstractCodec or AbstractTransport, or one of their Simple variants.
This class provides the following members to its derived classes:
To export a codec or a transport for use in the correlator you must use one of the following macros:
|
inline |
Give the plugin instance name and the chain name.
|
inlinevirtual |
Virtual destructor to ensure that we can delete any part of the tree.
|
inline |
Return the name of this plugin instance.
|
inlinevirtual |
Called when the host indicates it is ready to start receiving input (sends will be queued until this point).
Default implementation is a no-op.
|
inlinevirtual |
Release any resources created by the connectivity plug-in, and terminate and join any background threads.
The host will call this before shutdown.
This method will never be called more than once on this instance. Implementations should ensure they work correctly even if the start() method was not called.
If the plug-in is blocked waiting to send a message it should attempt to cancel the operation when this method is called. The plug-in must ensure that any calls to hostSide or transportSide are completed before returning from this method and not initiate any calls after this has completed. This is typically achieved by interrupting and joining any threads that this plug-in has started (i.e. waiting for the threads to terminate).
Default implementation is a no-op. You must override it if you need to wait for anything.
|
inlinevirtual |
Called when the plugin should be started up (after all plugins are connected together).
You must not call methods on hostSide or transportSide before start() is called.
Default implementation is a no-op. You must override this if you need to signal startup.