1 #ifndef TRANSACTIONSTATUS_H
2 #define TRANSACTIONSTATUS_H
4 #define TransactionStatus_StatusAborted 1
5 #define TransactionStatus_StatusPending 2
6 #define TransactionStatus_StatusCommitted 3
7 #define TransactionStatus_StatusRetrying 4
8 #define TransactionStatus_StatusSentPartial 5
9 #define TransactionStatus_StatusSentFully 6
10 #define TransactionStatus_StatusNoEffect 10
12 class TransactionStatus {
15 bool applicationReleased;
17 int64_t transactionSequenceNumber;
21 TransactionStatus(char _status, int64_t _arbitrator) :
23 applicationReleased(false),
24 wasSentInChain(false),
25 transactionSequenceNumber(0),
26 arbitrator(_arbitrator) {
29 char getStatus() { return status; }
30 void setStatus(char _status) { status = _status; }
31 int64_t getTransactionSequenceNumber() { return transactionSequenceNumber; }
32 void setTransactionSequenceNumber(int64_t _transactionSequenceNumber) { transactionSequenceNumber = _transactionSequenceNumber; }
33 int64_t getTransactionArbitrator() { return arbitrator; }
34 void release() { applicationReleased = true;}
35 bool getReleased() { return applicationReleased;}