|
From: <hib...@li...> - 2006-07-31 20:27:54
|
Author: scottmarlownovell
Date: 2006-07-31 16:27:50 -0400 (Mon, 31 Jul 2006)
New Revision: 10182
Modified:
trunk/Hibernate3/src/org/hibernate/tool/instrument/cglib/InstrumentTask.java
Log:
fix for HHH-1931, don't transform methods that accept classes that
aren't instrumented.
Modified: trunk/Hibernate3/src/org/hibernate/tool/instrument/cglib/InstrumentTask.java
===================================================================
--- trunk/Hibernate3/src/org/hibernate/tool/instrument/cglib/InstrumentTask.java 2006-07-28 20:17:50 UTC (rev 10181)
+++ trunk/Hibernate3/src/org/hibernate/tool/instrument/cglib/InstrumentTask.java 2006-07-31 20:27:50 UTC (rev 10182)
@@ -43,21 +43,22 @@
* Override the {@link AbstractTransformTask#getClassTransformer} method
* in order to define field access interception transformation should occur.
*/
- protected ClassTransformer getClassTransformer(String[] classInfo) {
+ protected ClassTransformer getClassTransformer(final String[] classInfo) {
if ( Arrays.asList( classInfo ).contains( InterceptFieldEnabled.class.getName() ) ) {
// The class is already instrumented, so skip this step
return null;
}
else {
+
// Class was not yet enhanced, so apply the transformation
return new InterceptFieldTransformer(
new InterceptFieldFilter() {
public boolean acceptRead(Type owner, String name) {
- return true;
+ return (owner.getClassName().equals(classInfo[0]));
}
public boolean acceptWrite(Type owner, String name) {
- return true;
+ return (owner.getClassName().equals(classInfo[0]));
}
}
);
|