#include <transaction_applier.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 | |
TransactionApplier (std::string name_arg) | |
virtual ReplicationReturnCode | apply (Session &in_session, const message::Transaction &to_apply)=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 (TransactionApplier *applier) |
static void | removePlugin (TransactionApplier *applier) |
Private Member Functions | |
TransactionApplier (const TransactionApplier &) | |
TransactionApplier & | operator= (const TransactionApplier &) |
Base class for appliers of Transaction messages
Definition at line 53 of file transaction_applier.h.
virtual ReplicationReturnCode drizzled::plugin::TransactionApplier::apply | ( | Session & | in_session, |
const message::Transaction & | to_apply | ||
) | [pure virtual] |
Apply something to a target.
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, appliers which are implementing an asynchronous replication system must copy the supplied message to their own controlled memory storage area.
Transaction | message to be replicated |
Implemented in ReplicationLog, Invalidator, drizzle_plugin::RabbitMQLog, and TransactionLogApplier.
Referenced by drizzle_plugin::FilteredReplicator::replicate().