KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > tc > objectserver > tx > TransactionState


1 /*
2  * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright
3  * notice. All rights reserved.
4  */

5 package com.tc.objectserver.tx;
6
7 public class TransactionState {
8   private static final int APPLY_STARTED = 0x01;
9   private static final int APPLY_COMMITTED = 0x02;
10   private static final int BROADCAST_COMPLETED = 0x04;
11   private static final int TXN_RELAYED = 0x08;
12
13   private static final int TXN_PROCESSING_COMPLETE = (APPLY_COMMITTED | APPLY_STARTED | BROADCAST_COMPLETED | TXN_RELAYED);
14
15   private int state = 0x00;
16
17   public void applyAndCommitSkipped() {
18     state |= APPLY_STARTED | APPLY_COMMITTED;
19   }
20
21   public void applyStarted() {
22     state |= APPLY_STARTED;
23   }
24
25   public boolean isComplete() {
26     return (state == TXN_PROCESSING_COMPLETE);
27   }
28
29   public void broadcastCompleted() {
30     state |= BROADCAST_COMPLETED;
31   }
32
33   public void applyCommitted() {
34     state |= APPLY_COMMITTED;
35   }
36
37   public String JavaDoc toString() {
38     return "TransactionState = [ " + ((state & APPLY_STARTED) == APPLY_STARTED ? " APPLY_STARTED : " : " : ")
39            + ((state & APPLY_COMMITTED) == APPLY_COMMITTED ? " APPLY_COMMITED : " : " : ")
40            + ((state & TXN_RELAYED) == TXN_RELAYED ? " TXN_RELAYED : " : " : ")
41            + ((state & BROADCAST_COMPLETED) == BROADCAST_COMPLETED ? " BROADCAST_COMPLETE } " : " ]");
42   }
43
44   public void relayTransactionComplete() {
45     state |= TXN_RELAYED;
46   }
47
48 }
Popular Tags