Add @Override annotations to test sources

Issue: SPR-10129
This commit is contained in:
Chris Beams
2012-12-28 13:59:24 +01:00
parent 6f0c7eb8c1
commit 4c8cd7b0bd
797 changed files with 4745 additions and 0 deletions

View File

@@ -51,12 +51,14 @@ public class DerivedTestBean extends TestBean implements Serializable, BeanNameA
}
@Override
public void setBeanName(String beanName) {
if (this.beanName == null || beanName == null) {
this.beanName = beanName;
}
}
@Override
public String getBeanName() {
return beanName;
}
@@ -75,10 +77,12 @@ public class DerivedTestBean extends TestBean implements Serializable, BeanNameA
}
@Override
public void destroy() {
this.destroyed = true;
}
@Override
public boolean wasDestroyed() {
return destroyed;
}

View File

@@ -37,6 +37,7 @@ public class NestedTestBean implements INestedTestBean {
this.company = (company != null ? company : "");
}
@Override
public String getCompany() {
return company;
}

View File

@@ -137,6 +137,7 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
}
@Override
public void setBeanName(String beanName) {
this.beanName = beanName;
}
@@ -145,6 +146,7 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
return beanName;
}
@Override
public void setBeanFactory(BeanFactory beanFactory) {
this.beanFactory = beanFactory;
}
@@ -161,10 +163,12 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
return postProcessed;
}
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@@ -180,10 +184,12 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
}
}
@Override
public int getAge() {
return age;
}
@Override
public void setAge(int age) {
this.age = age;
}
@@ -196,14 +202,17 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
this.jedi = jedi;
}
@Override
public ITestBean getSpouse() {
return (spouses != null ? spouses[0] : null);
}
@Override
public void setSpouse(ITestBean spouse) {
this.spouses = new ITestBean[] {spouse};
}
@Override
public ITestBean[] getSpouses() {
return spouses;
}
@@ -230,10 +239,12 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
this.country = country;
}
@Override
public String[] getStringArray() {
return stringArray;
}
@Override
public void setStringArray(String[] stringArray) {
this.stringArray = stringArray;
}
@@ -302,6 +313,7 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
this.someProperties = someProperties;
}
@Override
public INestedTestBean getDoctor() {
return doctor;
}
@@ -310,6 +322,7 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
this.doctor = doctor;
}
@Override
public INestedTestBean getLawyer() {
return lawyer;
}
@@ -342,6 +355,7 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
this.someBoolean = someBoolean;
}
@Override
public IndexedTestBean getNestedIndexedBean() {
return nestedIndexedBean;
}
@@ -370,18 +384,21 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
/**
* @see org.springframework.beans.ITestBean#exceptional(Throwable)
*/
@Override
public void exceptional(Throwable t) throws Throwable {
if (t != null) {
throw t;
}
}
@Override
public void unreliableFileOperation() throws IOException {
throw new IOException();
}
/**
* @see org.springframework.beans.ITestBean#returnsThis()
*/
@Override
public Object returnsThis() {
return this;
}
@@ -389,9 +406,11 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
/**
* @see org.springframework.beans.IOther#absquatulate()
*/
@Override
public void absquatulate() {
}
@Override
public int haveBirthday() {
return age++;
}
@@ -421,6 +440,7 @@ public class TestBean implements BeanNameAware, BeanFactoryAware, ITestBean, IOt
return this.age;
}
@Override
public int compareTo(Object other) {
if (this.name != null && other instanceof TestBean) {
return this.name.compareTo(((TestBean) other).getName());

View File

@@ -40,6 +40,7 @@ public class CollectingReaderEventListener implements ReaderEventListener {
private final List imports = new LinkedList();
@Override
public void defaultsRegistered(DefaultsDefinition defaultsDefinition) {
this.defaults.add(defaultsDefinition);
}
@@ -48,6 +49,7 @@ public class CollectingReaderEventListener implements ReaderEventListener {
return Collections.unmodifiableList(this.defaults);
}
@Override
public void componentRegistered(ComponentDefinition componentDefinition) {
this.componentDefinitions.put(componentDefinition.getName(), componentDefinition);
}
@@ -61,6 +63,7 @@ public class CollectingReaderEventListener implements ReaderEventListener {
return (ComponentDefinition[]) collection.toArray(new ComponentDefinition[collection.size()]);
}
@Override
public void aliasRegistered(AliasDefinition aliasDefinition) {
List aliases = (List) this.aliasMap.get(aliasDefinition.getBeanName());
if(aliases == null) {
@@ -75,6 +78,7 @@ public class CollectingReaderEventListener implements ReaderEventListener {
return aliases == null ? null : Collections.unmodifiableList(aliases);
}
@Override
public void importProcessed(ImportDefinition importDefinition) {
this.imports.add(importDefinition);
}

View File

@@ -167,12 +167,14 @@ public class PersistenceExceptionTranslationAdvisorTests extends TestCase {
this.runtimeException = rex;
}
@Override
public void noThrowsClause() {
if (runtimeException != null) {
throw runtimeException;
}
}
@Override
public void throwsPersistenceException() throws PersistenceException {
if (runtimeException != null) {
throw runtimeException;

View File

@@ -114,6 +114,7 @@ public class PersistenceExceptionTranslationPostProcessorTests extends TestCase
public static class RepositoryWithoutInterfaceAndOtherwiseAdvised extends StereotypedRepositoryInterfaceImpl
implements Additional {
@Override
public void additionalMethod() {
}
}

View File

@@ -270,6 +270,7 @@ public class DataAccessUtilsTests extends TestCase {
this.translations.put(in, out);
}
@Override
public DataAccessException translateExceptionIfPossible(RuntimeException ex) {
return (DataAccessException) translations.get(ex);
}

View File

@@ -81,6 +81,7 @@ public class CciLocalTransactionTests {
TransactionTemplate tt = new TransactionTemplate(tm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue("Has thread connection", TransactionSynchronizationManager.hasResource(connectionFactory));
CciTemplate ct = new CciTemplate(connectionFactory);
@@ -131,6 +132,7 @@ public class CciLocalTransactionTests {
try {
tt.execute(new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue("Has thread connection", TransactionSynchronizationManager.hasResource(connectionFactory));
CciTemplate ct = new CciTemplate(connectionFactory);

View File

@@ -153,6 +153,7 @@ public class CciTemplateTests {
CciTemplate ct = new CciTemplate(connectionFactory);
ct.setOutputRecordCreator(new RecordCreator() {
@Override
public Record createRecord(RecordFactory recordFactory) {
assertTrue(recordFactory instanceof NotSupportedRecordFactory);
return outputRecord;

View File

@@ -233,10 +233,12 @@ public class EisOperationTests {
this.callDetector = callDetector;
}
@Override
protected Record createInputRecord(RecordFactory recordFactory, Object inputObject) {
return this.callDetector.callCreateInputRecord(recordFactory, inputObject);
}
@Override
protected Object extractOutputData(Record outputRecord) throws ResourceException {
return this.callDetector.callExtractOutputData(outputRecord);
}

View File

@@ -70,6 +70,7 @@ public class ExpectedLookupTemplate extends JndiTemplate {
* return the object provided in the constructor. If the name is
* unexpected, a respective NamingException gets thrown.
*/
@Override
public Object lookup(String name) throws NamingException {
Object object = this.jndiObjects.get(name);
if (object == null) {

View File

@@ -91,6 +91,7 @@ public class SimpleNamingContext implements Context {
// Actual implementations of Context methods follow
@Override
public NamingEnumeration<NameClassPair> list(String root) throws NamingException {
if (logger.isDebugEnabled()) {
logger.debug("Listing name/class pairs under [" + root + "]");
@@ -98,6 +99,7 @@ public class SimpleNamingContext implements Context {
return new NameClassPairEnumeration(this, root);
}
@Override
public NamingEnumeration<Binding> listBindings(String root) throws NamingException {
if (logger.isDebugEnabled()) {
logger.debug("Listing bindings under [" + root + "]");
@@ -111,6 +113,7 @@ public class SimpleNamingContext implements Context {
* Will be used by any standard InitialContext JNDI lookups.
* @throws javax.naming.NameNotFoundException if the object could not be found
*/
@Override
public Object lookup(String lookupName) throws NameNotFoundException {
String name = this.root + lookupName;
if (logger.isDebugEnabled()) {
@@ -136,6 +139,7 @@ public class SimpleNamingContext implements Context {
return found;
}
@Override
public Object lookupLink(String name) throws NameNotFoundException {
return lookup(name);
}
@@ -147,6 +151,7 @@ public class SimpleNamingContext implements Context {
* Use SimpleNamingContextBuilder to set up JNDI bindings then.
* @see org.springframework.mock.jndi.SimpleNamingContextBuilder#bind
*/
@Override
public void bind(String name, Object obj) {
if (logger.isInfoEnabled()) {
logger.info("Static JNDI binding: [" + this.root + name + "] = [" + obj + "]");
@@ -154,6 +159,7 @@ public class SimpleNamingContext implements Context {
this.boundObjects.put(this.root + name, obj);
}
@Override
public void unbind(String name) {
if (logger.isInfoEnabled()) {
logger.info("Static JNDI remove: [" + this.root + name + "]");
@@ -161,16 +167,19 @@ public class SimpleNamingContext implements Context {
this.boundObjects.remove(this.root + name);
}
@Override
public void rebind(String name, Object obj) {
bind(name, obj);
}
@Override
public void rename(String oldName, String newName) throws NameNotFoundException {
Object obj = lookup(oldName);
unbind(oldName);
bind(newName, obj);
}
@Override
public Context createSubcontext(String name) {
String subcontextName = this.root + name;
if (!subcontextName.endsWith("/")) {
@@ -181,84 +190,104 @@ public class SimpleNamingContext implements Context {
return subcontext;
}
@Override
public void destroySubcontext(String name) {
unbind(name);
}
@Override
public String composeName(String name, String prefix) {
return prefix + name;
}
@Override
public Hashtable<String, Object> getEnvironment() {
return this.environment;
}
@Override
public Object addToEnvironment(String propName, Object propVal) {
return this.environment.put(propName, propVal);
}
@Override
public Object removeFromEnvironment(String propName) {
return this.environment.remove(propName);
}
@Override
public void close() {
}
// Unsupported methods follow: no support for javax.naming.Name
@Override
public NamingEnumeration<NameClassPair> list(Name name) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public NamingEnumeration<Binding> listBindings(Name name) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public Object lookup(Name name) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public Object lookupLink(Name name) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public void bind(Name name, Object obj) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public void unbind(Name name) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public void rebind(Name name, Object obj) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public void rename(Name oldName, Name newName) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public Context createSubcontext(Name name) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public void destroySubcontext(Name name) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public String getNameInNamespace() throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public NameParser getNameParser(Name name) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public NameParser getNameParser(String name) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@Override
public Name composeName(Name name, Name prefix) throws NamingException {
throw new OperationNotSupportedException("SimpleNamingContext does not support [javax.naming.Name]");
}
@@ -298,22 +327,27 @@ public class SimpleNamingContext implements Context {
protected abstract T createObject(String strippedName, Object obj);
@Override
public boolean hasMore() {
return this.iterator.hasNext();
}
@Override
public T next() {
return this.iterator.next();
}
@Override
public boolean hasMoreElements() {
return this.iterator.hasNext();
}
@Override
public T nextElement() {
return this.iterator.next();
}
@Override
public void close() {
}
}
@@ -325,6 +359,7 @@ public class SimpleNamingContext implements Context {
super(context, root);
}
@Override
protected NameClassPair createObject(String strippedName, Object obj) {
return new NameClassPair(strippedName, obj.getClass().getName());
}
@@ -337,6 +372,7 @@ public class SimpleNamingContext implements Context {
super(context, root);
}
@Override
protected Binding createObject(String strippedName, Object obj) {
return new Binding(strippedName, obj);
}

View File

@@ -192,6 +192,7 @@ public class SimpleNamingContextBuilder implements InitialContextFactoryBuilder
* creating a new SimpleNamingContext instance.
* @see SimpleNamingContext
*/
@Override
public InitialContextFactory createInitialContextFactory(Hashtable<?,?> environment) {
if (activated == null && environment != null) {
Object icf = environment.get(Context.INITIAL_CONTEXT_FACTORY);
@@ -225,6 +226,7 @@ public class SimpleNamingContextBuilder implements InitialContextFactoryBuilder
// Default case...
return new InitialContextFactory() {
@Override
@SuppressWarnings("unchecked")
public Context getInitialContext(Hashtable<?,?> environment) {
return new SimpleNamingContext("", boundObjects, (Hashtable<String, Object>) environment);

View File

@@ -32,21 +32,25 @@ public class CallCountingTransactionManager extends AbstractPlatformTransactionM
public int rollbacks;
public int inflight;
@Override
protected Object doGetTransaction() {
return new Object();
}
@Override
protected void doBegin(Object transaction, TransactionDefinition definition) {
this.lastDefinition = definition;
++begun;
++inflight;
}
@Override
protected void doCommit(DefaultTransactionStatus status) {
++commits;
--inflight;
}
@Override
protected void doRollback(DefaultTransactionStatus status) {
++rollbacks;
--inflight;

View File

@@ -112,6 +112,7 @@ public class JndiJtaTransactionManagerTests extends TestCase {
assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
@@ -157,6 +158,7 @@ public class JndiJtaTransactionManagerTests extends TestCase {
assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
@@ -206,6 +208,7 @@ public class JndiJtaTransactionManagerTests extends TestCase {
assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
@@ -215,6 +218,7 @@ public class JndiJtaTransactionManagerTests extends TestCase {
ptm.setJndiTemplate(new ExpectedLookupTemplate("java:comp/UserTransaction", ut2));
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
@@ -232,6 +236,7 @@ public class JndiJtaTransactionManagerTests extends TestCase {
* Prevent any side-effects due to this test modifying ThreadLocals that might
* affect subsequent tests when all tests are run in the same JVM, as with Eclipse.
*/
@Override
protected void tearDown() {
assertTrue(TransactionSynchronizationManager.getResourceMap().isEmpty());
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());

View File

@@ -78,6 +78,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertNull(TransactionSynchronizationManager.getCurrentTransactionName());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
@@ -124,6 +125,7 @@ public class JtaTransactionManagerTests extends TestCase {
ptm.setTransactionSynchronization(JtaTransactionManager.SYNCHRONIZATION_ON_ACTUAL_TRANSACTION);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
@@ -156,6 +158,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
}
@@ -197,6 +200,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertNull(TransactionSynchronizationManager.getCurrentTransactionName());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -242,6 +246,7 @@ public class JtaTransactionManagerTests extends TestCase {
tt.setTimeout(10);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -277,6 +282,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
status.setRollbackOnly();
@@ -308,6 +314,7 @@ public class JtaTransactionManagerTests extends TestCase {
TransactionTemplate tt = new TransactionTemplate(ptm);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -342,6 +349,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -383,6 +391,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -421,6 +430,7 @@ public class JtaTransactionManagerTests extends TestCase {
TransactionTemplate tt = new TransactionTemplate(ptm);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -454,6 +464,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -500,6 +511,7 @@ public class JtaTransactionManagerTests extends TestCase {
TransactionTemplate tt = new TransactionTemplate(ptm);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -538,6 +550,7 @@ public class JtaTransactionManagerTests extends TestCase {
ptm.setTransactionSynchronization(JtaTransactionManager.SYNCHRONIZATION_ON_ACTUAL_TRANSACTION);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -566,6 +579,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
status.setRollbackOnly();
@@ -598,6 +612,7 @@ public class JtaTransactionManagerTests extends TestCase {
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_SUPPORTS);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -630,6 +645,7 @@ public class JtaTransactionManagerTests extends TestCase {
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_SUPPORTS);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
TransactionSynchronizationManager.registerSynchronization(synch);
@@ -657,6 +673,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
status.setRollbackOnly();
@@ -682,6 +699,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
status.setRollbackOnly();
@@ -713,6 +731,7 @@ public class JtaTransactionManagerTests extends TestCase {
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_NOT_SUPPORTED);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
status.setRollbackOnly();
@@ -757,6 +776,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertEquals("txName", TransactionSynchronizationManager.getCurrentTransactionName());
@@ -767,6 +787,7 @@ public class JtaTransactionManagerTests extends TestCase {
tt2.setReadOnly(true);
tt2.setName("txName2");
tt2.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertEquals("txName2", TransactionSynchronizationManager.getCurrentTransactionName());
@@ -804,6 +825,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
@@ -812,6 +834,7 @@ public class JtaTransactionManagerTests extends TestCase {
TransactionTemplate tt2 = new TransactionTemplate(ptm);
tt2.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
tt2.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
@@ -854,6 +877,7 @@ public class JtaTransactionManagerTests extends TestCase {
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
}
@@ -882,6 +906,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
}
@@ -921,6 +946,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
}
@@ -958,6 +984,7 @@ public class JtaTransactionManagerTests extends TestCase {
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
}
@@ -980,6 +1007,7 @@ public class JtaTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
}
});
@@ -1005,6 +1033,7 @@ public class JtaTransactionManagerTests extends TestCase {
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.setIsolationLevel(TransactionDefinition.ISOLATION_SERIALIZABLE);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
}
@@ -1029,6 +1058,7 @@ public class JtaTransactionManagerTests extends TestCase {
JtaTransactionManager ptm = newJtaTransactionManager(ut);
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
}
@@ -1057,6 +1087,7 @@ public class JtaTransactionManagerTests extends TestCase {
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_NESTED);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
}
@@ -1079,6 +1110,7 @@ public class JtaTransactionManagerTests extends TestCase {
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_NESTED);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
}
@@ -1106,6 +1138,7 @@ public class JtaTransactionManagerTests extends TestCase {
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_NESTED);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
}
@@ -1132,6 +1165,7 @@ public class JtaTransactionManagerTests extends TestCase {
JtaTransactionManager ptm = newJtaTransactionManager(ut);
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
}
@@ -1162,9 +1196,11 @@ public class JtaTransactionManagerTests extends TestCase {
JtaTransactionManager ptm = newJtaTransactionManager(ut);
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCompletion(int status) {
assertTrue("Correct completion status", status == TransactionSynchronization.STATUS_ROLLED_BACK);
}
@@ -1218,9 +1254,11 @@ public class JtaTransactionManagerTests extends TestCase {
TransactionTemplate tt = new TransactionTemplate(tm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCompletion(int status) {
assertTrue("Correct completion status", status == TransactionSynchronization.STATUS_ROLLED_BACK);
}
@@ -1266,9 +1304,11 @@ public class JtaTransactionManagerTests extends TestCase {
JtaTransactionManager ptm = newJtaTransactionManager(ut);
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCompletion(int status) {
assertTrue("Correct completion status", status == TransactionSynchronization.STATUS_UNKNOWN);
}
@@ -1302,9 +1342,11 @@ public class JtaTransactionManagerTests extends TestCase {
JtaTransactionManager ptm = newJtaTransactionManager(ut);
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCompletion(int status) {
assertTrue("Correct completion status", status == TransactionSynchronization.STATUS_UNKNOWN);
}
@@ -1338,9 +1380,11 @@ public class JtaTransactionManagerTests extends TestCase {
JtaTransactionManager ptm = newJtaTransactionManager(ut);
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
// something transactional
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCompletion(int status) {
assertTrue("Correct completion status", status == TransactionSynchronization.STATUS_UNKNOWN);
}
@@ -1373,8 +1417,10 @@ public class JtaTransactionManagerTests extends TestCase {
JtaTransactionManager ptm = newJtaTransactionManager(ut);
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCompletion(int status) {
assertTrue("Correct completion status", status == TransactionSynchronization.STATUS_UNKNOWN);
}
@@ -1404,6 +1450,7 @@ public class JtaTransactionManagerTests extends TestCase {
JtaTransactionManager ptm = newJtaTransactionManager(ut);
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
status.setRollbackOnly();
}
@@ -1430,9 +1477,11 @@ public class JtaTransactionManagerTests extends TestCase {
JtaTransactionManager ptm = newJtaTransactionManager(ut);
TransactionTemplate tt = new TransactionTemplate(ptm);
tt.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
status.setRollbackOnly();
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCompletion(int status) {
assertTrue("Correct completion status", status == TransactionSynchronization.STATUS_UNKNOWN);
}
@@ -1562,6 +1611,7 @@ public class JtaTransactionManagerTests extends TestCase {
* Prevent any side-effects due to this test modifying ThreadLocals that might
* affect subsequent tests when all tests are run in the same JVM, as with Eclipse.
*/
@Override
protected void tearDown() {
assertTrue(TransactionSynchronizationManager.getResourceMap().isEmpty());
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());

View File

@@ -30,6 +30,7 @@ public class MockCallbackPreferringTransactionManager implements CallbackPreferr
private TransactionStatus status;
@Override
public Object execute(TransactionDefinition definition, TransactionCallback callback) throws TransactionException {
this.definition = definition;
this.status = new SimpleTransactionStatus();
@@ -45,14 +46,17 @@ public class MockCallbackPreferringTransactionManager implements CallbackPreferr
}
@Override
public TransactionStatus getTransaction(TransactionDefinition definition) throws TransactionException {
throw new UnsupportedOperationException();
}
@Override
public void commit(TransactionStatus status) throws TransactionException {
throw new UnsupportedOperationException();
}
@Override
public void rollback(TransactionStatus status) throws TransactionException {
throw new UnsupportedOperationException();
}

View File

@@ -28,10 +28,12 @@ public class MockJtaTransaction implements javax.transaction.Transaction {
private Synchronization synchronization;
@Override
public int getStatus() {
return Status.STATUS_ACTIVE;
}
@Override
public void registerSynchronization(Synchronization synchronization) {
this.synchronization = synchronization;
}
@@ -40,20 +42,25 @@ public class MockJtaTransaction implements javax.transaction.Transaction {
return synchronization;
}
@Override
public boolean enlistResource(XAResource xaResource) {
return false;
}
@Override
public boolean delistResource(XAResource xaResource, int i) {
return false;
}
@Override
public void commit() {
}
@Override
public void rollback() {
}
@Override
public void setRollbackOnly() {
}

View File

@@ -46,14 +46,17 @@ class TestTransactionManager extends AbstractPlatformTransactionManager {
setTransactionSynchronization(SYNCHRONIZATION_NEVER);
}
@Override
protected Object doGetTransaction() {
return TRANSACTION;
}
@Override
protected boolean isExistingTransaction(Object transaction) {
return existingTransaction;
}
@Override
protected void doBegin(Object transaction, TransactionDefinition definition) {
if (!TRANSACTION.equals(transaction)) {
throw new IllegalArgumentException("Not the same transaction object");
@@ -64,6 +67,7 @@ class TestTransactionManager extends AbstractPlatformTransactionManager {
this.begin = true;
}
@Override
protected void doCommit(DefaultTransactionStatus status) {
if (!TRANSACTION.equals(status.getTransaction())) {
throw new IllegalArgumentException("Not the same transaction object");
@@ -71,6 +75,7 @@ class TestTransactionManager extends AbstractPlatformTransactionManager {
this.commit = true;
}
@Override
protected void doRollback(DefaultTransactionStatus status) {
if (!TRANSACTION.equals(status.getTransaction())) {
throw new IllegalArgumentException("Not the same transaction object");
@@ -78,6 +83,7 @@ class TestTransactionManager extends AbstractPlatformTransactionManager {
this.rollback = true;
}
@Override
protected void doSetRollbackOnly(DefaultTransactionStatus status) {
if (!TRANSACTION.equals(status.getTransaction())) {
throw new IllegalArgumentException("Not the same transaction object");

View File

@@ -139,6 +139,7 @@ public class TransactionSupportTests extends TestCase {
TestTransactionManager tm = new TestTransactionManager(false, true);
TransactionTemplate template = new TransactionTemplate(tm);
template.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
}
});
@@ -152,6 +153,7 @@ public class TransactionSupportTests extends TestCase {
MockCallbackPreferringTransactionManager ptm = new MockCallbackPreferringTransactionManager();
TransactionTemplate template = new TransactionTemplate(ptm);
template.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
}
});
@@ -165,6 +167,7 @@ public class TransactionSupportTests extends TestCase {
final RuntimeException ex = new RuntimeException("Some application exception");
try {
template.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
throw ex;
}
@@ -185,6 +188,7 @@ public class TransactionSupportTests extends TestCase {
public void testTransactionTemplateWithRollbackException() {
final TransactionSystemException tex = new TransactionSystemException("system exception");
TestTransactionManager tm = new TestTransactionManager(false, true) {
@Override
protected void doRollback(DefaultTransactionStatus status) {
super.doRollback(status);
throw tex;
@@ -194,6 +198,7 @@ public class TransactionSupportTests extends TestCase {
final RuntimeException ex = new RuntimeException("Some application exception");
try {
template.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
throw ex;
}
@@ -215,6 +220,7 @@ public class TransactionSupportTests extends TestCase {
TransactionTemplate template = new TransactionTemplate(tm);
try {
template.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
throw new Error("Some application error");
}
@@ -277,6 +283,7 @@ public class TransactionSupportTests extends TestCase {
assertTrue("Correct isolation level set", template.getIsolationLevel() == TransactionDefinition.ISOLATION_REPEATABLE_READ);
}
@Override
protected void tearDown() {
assertTrue(TransactionSynchronizationManager.getResourceMap().isEmpty());
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());

View File

@@ -36,6 +36,7 @@ public class TxNamespaceHandlerEventTests extends TestCase {
private CollectingReaderEventListener eventListener = new CollectingReaderEventListener();
@Override
public void setUp() throws Exception {
XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(this.beanFactory);
reader.setEventListener(this.eventListener);

View File

@@ -40,6 +40,7 @@ public class TxNamespaceHandlerTests extends TestCase {
private Method setAgeMethod;
@Override
public void setUp() throws Exception {
this.context = new ClassPathXmlApplicationContext("txNamespaceHandlerTests.xml", getClass());
this.getAgeMethod = ITestBean.class.getMethod("getAge", new Class[0]);

View File

@@ -311,18 +311,22 @@ public class AnnotationTransactionAttributeSourceTests {
this.age = age;
}
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
public int getAge() {
return age;
}
@Override
public void setAge(int age) {
this.age = age;
}
@@ -344,19 +348,23 @@ public class AnnotationTransactionAttributeSourceTests {
this.age = age;
}
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
@Transactional(rollbackFor=Exception.class)
public int getAge() {
return age;
}
@Override
public void setAge(int age) {
this.age = age;
}
@@ -377,18 +385,22 @@ public class AnnotationTransactionAttributeSourceTests {
this.age = age;
}
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
public int getAge() {
return age;
}
@Override
public void setAge(int age) {
this.age = age;
}
@@ -409,20 +421,24 @@ public class AnnotationTransactionAttributeSourceTests {
this.age = age;
}
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
@Transactional(propagation=Propagation.REQUIRES_NEW, isolation=Isolation.REPEATABLE_READ, timeout=5,
readOnly=true, rollbackFor=Exception.class, noRollbackFor={IOException.class})
public int getAge() {
return age;
}
@Override
public void setAge(int age) {
this.age = age;
}
@@ -444,18 +460,22 @@ public class AnnotationTransactionAttributeSourceTests {
this.age = age;
}
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
public int getAge() {
return age;
}
@Override
public void setAge(int age) {
this.age = age;
}
@@ -495,6 +515,7 @@ public class AnnotationTransactionAttributeSourceTests {
public static class MyFoo implements Foo<String> {
@Override
@Transactional
public void doSomething(String theArgument) {
System.out.println(theArgument);
@@ -508,20 +529,24 @@ public class AnnotationTransactionAttributeSourceTests {
private int age;
@Override
@javax.ejb.TransactionAttribute(TransactionAttributeType.SUPPORTS)
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
@javax.ejb.TransactionAttribute
public int getAge() {
return age;
}
@Override
public void setAge(int age) {
this.age = age;
}
@@ -535,19 +560,23 @@ public class AnnotationTransactionAttributeSourceTests {
private int age;
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
@javax.ejb.TransactionAttribute
public int getAge() {
return age;
}
@Override
public void setAge(int age) {
this.age = age;
}
@@ -574,18 +603,22 @@ public class AnnotationTransactionAttributeSourceTests {
private int age;
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
public int getAge() {
return age;
}
@Override
public void setAge(int age) {
this.age = age;
}

View File

@@ -36,6 +36,7 @@ public class AnnotationTransactionInterceptorTests extends TestCase {
private TransactionInterceptor ti;
@Override
public void setUp() {
this.ptm = new CallCountingTransactionManager();
this.source = new AnnotationTransactionAttributeSource();
@@ -319,11 +320,13 @@ public class AnnotationTransactionInterceptorTests extends TestCase {
public static class TestWithInterfaceImpl implements TestWithInterface {
@Override
public void doSomething() {
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
}
@Override
public void doSomethingElse() {
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
assertTrue(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
@@ -345,13 +348,16 @@ public class AnnotationTransactionInterceptorTests extends TestCase {
public static class SomeServiceImpl implements SomeService {
@Override
public void bar() {
}
@Override
@Transactional
public void foo() {
}
@Override
@Transactional(readOnly = false)
public void fooBar() {
}
@@ -367,6 +373,7 @@ public class AnnotationTransactionInterceptorTests extends TestCase {
@Transactional
public static class OtherServiceImpl implements OtherService {
@Override
public void foo() {
}
}

View File

@@ -41,11 +41,13 @@ public class AnnotationTransactionNamespaceHandlerTests extends TestCase {
private ConfigurableApplicationContext context;
@Override
public void setUp() {
this.context = new ClassPathXmlApplicationContext(
"org/springframework/transaction/annotation/annotationTransactionNamespaceHandlerTests.xml");
}
@Override
protected void tearDown() {
this.context.close();
}

View File

@@ -127,6 +127,7 @@ public class EnableTransactionManagementTests {
return new CallCountingTransactionManager();
}
@Override
public PlatformTransactionManager annotationDrivenTransactionManager() {
return txManager2();
}

View File

@@ -87,6 +87,7 @@ public class AnnotationDrivenTests extends TestCase {
@SuppressWarnings("serial")
public static class TransactionCheckingInterceptor implements MethodInterceptor, Serializable {
@Override
public Object invoke(MethodInvocation methodInvocation) throws Throwable {
if (methodInvocation.getMethod().getName().equals("setSomething")) {
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());

View File

@@ -250,6 +250,7 @@ public abstract class AbstractTransactionAspectTests extends TestCase {
final String spouseName = "innerName";
TestBean outer = new TestBean() {
@Override
public void exceptional(Throwable t) throws Throwable {
TransactionInfo ti = TransactionAspectSupport.currentTransactionInfo();
assertTrue(ti.hasTransaction());
@@ -257,6 +258,7 @@ public abstract class AbstractTransactionAspectTests extends TestCase {
}
};
TestBean inner = new TestBean() {
@Override
public String getName() {
// Assert that we're in the inner proxy
TransactionInfo ti = TransactionAspectSupport.currentTransactionInfo();
@@ -311,6 +313,7 @@ public abstract class AbstractTransactionAspectTests extends TestCase {
final String spouseName = "innerName";
TestBean outer = new TestBean() {
@Override
public void exceptional(Throwable t) throws Throwable {
TransactionInfo ti = TransactionAspectSupport.currentTransactionInfo();
assertTrue(ti.hasTransaction());
@@ -319,6 +322,7 @@ public abstract class AbstractTransactionAspectTests extends TestCase {
}
};
TestBean inner = new TestBean() {
@Override
public String getName() {
// Assert that we're in the inner proxy
TransactionInfo ti = TransactionAspectSupport.currentTransactionInfo();
@@ -386,6 +390,7 @@ public abstract class AbstractTransactionAspectTests extends TestCase {
final Exception ex, final boolean shouldRollback, boolean rollbackException) throws Exception {
TransactionAttribute txatt = new DefaultTransactionAttribute() {
@Override
public boolean rollbackOn(Throwable t) {
assertTrue(t == ex);
return shouldRollback;
@@ -461,6 +466,7 @@ public abstract class AbstractTransactionAspectTests extends TestCase {
final String name = "jenny";
TestBean tb = new TestBean() {
@Override
public String getName() {
TransactionStatus txStatus = TransactionInterceptor.currentTransactionStatus();
txStatus.setRollbackOnly();
@@ -504,6 +510,7 @@ public abstract class AbstractTransactionAspectTests extends TestCase {
ptmControl.replay();
TestBean tb = new TestBean() {
@Override
public String getName() {
throw new UnsupportedOperationException(
"Shouldn't have invoked target method when couldn't create transaction for transactional method");

View File

@@ -50,6 +50,7 @@ public class BeanFactoryTransactionTests extends TestCase {
private XmlBeanFactory factory;
@Override
public void setUp() {
this.factory = new XmlBeanFactory(new ClassPathResource("transactionalBeanFactory.xml", getClass()));
}
@@ -127,6 +128,7 @@ public class BeanFactoryTransactionTests extends TestCase {
final TransactionStatus ts = (TransactionStatus) statusControl.getMock();
ptm = new PlatformTransactionManager() {
private boolean invoked;
@Override
public TransactionStatus getTransaction(TransactionDefinition def) throws TransactionException {
if (invoked) {
throw new IllegalStateException("getTransaction should not get invoked more than once");
@@ -138,9 +140,11 @@ public class BeanFactoryTransactionTests extends TestCase {
}
return ts;
}
@Override
public void commit(TransactionStatus status) throws TransactionException {
assertTrue(status == ts);
}
@Override
public void rollback(TransactionStatus status) throws TransactionException {
throw new IllegalStateException("rollback should not get invoked");
}
@@ -204,6 +208,7 @@ public class BeanFactoryTransactionTests extends TestCase {
int counter = 0;
@Override
public boolean matches(Method method, Class clazz) {
counter++;
return true;
@@ -215,6 +220,7 @@ public class BeanFactoryTransactionTests extends TestCase {
int counter = 0;
@Override
public Object invoke(MethodInvocation methodInvocation) throws Throwable {
counter++;
return methodInvocation.proceed();

View File

@@ -40,10 +40,12 @@ public class MapTransactionAttributeSource extends AbstractFallbackTransactionAt
}
@Override
protected TransactionAttribute findTransactionAttribute(Method method) {
return this.attributeMap.get(method);
}
@Override
protected TransactionAttribute findTransactionAttribute(Class clazz) {
return this.attributeMap.get(clazz);
}

View File

@@ -37,14 +37,17 @@ public class PlatformTransactionManagerFacade implements PlatformTransactionMana
*/
public static PlatformTransactionManager delegate;
@Override
public TransactionStatus getTransaction(TransactionDefinition definition) {
return delegate.getTransaction(definition);
}
@Override
public void commit(TransactionStatus status) {
delegate.commit(status);
}
@Override
public void rollback(TransactionStatus status) {
delegate.rollback(status);
}

View File

@@ -34,6 +34,7 @@ import org.springframework.util.SerializationTestUtils;
*/
public class TransactionInterceptorTests extends AbstractTransactionAspectTests {
@Override
protected Object advised(Object target, PlatformTransactionManager ptm, TransactionAttributeSource[] tas) throws Exception {
TransactionInterceptor ti = new TransactionInterceptor();
ti.setTransactionManager(ptm);
@@ -49,6 +50,7 @@ public class TransactionInterceptorTests extends AbstractTransactionAspectTests
* target object and transaction setup.
* Creates a TransactionInterceptor and applies it.
*/
@Override
protected Object advised(Object target, PlatformTransactionManager ptm, TransactionAttributeSource tas) {
TransactionInterceptor ti = new TransactionInterceptor();
ti.setTransactionManager(ptm);
@@ -111,14 +113,17 @@ public class TransactionInterceptorTests extends AbstractTransactionAspectTests
@SuppressWarnings("serial")
public static class SerializableTransactionManager implements PlatformTransactionManager, Serializable {
@Override
public TransactionStatus getTransaction(TransactionDefinition definition) throws TransactionException {
throw new UnsupportedOperationException();
}
@Override
public void commit(TransactionStatus status) throws TransactionException {
throw new UnsupportedOperationException();
}
@Override
public void rollback(TransactionStatus status) throws TransactionException {
throw new UnsupportedOperationException();
}

View File

@@ -48,6 +48,7 @@ public class MockUOWManager implements UOWManager {
private final List synchronizations = new LinkedList();
@Override
public void runUnderUOW(int type, boolean join, UOWAction action) throws UOWActionException, UOWException {
this.type = type;
this.joined = join;
@@ -70,6 +71,7 @@ public class MockUOWManager implements UOWManager {
}
}
@Override
public int getUOWType() {
return this.type;
}
@@ -78,22 +80,27 @@ public class MockUOWManager implements UOWManager {
return this.joined;
}
@Override
public long getLocalUOWId() {
return 0;
}
@Override
public void setUOWTimeout(int uowType, int timeout) {
this.timeout = timeout;
}
@Override
public int getUOWTimeout() {
return this.timeout;
}
@Override
public void setRollbackOnly() {
this.rollbackOnly = true;
}
@Override
public boolean getRollbackOnly() {
return this.rollbackOnly;
}
@@ -102,18 +109,22 @@ public class MockUOWManager implements UOWManager {
this.status = status;
}
@Override
public int getUOWStatus() {
return this.status;
}
@Override
public void putResource(Object key, Object value) {
this.resources.put(key, value);
}
@Override
public Object getResource(Object key) throws NullPointerException {
return this.resources.get(key);
}
@Override
public void registerInterposedSynchronization(Synchronization sync) {
this.synchronizations.add(sync);
}

View File

@@ -52,6 +52,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
DefaultTransactionDefinition definition = new DefaultTransactionDefinition();
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
return "result";
}
@@ -87,6 +88,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
TransactionStatus ts = ptm.getTransaction(definition);
ptm.commit(ts);
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
return "result";
}
@@ -105,6 +107,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
try {
ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
return "result";
}
@@ -174,6 +177,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
if (synchMode == WebSphereUowTransactionManager.SYNCHRONIZATION_ALWAYS) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
@@ -257,6 +261,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
if (synchMode != WebSphereUowTransactionManager.SYNCHRONIZATION_NEVER) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
@@ -294,6 +299,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
@@ -315,6 +321,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
public void testNewTransactionWithCommitException() {
final RollbackException rex = new RollbackException();
MockUOWManager manager = new MockUOWManager() {
@Override
public void runUnderUOW(int type, boolean join, UOWAction action) throws UOWException {
throw new UOWException(rex);
}
@@ -328,6 +335,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
try {
ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
@@ -362,6 +370,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
try {
ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
@@ -395,6 +404,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
@@ -425,6 +435,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
@@ -452,6 +463,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
try {
ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
return "result";
}
@@ -472,6 +484,7 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
try {
ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
return "result";
}
@@ -508,11 +521,13 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result2", ptm.execute(definition2, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
@@ -555,11 +570,13 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result2", ptm.execute(definition2, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertEquals(propagationBehavior == TransactionDefinition.PROPAGATION_REQUIRES_NEW,
@@ -600,11 +617,13 @@ public class WebSphereUowTransactionManagerTests extends TestCase {
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result", ptm.execute(definition, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertTrue(TransactionSynchronizationManager.isActualTransactionActive());
assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
assertEquals("result2", ptm.execute(definition2, new TransactionCallback() {
@Override
public Object doInTransaction(TransactionStatus status) {
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
assertFalse(TransactionSynchronizationManager.isActualTransactionActive());