~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/default_replicator/default_replicator.h

  • Committer: Jay Pipes
  • Date: 2009-10-07 23:59:47 UTC
  • mto: (1234.1.1 push) (1237.2.10 push)
  • mto: This revision was merged to the branch mainline in revision 1193.
  • Revision ID: jpipes@serialcoder-20091007235947-18simrecnzwv8t1q
Phase 2 new replication work:

* Removes old replication.proto file, old command_transform library
* Removes use of korr.h macro calls in favor of GPB's CodedOutputStream
  API.
* Updates transaction_log, default_replicator, and filtered_replicator module
  to use new Transaction message.
* Updates ReplicationServices to construct the new Transaction messages and
  associated Statement sub-messages
* Corrects transaction boundaries.  AUTOCOMMIT now works properly, and I have
  added a new test case to verify AUTOCOMMIT variable modification of the way
  in which Transaction messages are bundled up and sent across to replicators.

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
 *
24
24
 * Defines the API of the default replicator.
25
25
 *
26
 
 * @see drizzled/plugin/replicator.h
27
 
 * @see drizzled/plugin/applier.h
 
26
 * @see drizzled/plugin/transaction_replicator.h
 
27
 * @see drizzled/plugin/transaction_applier.h
28
28
 */
29
29
 
30
30
#ifndef DRIZZLE_PLUGIN_DEFAULT_REPLICATOR_H
32
32
 
33
33
#include <drizzled/server_includes.h>
34
34
#include <drizzled/atomics.h>
35
 
#include <drizzled/plugin/command_replicator.h>
36
 
#include <drizzled/plugin/command_applier.h>
 
35
#include <drizzled/plugin/transaction_replicator.h>
37
36
 
38
37
#include <vector>
39
38
#include <string>
40
39
 
41
 
class DefaultReplicator: public drizzled::plugin::CommandReplicator
 
40
class DefaultReplicator: public drizzled::plugin::TransactionReplicator
42
41
{
43
42
public:
44
43
  DefaultReplicator() {}
46
45
  /** Destructor */
47
46
  ~DefaultReplicator() {}
48
47
  /**
49
 
   * Replicate a Command message to an Applier.
 
48
   * Replicate a Transaction message to an Applier.
50
49
   *
51
50
   * @note
52
51
   *
58
57
   * the supplied message to their own controlled memory storage
59
58
   * area.
60
59
   *
61
 
   * @param Command message to be replicated
 
60
   * @param Transaction message to be replicated
62
61
   */
63
 
  void replicate(drizzled::plugin::CommandApplier *in_applier, drizzled::message::Command &to_replicate);
 
62
  void replicate(drizzled::plugin::TransactionApplier *in_applier, drizzled::message::Transaction &to_replicate);
64
63
  
65
64
  /** 
66
65
   * Returns whether the default replicator is active.