#include <transaction_replicator.h>
Public Types | |
|
typedef std::pair< const std::string, const std::string > | map_key |
|
typedef std::map< const map_key, plugin::Plugin * > | map |
| typedef std::vector< Plugin * > | vector |
Public Member Functions | |
| TransactionReplicator (std::string name_arg) | |
| virtual ReplicationReturnCode | replicate (TransactionApplier *in_applier, Session &session, message::Transaction &to_replicate)=0 |
| virtual void | shutdownPlugin () |
| virtual void | prime () |
| virtual void | startup (drizzled::Session &) |
| void | activate () |
| void | deactivate () |
| bool | isActive () const |
| const std::string & | getName () const |
| void | setModule (module::Module *module) |
| const std::string & | getTypeName () const |
| virtual bool | removeLast () const |
| const std::string & | getModuleName () const |
Static Public Member Functions | |
| static bool | addPlugin (TransactionReplicator *replicator) |
| static void | removePlugin (TransactionReplicator *replicator) |
Class which replicates Transaction messages
Definition at line 47 of file transaction_replicator.h.
|
pure virtual |
Replicate a Transaction message to a TransactionApplier.
It is important to note that memory allocation for the supplied pointer is not guaranteed after the completion of this function – meaning the caller can dispose of the supplied message. Therefore, replicators and appliers implementing an asynchronous replication system must copy the supplied message to their own controlled memory storage area.
| Pointer | to the applier of the command message |
| Transaction | message to be replicated |
Implemented in drizzle_plugin::FilteredReplicator, and DefaultReplicator.
Referenced by drizzled::ReplicationServices::pushTransactionMessage().