/** * Alipay.com Inc. * Copyright (c) 2004-2012 All Rights Reserved. */ package com.alipay.zdal.datasource.resource.spi; import com.alipay.zdal.datasource.resource.ResourceException; /** * The LocalTransaction interface is for transactions which are managed locally * to the underlying resource and don't need an external transaction manager. * * If a resource implements the LocalTransaction interface then the Application * Server can choose to do local transacton optimization. */ public interface LocalTransaction { /** * Begins a local transaction on the userlying resource. * * @throws ResourceException for a generic error * @throws LocalTransactionException for an error in transaciton management * @throws ResourceAdapterInternalException for an internal error in the resource adapter * @throws EISSystemException for an EIS specific exception */ public void begin() throws ResourceException; /** * Commits a local transaction on the userlying resource. * * @throws ResourceException for a generic error * @throws LocalTransactionException for an error in transaciton management * @throws ResourceAdapterInternalException for an internal error in the resource adapter * @throws EISSystemException for an EIS specific exception */ public void commit() throws ResourceException; /** * Rolls back a local transaction on the userlying resource. * * @throws ResourceException for a generic error * @throws LocalTransactionException for an error in transaciton management * @throws ResourceAdapterInternalException for an internal error in the resource adapter * @throws EISSystemException for an EIS specific exception */ public void rollback() throws ResourceException; }