~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/plugin/xa_resource_manager.cc

  • Committer: Olaf van der Spek
  • Date: 2011-07-05 18:15:41 UTC
  • mto: This revision was merged to the branch mainline in revision 2384.
  • Revision ID: olafvdspek@gmail.com-20110705181541-t5gdqo5ilg64jac6
Use boost::to_upper

Show diffs side-by-side

added added

removed removed

Lines of Context:
39
39
namespace drizzled {
40
40
namespace plugin {
41
41
 
42
 
static std::vector<XaResourceManager *> xa_resource_managers;
 
42
typedef std::vector<XaResourceManager*> xa_resource_managers_t;
 
43
static xa_resource_managers_t xa_resource_managers;
43
44
 
44
45
int XaResourceManager::commitOrRollbackXID(XID *xid, bool commit)
45
46
{
46
47
  std::vector<int> results;
47
 
 
48
 
  if (commit)
49
 
    transform(xa_resource_managers.begin(), xa_resource_managers.end(), results.begin(),
50
 
              std::bind2nd(std::mem_fun(&XaResourceManager::xaCommitXid), xid));
51
 
  else
52
 
    transform(xa_resource_managers.begin(), xa_resource_managers.end(), results.begin(),
53
 
              std::bind2nd(std::mem_fun(&XaResourceManager::xaRollbackXid), xid));
54
 
 
55
 
  if (std::find_if(results.begin(), results.end(), std::bind2nd(std::equal_to<int>(),0)) == results.end())
56
 
    return 1;
57
 
 
58
 
  return 0;
 
48
  BOOST_FOREACH(XaResourceManager* it, xa_resource_managers)
 
49
    results.push_back(commit ? it->xaCommitXid(xid) : it->xaRollbackXid(xid));
 
50
  return std::find(results.begin(), results.end(), 0) == results.end();
59
51
}
60
52
 
61
53
/**