org.springframework.transaction.interceptor
Class DefaultTransactionAttribute

java.lang.Object
  extended by org.springframework.transaction.support.DefaultTransactionDefinition
      extended by org.springframework.transaction.interceptor.DefaultTransactionAttribute
All Implemented Interfaces:
Serializable, TransactionAttribute, TransactionDefinition
Direct Known Subclasses:
RuleBasedTransactionAttribute

public class DefaultTransactionAttribute
extends DefaultTransactionDefinition
implements TransactionAttribute

Transaction attribute that takes the EJB approach to rolling back on runtime, but not checked, exceptions.

Since:
16.03.2003
Author:
Rod Johnson
See Also:
Serialized Form

Field Summary
static String COMMIT_RULE_PREFIX
          Prefix for commit-on-exception rules in description strings
static String ROLLBACK_RULE_PREFIX
          Prefix for rollback-on-exception rules in description strings
 
Fields inherited from class org.springframework.transaction.support.DefaultTransactionDefinition
READ_ONLY_MARKER, TIMEOUT_PREFIX
 
Fields inherited from interface org.springframework.transaction.TransactionDefinition
ISOLATION_CONSTANT_PREFIX, ISOLATION_DEFAULT, ISOLATION_READ_COMMITTED, ISOLATION_READ_UNCOMMITTED, ISOLATION_REPEATABLE_READ, ISOLATION_SERIALIZABLE, PROPAGATION_CONSTANT_PREFIX, PROPAGATION_MANDATORY, PROPAGATION_NESTED, PROPAGATION_NEVER, PROPAGATION_NOT_SUPPORTED, PROPAGATION_REQUIRED, PROPAGATION_REQUIRES_NEW, PROPAGATION_SUPPORTS, TIMEOUT_DEFAULT
 
Constructor Summary
DefaultTransactionAttribute()
          Create a new DefaultTransactionAttribute, with default settings.
DefaultTransactionAttribute(int propagationBehavior)
          Create a new DefaultTransactionAttribute with the the given propagation behavior.
DefaultTransactionAttribute(TransactionAttribute other)
          Copy constructor.
 
Method Summary
 boolean rollbackOn(Throwable ex)
          Default behavior is as with EJB: rollback on unchecked exception.
 String toString()
          Return a description of this transaction attribute.
 
Methods inherited from class org.springframework.transaction.support.DefaultTransactionDefinition
equals, getDefinitionDescription, getIsolationLevel, getName, getPropagationBehavior, getTimeout, hashCode, isReadOnly, setIsolationLevel, setIsolationLevelName, setName, setPropagationBehavior, setPropagationBehaviorName, setReadOnly, setTimeout
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.springframework.transaction.TransactionDefinition
getIsolationLevel, getName, getPropagationBehavior, getTimeout, isReadOnly
 

Field Detail

ROLLBACK_RULE_PREFIX

public static final String ROLLBACK_RULE_PREFIX
Prefix for rollback-on-exception rules in description strings

See Also:
Constant Field Values

COMMIT_RULE_PREFIX

public static final String COMMIT_RULE_PREFIX
Prefix for commit-on-exception rules in description strings

See Also:
Constant Field Values
Constructor Detail

DefaultTransactionAttribute

public DefaultTransactionAttribute()
Create a new DefaultTransactionAttribute, with default settings. Can be modified through bean property setters.

See Also:
DefaultTransactionDefinition.setPropagationBehavior(int), DefaultTransactionDefinition.setIsolationLevel(int), DefaultTransactionDefinition.setTimeout(int), DefaultTransactionDefinition.setReadOnly(boolean), DefaultTransactionDefinition.setName(java.lang.String)

DefaultTransactionAttribute

public DefaultTransactionAttribute(TransactionAttribute other)
Copy constructor. Definition can be modified through bean property setters.

See Also:
DefaultTransactionDefinition.setPropagationBehavior(int), DefaultTransactionDefinition.setIsolationLevel(int), DefaultTransactionDefinition.setTimeout(int), DefaultTransactionDefinition.setReadOnly(boolean), DefaultTransactionDefinition.setName(java.lang.String)

DefaultTransactionAttribute

public DefaultTransactionAttribute(int propagationBehavior)
Create a new DefaultTransactionAttribute with the the given propagation behavior. Can be modified through bean property setters.

Parameters:
propagationBehavior - one of the propagation constants in the TransactionDefinition interface
See Also:
DefaultTransactionDefinition.setIsolationLevel(int), DefaultTransactionDefinition.setTimeout(int), DefaultTransactionDefinition.setReadOnly(boolean)
Method Detail

rollbackOn

public boolean rollbackOn(Throwable ex)
Default behavior is as with EJB: rollback on unchecked exception. Additionally attempt to rollback on Error. Consistent with TransactionTemplate's behavior.

Specified by:
rollbackOn in interface TransactionAttribute
Parameters:
ex - the exception to evaluate
Returns:
whether to perform a rollback or not

toString

public String toString()
Return a description of this transaction attribute. The format matches the one used by TransactionAttributeEditor, to be able to feed toString results into TransactionAttribute properties.

Overrides:
toString in class DefaultTransactionDefinition
See Also:
TransactionAttributeEditor


Copyright (c) 2002-2007 The Spring Framework Project.