[jboss-cvs] JBossAS SVN: r70567 - projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/instrument.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Mar 7 18:35:27 EST 2008
Author: flavia.rainone at jboss.com
Date: 2008-03-07 18:35:27 -0500 (Fri, 07 Mar 2008)
New Revision: 70567
Modified:
projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/instrument/GeneratedAdvisorMethodExecutionTransformer.java
Log:
[JBAOP-537] Suggested workaround applied to non-static method execution wrappers.
Modified: projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/instrument/GeneratedAdvisorMethodExecutionTransformer.java
===================================================================
--- projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/instrument/GeneratedAdvisorMethodExecutionTransformer.java 2008-03-07 23:30:52 UTC (rev 70566)
+++ projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/instrument/GeneratedAdvisorMethodExecutionTransformer.java 2008-03-07 23:35:27 UTC (rev 70567)
@@ -464,30 +464,29 @@
{
String joinpointName = getJoinPointFieldName(trans);
String infoName = getMethodInfoFieldName(trans.getOriginalName(), trans.getHash());
-
+
String code =
"{" +
- " if (" + joinpointName + " == null && " + infoName + " != null && " + infoName + ".hasAdvices())" +
- " {" +
GeneratedAdvisorInstrumentor.generateInterceptorChainLockCode(infoName) +
- " try" +
+ " try" +
+ " {" +
+
+ " if (" + joinpointName + " == null && " + infoName + " != null && " + infoName + ".hasAdvices())" +
" {" +
- " if (" + joinpointName + " == null && " + infoName + " != null && " + infoName + ".hasAdvices())" +
- " {" +
- " super." + JoinPointGenerator.GENERATE_JOINPOINT_CLASS + "(" + infoName + ");" +
- " }" +
- " } finally {" +
- GeneratedAdvisorInstrumentor.generateInterceptorChainUnlockCode(infoName) +
+ " super." + JoinPointGenerator.GENERATE_JOINPOINT_CLASS + "(" + infoName + ");" +
+
" }" +
+ " if (" + joinpointName + " == null)" +
+ " { " +
+ " " + getAopReturnStr(trans.getWMethod()) + "$1." + trans.getWrappedName() + "(" + getNonStaticJavasistParamString(trans.getWMethod().getParameterTypes().length) + ");" +
+ " }" +
+ " else" +
+ " {" +
+ " " + getAopReturnStr(trans.getWMethod()) + joinpointName + "." + MethodJoinPointGenerator.INVOKE_JOINPOINT + "($$);" +
+ " }" +
+ " } finally {" +
+ GeneratedAdvisorInstrumentor.generateInterceptorChainUnlockCode(infoName) +
" }" +
- " if (" + joinpointName + " == null)" +
- " { " +
- " " + getAopReturnStr(trans.getWMethod()) + "$1." + trans.getWrappedName() + "(" + getNonStaticJavasistParamString(trans.getWMethod().getParameterTypes().length) + ");" +
- " }" +
- " else" +
- " {" +
- " " + getAopReturnStr(trans.getWMethod()) + joinpointName + "." + MethodJoinPointGenerator.INVOKE_JOINPOINT + "($$);" +
- " }" +
"}";
return code;
More information about the jboss-cvs-commits
mailing list