[jboss-cvs] JBossAS SVN: r69552 - in projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop: advice/annotation and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Feb 1 18:27:38 EST 2008
Author: flavia.rainone at jboss.com
Date: 2008-02-01 18:27:38 -0500 (Fri, 01 Feb 2008)
New Revision: 69552
Modified:
projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/AspectManager.java
projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/advice/annotation/AdviceMethodFactory.java
projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/instrument/JoinPointGenerator.java
Log:
[JBAOP-499] Uncommented, temporary workaround to a specific deadlock scenario. This fix still requires further validation.
Modified: projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/AspectManager.java
===================================================================
--- projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/AspectManager.java 2008-02-01 23:01:08 UTC (rev 69551)
+++ projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/AspectManager.java 2008-02-01 23:27:38 UTC (rev 69552)
@@ -62,6 +62,7 @@
import org.jboss.aop.instrument.GeneratedAdvisorInstrumentor;
import org.jboss.aop.instrument.Instrumentor;
import org.jboss.aop.instrument.InstrumentorFactory;
+import org.jboss.aop.instrument.JoinPointGenerator;
import org.jboss.aop.instrument.TransformerCommon;
import org.jboss.aop.introduction.AnnotationIntroduction;
import org.jboss.aop.introduction.InterfaceIntroduction;
@@ -240,6 +241,7 @@
*/
public static synchronized AspectManager instance(ClassLoader loadingClassLoader)
{
+ JoinPointGenerator.loadEverything();
AspectManager result = initManager();
if (classLoaderScopingPolicy != null)
{
Modified: projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/advice/annotation/AdviceMethodFactory.java
===================================================================
--- projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/advice/annotation/AdviceMethodFactory.java 2008-02-01 23:01:08 UTC (rev 69551)
+++ projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/advice/annotation/AdviceMethodFactory.java 2008-02-01 23:27:38 UTC (rev 69552)
@@ -578,4 +578,11 @@
{
boolean matches(AdviceMethodProperties p);
}
+
+ public static String loadEverything()
+ {
+ StringBuffer buffer = new StringBuffer();
+ buffer.append(ParameterAnnotationRule.class.getName());
+ return buffer.toString();
+ }
}
\ No newline at end of file
Modified: projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/instrument/JoinPointGenerator.java
===================================================================
--- projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/instrument/JoinPointGenerator.java 2008-02-01 23:01:08 UTC (rev 69551)
+++ projects/aop/branches/deadlocks/aop/src/main/org/jboss/aop/instrument/JoinPointGenerator.java 2008-02-01 23:27:38 UTC (rev 69552)
@@ -57,12 +57,14 @@
import org.jboss.aop.advice.InvalidAdviceException;
import org.jboss.aop.advice.NoMatchingAdviceException;
import org.jboss.aop.advice.Scope;
+import org.jboss.aop.advice.annotation.AdviceMethodFactory;
import org.jboss.aop.joinpoint.Invocation;
import org.jboss.aop.joinpoint.JoinPointBean;
import org.jboss.aop.pointcut.ast.ASTCFlowExpression;
import org.jboss.aop.pointcut.ast.ClassExpression;
import org.jboss.aop.util.JavassistUtils;
import org.jboss.aop.util.ReflectToJavassist;
+import org.jboss.aop.util.ReflectUtils;
import org.jboss.aop.util.logging.AOPLogger;
import org.jboss.logging.Logger;
import org.jboss.util.loading.Translatable;
@@ -2222,5 +2224,29 @@
protected Field getJoinpointField()
{
return joinpointField;
- }
+ }
+
+ public static String loadEverything()
+ {
+ StringBuffer buffer = new StringBuffer();
+ buffer.append(JoinPointGenerator.AfterAdviceCallStrategy.class.getName());
+ buffer.append(JoinPointGenerator.AfterAdviceCallStrategy.getInstance());
+ buffer.append(JoinPointGenerator.AroundAdviceCallStrategy.class.getName());
+ buffer.append(JoinPointGenerator.DefaultAdviceCallStrategy.class.getName());
+ buffer.append(JoinPointGenerator.GeneratedClassInfo.class.getName());
+ buffer.append(JoinPointGenerator.GenerateJoinPointClassAction.class.getName());
+ buffer.append(JoinPointGenerator.JoinPointParameters.class.getName());
+ buffer.append(JoinPointGenerator.AdviceSetups.class.getName());
+ buffer.append(JoinPointGenerator.AdviceSetup.class.getName());
+ buffer.append(AdviceMethodProperties.class.getName());
+ buffer.append(AdviceMethodProperties.OptionalParameters.class.getName());
+ buffer.append(ReflectUtils.class.getName());
+ buffer.append(AdviceMethodFactory.loadEverything());
+ try
+ {
+ AroundAdviceCallStrategy.getInstance().addInvokeCode(null, null, buffer, null);
+ }
+ catch(Throwable t) {}
+ return buffer.toString();
+ }
}
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list