/
OracleLocalTransaction.java
116 lines (115 loc) · 4.57 KB
/
OracleLocalTransaction.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
/* */ package oracle.jdbc.connector;
/* */
/* */ import java.sql.Connection;
/* */ import java.sql.SQLException;
/* */ import javax.resource.ResourceException;
/* */ import javax.resource.spi.EISSystemException;
/* */ import javax.resource.spi.IllegalStateException;
/* */ import javax.resource.spi.LocalTransaction;
/* */ import javax.resource.spi.LocalTransactionException;
/* */ import oracle.jdbc.internal.OracleConnection;
/* */
/* */ public class OracleLocalTransaction
/* */ implements LocalTransaction
/* */ {
/* 33 */ private OracleManagedConnection managedConnection = null;
/* 34 */ private Connection connection = null;
/* 35 */ boolean isBeginCalled = false;
/* */ private static final String RAERR_LTXN_COMMIT = "commit without begin";
/* */ private static final String RAERR_LTXN_ROLLBACK = "rollback without begin";
/* 207 */ private static final String _Copyright_2004_Oracle_All_Rights_Reserved_ = null;
/* */ public static final boolean TRACE = false;
/* */ public static final boolean PRIVATE_TRACE = false;
/* */ public static final String BUILD_DATE = "Tue_Jan_24_08:54:35_PST_2006";
/* */
/* */ OracleLocalTransaction(OracleManagedConnection paramOracleManagedConnection)
/* */ throws ResourceException
/* */ {
/* 50 */ this.managedConnection = paramOracleManagedConnection;
/* 51 */ this.connection = paramOracleManagedConnection.getPhysicalConnection();
/* 52 */ this.isBeginCalled = false;
/* */ }
/* */
/* */ public void begin()
/* */ throws ResourceException
/* */ {
/* */ try
/* */ {
/* 78 */ if (((OracleConnection)this.connection).getTxnMode() == 1)
/* */ {
/* 81 */ IllegalStateException localIllegalStateException = new IllegalStateException("Could not start a new transaction inside an active transaction");
/* */
/* 84 */ throw localIllegalStateException;
/* */ }
/* */
/* 87 */ if (this.connection.getAutoCommit()) {
/* 88 */ this.connection.setAutoCommit(false);
/* */ }
/* 90 */ this.isBeginCalled = true;
/* */ }
/* */ catch (SQLException localSQLException)
/* */ {
/* 97 */ EISSystemException localEISSystemException = new EISSystemException("SQLException: " + localSQLException.getMessage());
/* */
/* 100 */ localEISSystemException.setLinkedException(localSQLException);
/* */
/* 102 */ throw localEISSystemException;
/* */ }
/* */
/* 108 */ this.managedConnection.eventOccurred(2);
/* */ }
/* */
/* */ public void commit()
/* */ throws ResourceException
/* */ {
/* 129 */ if (!this.isBeginCalled) {
/* 130 */ throw new LocalTransactionException("begin() must be called before commit()", "commit without begin");
/* */ }
/* */
/* */ try
/* */ {
/* 135 */ this.connection.commit();
/* */ }
/* */ catch (SQLException localSQLException)
/* */ {
/* 142 */ EISSystemException localEISSystemException = new EISSystemException("SQLException: " + localSQLException.getMessage());
/* */
/* 145 */ localEISSystemException.setLinkedException(localSQLException);
/* */
/* 147 */ throw localEISSystemException;
/* */ }
/* */
/* 153 */ this.isBeginCalled = false;
/* */
/* 155 */ this.managedConnection.eventOccurred(3);
/* */ }
/* */
/* */ public void rollback()
/* */ throws ResourceException
/* */ {
/* 176 */ if (!this.isBeginCalled) {
/* 177 */ throw new LocalTransactionException("begin() must be called before rollback()", "rollback without begin");
/* */ }
/* */
/* */ try
/* */ {
/* 182 */ this.connection.rollback();
/* */ }
/* */ catch (SQLException localSQLException)
/* */ {
/* 189 */ EISSystemException localEISSystemException = new EISSystemException("SQLException: " + localSQLException.getMessage());
/* */
/* 192 */ localEISSystemException.setLinkedException(localSQLException);
/* */
/* 194 */ throw localEISSystemException;
/* */ }
/* */
/* 200 */ this.isBeginCalled = false;
/* */
/* 202 */ this.managedConnection.eventOccurred(4);
/* */ }
/* */ }
/* Location: /Users/admin/.m2/repository/com/alibaba/external/jdbc.oracle/10.2.0.2/jdbc.oracle-10.2.0.2.jar
* Qualified Name: oracle.jdbc.connector.OracleLocalTransaction
* JD-Core Version: 0.6.0
*/