| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.springframework.transaction.support.DefaultTransactionDefinition
org.springframework.transaction.interceptor.DefaultTransactionAttribute
org.springframework.transaction.interceptor.RuleBasedTransactionAttribute
public class RuleBasedTransactionAttribute
TransactionAttribute implementation that works out whether a given exception should cause transaction rollback by applying a number of rollback rules, both positive and negative. If no rules are relevant to the exception, it behaves like DefaultTransactionAttribute (rolling back on runtime exceptions).
TransactionAttributeEditor creates objects of this class.
TransactionAttributeEditor, 
Serialized Form| Field Summary | |
|---|---|
| static String | PREFIX_COMMIT_RULEPrefix for commit-on-exception rules in description strings | 
| static String | PREFIX_ROLLBACK_RULEPrefix for rollback-on-exception rules in description strings | 
| Fields inherited from class org.springframework.transaction.support.DefaultTransactionDefinition | 
|---|
| PREFIX_ISOLATION, PREFIX_PROPAGATION, PREFIX_TIMEOUT, READ_ONLY_MARKER | 
| Fields inherited from interface org.springframework.transaction.TransactionDefinition | 
|---|
| ISOLATION_DEFAULT, ISOLATION_READ_COMMITTED, ISOLATION_READ_UNCOMMITTED, ISOLATION_REPEATABLE_READ, ISOLATION_SERIALIZABLE, PROPAGATION_MANDATORY, PROPAGATION_NESTED, PROPAGATION_NEVER, PROPAGATION_NOT_SUPPORTED, PROPAGATION_REQUIRED, PROPAGATION_REQUIRES_NEW, PROPAGATION_SUPPORTS, TIMEOUT_DEFAULT | 
| Constructor Summary | |
|---|---|
| RuleBasedTransactionAttribute()Create a new RuleBasedTransactionAttribute, with default settings. | |
| RuleBasedTransactionAttribute(int propagationBehavior,
                              List rollbackRules)Create a new DefaultTransactionAttribute with the the given propagation behavior. | |
| RuleBasedTransactionAttribute(RuleBasedTransactionAttribute other)Copy constructor. | |
| Method Summary | |
|---|---|
|  List | getRollbackRules()Return the list of RollbackRuleAttributeobjects
 (nevernull). | 
|  boolean | rollbackOn(Throwable ex)Winning rule is the shallowest rule (that is, the closest in the inheritance hierarchy to the exception). | 
|  void | setRollbackRules(List rollbackRules)Set the list of RollbackRuleAttributeobjects
 (and/orNoRollbackRuleAttributeobjects) to apply. | 
|  String | toString()Return an identifying description for this transaction definition. | 
| 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 | 
|---|
public static final String PREFIX_ROLLBACK_RULE
public static final String PREFIX_COMMIT_RULE
| Constructor Detail | 
|---|
public RuleBasedTransactionAttribute()
DefaultTransactionDefinition.setPropagationBehavior(int), 
DefaultTransactionDefinition.setIsolationLevel(int), 
DefaultTransactionDefinition.setTimeout(int), 
DefaultTransactionDefinition.setReadOnly(boolean), 
DefaultTransactionDefinition.setName(java.lang.String), 
setRollbackRules(java.util.List)public RuleBasedTransactionAttribute(RuleBasedTransactionAttribute other)
DefaultTransactionDefinition.setPropagationBehavior(int), 
DefaultTransactionDefinition.setIsolationLevel(int), 
DefaultTransactionDefinition.setTimeout(int), 
DefaultTransactionDefinition.setReadOnly(boolean), 
DefaultTransactionDefinition.setName(java.lang.String), 
setRollbackRules(java.util.List)
public RuleBasedTransactionAttribute(int propagationBehavior,
                                     List rollbackRules)
propagationBehavior - one of the propagation constants in the
 TransactionDefinition interfacerollbackRules - the list of RollbackRuleAttributes to applyDefaultTransactionDefinition.setIsolationLevel(int), 
DefaultTransactionDefinition.setTimeout(int), 
DefaultTransactionDefinition.setReadOnly(boolean)| Method Detail | 
|---|
public void setRollbackRules(List rollbackRules)
RollbackRuleAttribute objects
 (and/or NoRollbackRuleAttribute objects) to apply.
RollbackRuleAttribute, 
NoRollbackRuleAttributepublic List getRollbackRules()
RollbackRuleAttribute objects
 (never null).
public boolean rollbackOn(Throwable ex)
rollbackOn in interface TransactionAttributerollbackOn in class DefaultTransactionAttributeex - the exception to evaluate
TransactionAttribute.rollbackOn(java.lang.Throwable)public String toString()
DefaultTransactionDefinitionThe format matches the one used by
 TransactionAttributeEditor,
 to be able to feed toString results into bean properties of type
 TransactionAttribute.
 
Has to be overridden in subclasses for correct equals
 and hashCode behavior. Alternatively, DefaultTransactionDefinition.equals(java.lang.Object)
 and DefaultTransactionDefinition.hashCode() can be overridden themselves.
toString in class DefaultTransactionDefinitionDefaultTransactionDefinition.getDefinitionDescription(), 
TransactionAttributeEditor| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||