Browse Source

Refined logging to include target class for each transactional method name

Also simplified cache key 'hashCode' implementation, relying on 'equals' to differentiate between same method on different target classes.

Issue: SPR-11267
pull/432/head
Juergen Hoeller 12 years ago
parent
commit
82ea9ece5c
  1. 8
      spring-tx/src/main/java/org/springframework/transaction/interceptor/AbstractFallbackTransactionAttributeSource.java

8
spring-tx/src/main/java/org/springframework/transaction/interceptor/AbstractFallbackTransactionAttributeSource.java

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/*
* Copyright 2002-2012 the original author or authors.
* Copyright 2002-2013 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -104,7 +104,9 @@ public abstract class AbstractFallbackTransactionAttributeSource implements Tran @@ -104,7 +104,9 @@ public abstract class AbstractFallbackTransactionAttributeSource implements Tran
}
else {
if (logger.isDebugEnabled()) {
logger.debug("Adding transactional method '" + method.getName() + "' with attribute: " + txAtt);
Class<?> classToLog = (targetClass != null ? targetClass : method.getDeclaringClass());
logger.debug("Adding transactional method '" + classToLog.getSimpleName() + "." +
method.getName() + "' with attribute: " + txAtt);
}
this.attributeCache.put(cacheKey, txAtt);
}
@ -225,7 +227,7 @@ public abstract class AbstractFallbackTransactionAttributeSource implements Tran @@ -225,7 +227,7 @@ public abstract class AbstractFallbackTransactionAttributeSource implements Tran
@Override
public int hashCode() {
return this.method.hashCode() * 29 + (this.targetClass != null ? this.targetClass.hashCode() : 0);
return this.method.hashCode();
}
}

Loading…
Cancel
Save