|
Security Scol plugin
|
Route input to different and/or multiple channels based on channel ID. More...
#include <channels.h>
Public Member Functions | |
| ChannelSwitch (BufferedTransformation &destination) | |
| ChannelSwitch (BufferedTransformation &destination, const std::string &outChannel) | |
| void | IsolatedInitialize (const NameValuePairs ¶meters=g_nullNameValuePairs) |
| size_t | ChannelPut2 (const std::string &channel, const byte *begin, size_t length, int messageEnd, bool blocking) |
| Input multiple bytes for processing on a channel. | |
| size_t | ChannelPutModifiable2 (const std::string &channel, byte *begin, size_t length, int messageEnd, bool blocking) |
| bool | ChannelFlush (const std::string &channel, bool completeFlush, int propagation=-1, bool blocking=true) |
| Flush buffered input and/or output on a channel. | |
| bool | ChannelMessageSeriesEnd (const std::string &channel, int propagation=-1, bool blocking=true) |
| byte * | ChannelCreatePutSpace (const std::string &channel, size_t &size) |
| void | AddDefaultRoute (BufferedTransformation &destination) |
| void | RemoveDefaultRoute (BufferedTransformation &destination) |
| void | AddDefaultRoute (BufferedTransformation &destination, const std::string &outChannel) |
| void | RemoveDefaultRoute (BufferedTransformation &destination, const std::string &outChannel) |
| void | AddRoute (const std::string &inChannel, BufferedTransformation &destination, const std::string &outChannel) |
| void | RemoveRoute (const std::string &inChannel, BufferedTransformation &destination, const std::string &outChannel) |
Public Member Functions inherited from Multichannel< Sink > | |
| bool | Flush (bool hardFlush, int propagation=-1, bool blocking=true) |
| Flush buffered input and/or output, with signal propagation. | |
| bool | MessageSeriesEnd (int propagation=-1, bool blocking=true) |
| Marks the end of a series of messages, with signal propagation. | |
| byte * | CreatePutSpace (size_t &size) |
| Request space which can be written into by the caller. | |
| size_t | Put2 (const byte *inString, size_t length, int messageEnd, bool blocking) |
| Input multiple bytes for processing. | |
| size_t | PutModifiable2 (byte *inString, size_t length, int messageEnd, bool blocking) |
| Input multiple bytes that may be modified by callee. | |
| byte * | ChannelCreatePutSpace (const std::string &channel, size_t &size) |
| Request space which can be written into by the caller. | |
| bool | ChannelPutModifiable (const std::string &channel, byte *inString, size_t length) |
| Input multiple bytes that may be modified by callee on a channel. | |
| size_t | ChannelPutModifiable2 (const std::string &channel, byte *begin, size_t length, int messageEnd, bool blocking) |
| Input multiple bytes that may be modified by callee on a channel. | |
Public Member Functions inherited from CustomFlushPropagation< T > | |
Friends | |
| class | ChannelRouteIterator |
Additional Inherited Members | |
Public Types inherited from ChannelSwitchTypedefs | |
| typedef std::pair< BufferedTransformation *, std::string > | Route |
| typedef std::multimap< std::string, Route > | RouteMap |
| typedef std::pair< BufferedTransformation *, value_ptr< std::string > > | DefaultRoute |
| typedef std::list< DefaultRoute > | DefaultRouteList |
| typedef RouteMap::iterator | MapIterator |
| typedef DefaultRouteList::iterator | ListIterator |
Route input to different and/or multiple channels based on channel ID.
Definition at line 96 of file channels.h.
|
inline |
Definition at line 99 of file channels.h.
|
inline |
Definition at line 100 of file channels.h.
|
inline |
Definition at line 104 of file channels.h.
| void ChannelSwitch::AddDefaultRoute | ( | BufferedTransformation & | destination | ) |
Definition at line 266 of file channels.cpp.
| void ChannelSwitch::AddDefaultRoute | ( | BufferedTransformation & | destination, |
| const std::string & | outChannel | ||
| ) |
Definition at line 281 of file channels.cpp.
| void ChannelSwitch::AddRoute | ( | const std::string & | inChannel, |
| BufferedTransformation & | destination, | ||
| const std::string & | outChannel | ||
| ) |
Definition at line 296 of file channels.cpp.
| byte * ChannelSwitch::ChannelCreatePutSpace | ( | const std::string & | channel, |
| size_t & | size | ||
| ) |
Definition at line 234 of file channels.cpp.
|
virtual |
Flush buffered input and/or output on a channel.
| channel | the channel to flush the data |
| hardFlush | is used to indicate whether all data should be flushed |
| propagation | the number of attached transformations the ChannelFlush() signal should be passed |
| blocking | specifies whether the object should block when processing input |
propagation count includes this object. Setting propagation to 1 means this object only. Setting propagation to -1 means unlimited propagation.
Implements Multichannel< Sink >.
Definition at line 183 of file channels.cpp.
| bool ChannelSwitch::ChannelMessageSeriesEnd | ( | const std::string & | channel, |
| int | propagation = -1, |
||
| bool | blocking = true |
||
| ) |
Definition at line 208 of file channels.cpp.
|
virtual |
Input multiple bytes for processing on a channel.
| channel | the channel to process the data. |
| begin | the byte buffer to process. |
| length | the size of the string, in bytes. |
| messageEnd | means how many filters to signal MessageEnd() to, including this one. |
| blocking | specifies whether the object should block when processing input. |
Implements Multichannel< Sink >.
Definition at line 150 of file channels.cpp.
| size_t ChannelSwitch::ChannelPutModifiable2 | ( | const std::string & | channel, |
| byte * | begin, | ||
| size_t | length, | ||
| int | messageEnd, | ||
| bool | blocking | ||
| ) |
Definition at line 249 of file channels.cpp.
| void ChannelSwitch::IsolatedInitialize | ( | const NameValuePairs & | parameters = g_nullNameValuePairs | ) |
Definition at line 175 of file channels.cpp.
| void ChannelSwitch::RemoveDefaultRoute | ( | BufferedTransformation & | destination | ) |
Definition at line 271 of file channels.cpp.
| void ChannelSwitch::RemoveDefaultRoute | ( | BufferedTransformation & | destination, |
| const std::string & | outChannel | ||
| ) |
Definition at line 286 of file channels.cpp.
| void ChannelSwitch::RemoveRoute | ( | const std::string & | inChannel, |
| BufferedTransformation & | destination, | ||
| const std::string & | outChannel | ||
| ) |
Definition at line 301 of file channels.cpp.
|
friend |
Definition at line 133 of file channels.h.