2
2
* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
4
4
* Copyright (C) 2008 Sun Microsystems
5
* Copyright (c) Jay Pipes <jaypipes@gmail.com>
5
* Copyright (c) 2010 Jay Pipes <jaypipes@gmail.com>
7
7
* This program is free software; you can redistribute it and/or modify
8
8
* it under the terms of the GNU General Public License as published by
87
89
* Put in assert()s to test this.
89
91
* @param[in] Session pointer
90
* @param[in] Resource which will be participating
92
* @param[in] Descriptor for the resource which will be participating
93
* @param[in] Pointer to the TransactionalStorageEngine resource
92
95
void registerResourceForStatement(Session *session,
96
plugin::MonitoredInTransaction *monitored,
93
97
plugin::TransactionalStorageEngine *engine);
100
* Marks an XA storage engine as participating in a statement
105
* This method is idempotent
109
* This method should not be called more than once per resource
110
* per statement, and therefore should not need to be idempotent.
111
* Put in assert()s to test this.
113
* @param[in] Session pointer
114
* @param[in] Descriptor for the resource which will be participating
115
* @param[in] Pointer to the TransactionalStorageEngine resource
116
* @param[in] Pointer to the XaResourceManager resource manager
118
void registerResourceForStatement(Session *session,
119
plugin::MonitoredInTransaction *monitored,
120
plugin::TransactionalStorageEngine *engine,
121
plugin::XaResourceManager *resource_manager);
96
124
* Registers a resource manager in the "normal" transaction.
117
145
* TransactionServices::registerResourceForStatement method.
119
147
void registerResourceForTransaction(Session *session,
148
plugin::MonitoredInTransaction *monitored,
120
149
plugin::TransactionalStorageEngine *engine);
150
void registerResourceForTransaction(Session *session,
151
plugin::MonitoredInTransaction *monitored,
152
plugin::TransactionalStorageEngine *engine,
153
plugin::XaResourceManager *resource_manager);
123
156
} /* namespace drizzled */