net.sf.jso.transaction
Interface Transaction

All Known Implementing Classes:
JSOTransaction

public interface Transaction

Interface used for transaction control over a transaction manager.


Field Summary
static int STATUS_ACTIVE
          Status of an active transaction.
static int STATUS_COMMITTED
          Status of a transaction that comitted.
static int STATUS_NOT_ACTIVE
          Status of a non active transaction.
static int STATUS_ROLLEDBACK
          Status of a transaction that rolled back.
 
Method Summary
 void begin()
          Begins the transaction.
 void commit()
          Commits the transaction.
 int getStatus()
          Returns transaction status.
 long getTimeout()
          Gets transaction timeout.
 boolean isActive()
          Indicates if the transaction is active.
 void rollback()
          Rolls back the transaction.
 void setTimeout(long milliseconds)
          Sets transaction timeout for acquiring a lock.
 

Field Detail

STATUS_NOT_ACTIVE

public static final int STATUS_NOT_ACTIVE
Status of a non active transaction.

See Also:
Constant Field Values

STATUS_ACTIVE

public static final int STATUS_ACTIVE
Status of an active transaction.

See Also:
Constant Field Values

STATUS_COMMITTED

public static final int STATUS_COMMITTED
Status of a transaction that comitted.

See Also:
Constant Field Values

STATUS_ROLLEDBACK

public static final int STATUS_ROLLEDBACK
Status of a transaction that rolled back.

See Also:
Constant Field Values
Method Detail

isActive

public boolean isActive()
Indicates if the transaction is active. The transaction is considered active if neither commit() nor rollback() have been called.

Returns:
true if the transaction is still active; false otherwise.

begin

public void begin()
           throws StorageException
Begins the transaction.

Throws:
StorageException

commit

public void commit()
            throws StorageException
Commits the transaction.

Throws:
StorageException

rollback

public void rollback()
              throws StorageException
Rolls back the transaction.

Throws:
StorageException

setTimeout

public void setTimeout(long milliseconds)
Sets transaction timeout for acquiring a lock. If timeout happens transaction will automatically rollback.

Parameters:
milliseconds - Number of milliseconds for timeout. Values lesser than 1 millisecond mean no timeout should be used.

getTimeout

public long getTimeout()
Gets transaction timeout.

Returns:
Number of milliseconds for timeout. Values lesser than 1 millisecond mean no timeout is being used.

getStatus

public int getStatus()
Returns transaction status.

Returns:
Transaction status.