#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) |
Private Member Functions | |
| TransactionReplicator (const TransactionReplicator &) | |
| TransactionReplicator & | operator= (const TransactionReplicator &) |
Class which replicates Transaction messages
Definition at line 59 of file transaction_replicator.h.
| virtual ReplicationReturnCode drizzled::plugin::TransactionReplicator::replicate | ( | TransactionApplier * | in_applier, |
| Session & | session, | ||
| message::Transaction & | to_replicate | ||
| ) | [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 DefaultReplicator, and drizzle_plugin::FilteredReplicator.
Referenced by drizzled::ReplicationServices::pushTransactionMessage().