1 /**
2 *
3 * Copyright 2003-2004 The Apache Software Foundation
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18
19
20
21
22
23
24 package javax.transaction;
25
26 import javax.transaction.xa.XAResource;
27
28 /**
29 *
30 *
31 *
32 * @version $Rev: 46019 $ $Date: 2004-09-14 02:56:06 -0700 (Tue, 14 Sep 2004) $
33 */
34 public interface Transaction {
35 void commit() throws HeuristicMixedException, HeuristicRollbackException, RollbackException, SecurityException, SystemException;
36
37 boolean delistResource(XAResource xaRes, int flag) throws IllegalStateException, SystemException;
38
39 boolean enlistResource(XAResource xaRes) throws IllegalStateException, RollbackException, SystemException;
40
41 int getStatus() throws SystemException;
42
43 void registerSynchronization(Synchronization synch) throws IllegalStateException, RollbackException, SystemException;
44
45 void rollback() throws IllegalStateException, SystemException;
46
47 void setRollbackOnly() throws IllegalStateException, SystemException;
48 }