Author: dblevins
Date: Wed Sep  5 05:24:19 2012
New Revision: 1380996

URL: http://svn.apache.org/viewvc?rev=1380996&view=rev
Log:
Small step in refactoring for OWB-701 - Remove Javassist
Favor InvocationHandler method signatures everyhere, but 
AbstractDecoratorMethodHandler.  Need to investigate that one further.

Modified:
    
openwebbeans/trunk/webbeans-ejb/src/main/java/org/apache/webbeans/ejb/common/proxy/EjbBeanProxyHandler.java
    openwebbeans/trunk/webbeans-impl/pom.xml
    
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/BuildInOwbBean.java
    
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/AbstractDecoratorMethodHandler.java
    
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DelegateHandler.java
    
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DependentScopedBeanInterceptorHandler.java
    
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/InterceptorHandler.java
    
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/NormalScopedBeanInterceptorHandler.java
    
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/proxy/ResourceProxyHandler.java
    
openwebbeans/trunk/webbeans-jms/src/main/java/org/apache/webbeans/jms/util/JmsProxyHandler.java

Modified: 
openwebbeans/trunk/webbeans-ejb/src/main/java/org/apache/webbeans/ejb/common/proxy/EjbBeanProxyHandler.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-ejb/src/main/java/org/apache/webbeans/ejb/common/proxy/EjbBeanProxyHandler.java?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-ejb/src/main/java/org/apache/webbeans/ejb/common/proxy/EjbBeanProxyHandler.java
 (original)
+++ 
openwebbeans/trunk/webbeans-ejb/src/main/java/org/apache/webbeans/ejb/common/proxy/EjbBeanProxyHandler.java
 Wed Sep  5 05:24:19 2012
@@ -25,6 +25,7 @@ import java.io.ObjectInputStream;
 import java.io.ObjectOutput;
 import java.io.ObjectOutputStream;
 import java.io.Serializable;
+import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.util.List;
@@ -54,7 +55,7 @@ import javassist.util.proxy.MethodHandle
  *
  */
 @SuppressWarnings("unchecked")
-public class EjbBeanProxyHandler implements MethodHandler, Serializable, 
Externalizable
+public class EjbBeanProxyHandler implements InvocationHandler, MethodHandler, 
Serializable, Externalizable
 {
     //Logger instance
     private final static Logger logger = 
WebBeansLoggerFacade.getLogger(EjbBeanProxyHandler.class);
@@ -103,10 +104,12 @@ public class EjbBeanProxyHandler impleme
         webBeansContext = ejbBean.getWebBeansContext();
     }
     
-    /**
-     * {@inheritDoc}
-     */
-    public Object invoke(Object proxyInstance, Method method, Method proceed, 
Object[] arguments) throws Throwable 
+    public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Throwable
+    {
+        return invoke(instance, method, arguments);
+    }
+
+    public Object invoke(Object instance, Method method, Object[] arguments) 
throws Throwable
     {
         Object result = null;
         
@@ -124,7 +127,7 @@ public class EjbBeanProxyHandler impleme
             {
                 
webBeansContext.getSecurityService().doPrivilegedSetAccessible(method, true);
             }
-            return proceed.invoke(proxyInstance, arguments);
+            return method.invoke(instance, arguments);
         }
                 
         try
@@ -162,7 +165,7 @@ public class EjbBeanProxyHandler impleme
                     if 
(this.ejbBean.getEjbType().equals(SessionBeanType.STATEFUL))
                     {
                         // It's an SFSB, so we need to track when it's removed
-                        this.ejbBean.addDependentSFSB(webbeansInstance, 
proxyInstance);
+                        this.ejbBean.addDependentSFSB(webbeansInstance, 
instance);
                     }
                 }
             }
@@ -173,7 +176,7 @@ public class EjbBeanProxyHandler impleme
                 if (checkEjbRemoveMethod(method))
                 {
                     // Stop tracking the EJB associated with this proxy
-                    this.ejbBean.removeDependentSFSB(proxyInstance);
+                    this.ejbBean.removeDependentSFSB(instance);
                     
                     /*
                      * Keep the local reference to the dependent SFSB. If the

Modified: openwebbeans/trunk/webbeans-impl/pom.xml
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/pom.xml?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/pom.xml (original)
+++ openwebbeans/trunk/webbeans-impl/pom.xml Wed Sep  5 05:24:19 2012
@@ -48,6 +48,12 @@
         </dependency>
 
         <dependency>
+            <groupId>asm</groupId>
+            <artifactId>asm</artifactId>
+            <version>3.3.1</version>
+        </dependency>
+
+        <dependency>
             <groupId>org.apache.geronimo.specs</groupId>
             <artifactId>geronimo-jcdi_1.0_spec</artifactId>
             <optional>true</optional>

Modified: 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/BuildInOwbBean.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/BuildInOwbBean.java?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/BuildInOwbBean.java
 (original)
+++ 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/BuildInOwbBean.java
 Wed Sep  5 05:24:19 2012
@@ -261,17 +261,15 @@ public abstract class BuildInOwbBean<T> 
             this.actualObject = actualObject;
         }    
         
-        public Object invoke(Object self, Method thisMethod, Method proceed, 
Object[] args) throws Throwable
+        public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Throwable
+        {
+            return invoke(instance, method, arguments);
+        }
+
+        public Object invoke(Object instance, Method method, Object[] 
arguments) throws Throwable
         {
-            if(proceed != null)       
-            {
-                return proceed.invoke(actualObject,args);
-            } 
-            else 
-            {
                 //interface method.
-                return thisMethod.invoke(actualObject,args);
-            }            
+            return method.invoke(actualObject, arguments);
         }
 
         private  void writeObject(ObjectOutputStream s) throws IOException

Modified: 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/AbstractDecoratorMethodHandler.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/AbstractDecoratorMethodHandler.java?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/AbstractDecoratorMethodHandler.java
 (original)
+++ 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/AbstractDecoratorMethodHandler.java
 Wed Sep  5 05:24:19 2012
@@ -34,11 +34,11 @@ public class AbstractDecoratorMethodHand
     public Object invoke(Object self, Method thisMethod, Method proceed, 
Object[] args) throws Throwable
     {
         //Don't attempt to call it if the method doesn't exist
-        if(proceed != null)       
+        if(proceed != null)
         {
             return proceed.invoke(self,args);
         }
-        
+
         //Throw the exception so the DelegateHandler will continue the loop
         throw new NoSuchMethodException();
     }

Modified: 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DelegateHandler.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DelegateHandler.java?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DelegateHandler.java
 (original)
+++ 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DelegateHandler.java
 Wed Sep  5 05:24:19 2012
@@ -23,6 +23,7 @@ import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
+import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.util.List;
@@ -42,7 +43,7 @@ import org.apache.webbeans.util.WebBeans
 
 import javassist.util.proxy.MethodHandler;
 
-public class DelegateHandler implements MethodHandler, Serializable, 
Externalizable
+public class DelegateHandler implements InvocationHandler, MethodHandler, 
Serializable, Externalizable
 {
     private static final Logger logger = 
WebBeansLoggerFacade.getLogger(DelegateHandler.class);
     private static final long serialVersionUID = -3063755008944970684L;
@@ -82,6 +83,11 @@ public class DelegateHandler implements 
     
     public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Exception
     {
+        return invoke(instance, method, arguments);
+    }
+
+    public Object invoke(Object instance, Method method, Object[] arguments) 
throws Exception
+    {
         // Tuck away a reference to the bean being Decorated
         if (actualInstance == null)
         {

Modified: 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DependentScopedBeanInterceptorHandler.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DependentScopedBeanInterceptorHandler.java?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DependentScopedBeanInterceptorHandler.java
 (original)
+++ 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DependentScopedBeanInterceptorHandler.java
 Wed Sep  5 05:24:19 2012
@@ -70,9 +70,14 @@ public class DependentScopedBeanIntercep
     /**
      * {@inheritDoc}
      */
-    public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Exception
+    public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Throwable
     {
-        return super.invoke(actualInstance, method, proceed, arguments, 
(CreationalContextImpl<?>)creationalContext);
+        return invoke(instance, method, arguments);
+    }
+
+    public Object invoke(Object instance, Method method, Object[] arguments) 
throws Throwable
+    {
+        return super.invoke(actualInstance, method, arguments, 
(CreationalContextImpl<?>)creationalContext);
     }
     
     /**

Modified: 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/InterceptorHandler.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/InterceptorHandler.java?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/InterceptorHandler.java
 (original)
+++ 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/InterceptorHandler.java
 Wed Sep  5 05:24:19 2012
@@ -208,6 +208,11 @@ public abstract class InterceptorHandler
      */
     public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments, CreationalContextImpl<?> ownerCreationalContext) throws 
Exception
     {
+        return invoke(instance, method, arguments, ownerCreationalContext);
+    }
+
+    public Object invoke(Object instance, Method method, Object[] arguments, 
CreationalContextImpl<?> ownerCreationalContext) throws Exception
+    {
         if (instance == null)
         {
             return null;
@@ -297,7 +302,7 @@ public abstract class InterceptorHandler
                     // manage the stack
                     if (decoratorDelegateHandler != null)
                     {
-                        return decoratorDelegateHandler.invoke(instance, 
method, proceed, arguments);
+                        return decoratorDelegateHandler.invoke(instance, 
method, arguments);
                     }
                 }
 

Modified: 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/NormalScopedBeanInterceptorHandler.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/NormalScopedBeanInterceptorHandler.java?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/NormalScopedBeanInterceptorHandler.java
 (original)
+++ 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/NormalScopedBeanInterceptorHandler.java
 Wed Sep  5 05:24:19 2012
@@ -104,7 +104,12 @@ public class NormalScopedBeanInterceptor
     /**
      * {@inheritDoc}
      */
-    public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Exception
+    public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Throwable
+    {
+        return invoke(instance, method, arguments);
+    }
+
+    public Object invoke(Object instance, Method method, Object[] arguments) 
throws Throwable
     {
         if (method.getName() == FINALIZE &&   // Method.getName() is defined 
to return .intern() in the VM spec.
             method.getParameterTypes().length == 0 &&
@@ -120,7 +125,7 @@ public class NormalScopedBeanInterceptor
         Object webbeansInstance = getContextualInstance();
         
         //Call super
-        return super.invoke(webbeansInstance, method, proceed, arguments, 
(CreationalContextImpl<?>) getContextualCreationalContext());
+        return super.invoke(webbeansInstance, method, arguments, 
(CreationalContextImpl<?>) getContextualCreationalContext());
     }
         
     /**

Modified: 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/proxy/ResourceProxyHandler.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/proxy/ResourceProxyHandler.java?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/proxy/ResourceProxyHandler.java
 (original)
+++ 
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/proxy/ResourceProxyHandler.java
 Wed Sep  5 05:24:19 2012
@@ -23,6 +23,7 @@ import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
 import java.io.Serializable;
+import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 
@@ -31,7 +32,7 @@ import org.apache.webbeans.component.Res
 import org.apache.webbeans.config.WebBeansContext;
 import org.apache.webbeans.spi.ResourceInjectionService;
 
-public class ResourceProxyHandler implements MethodHandler, Serializable, 
Externalizable
+public class ResourceProxyHandler implements InvocationHandler, MethodHandler, 
Serializable, Externalizable
 {
     /**
      * 
@@ -53,11 +54,16 @@ public class ResourceProxyHandler implem
         this.actualResource = actualResource;
     }
     
-    public Object invoke(Object self, Method actualMethod, Method proceed, 
Object[] args) throws Throwable
+    public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Throwable
+    {
+        return invoke(instance, method, arguments);
+    }
+
+    public Object invoke(Object instance, Method method, Object[] arguments) 
throws Throwable
     {
         try
         {
-            return actualMethod.invoke(actualResource, args);
+            return method.invoke(actualResource, arguments);
         }
         catch (InvocationTargetException e)
         {

Modified: 
openwebbeans/trunk/webbeans-jms/src/main/java/org/apache/webbeans/jms/util/JmsProxyHandler.java
URL: 
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-jms/src/main/java/org/apache/webbeans/jms/util/JmsProxyHandler.java?rev=1380996&r1=1380995&r2=1380996&view=diff
==============================================================================
--- 
openwebbeans/trunk/webbeans-jms/src/main/java/org/apache/webbeans/jms/util/JmsProxyHandler.java
 (original)
+++ 
openwebbeans/trunk/webbeans-jms/src/main/java/org/apache/webbeans/jms/util/JmsProxyHandler.java
 Wed Sep  5 05:24:19 2012
@@ -18,6 +18,7 @@
  */
 package org.apache.webbeans.jms.util;
 
+import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.Method;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
@@ -43,7 +44,7 @@ import org.apache.webbeans.util.ClassUti
 
 import javassist.util.proxy.MethodHandler;
 
-public class JmsProxyHandler implements MethodHandler
+public class JmsProxyHandler implements InvocationHandler, MethodHandler
 {
     private JmsBean<?> jmsComponent = null;
 
@@ -65,7 +66,12 @@ public class JmsProxyHandler implements 
         this.injectionClazz = injectionClazz;
     }
 
-    public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Exception
+    public Object invoke(Object instance, Method method, Method proceed, 
Object[] arguments) throws Throwable
+    {
+        return invoke(instance, method, arguments);
+    }
+
+    public Object invoke(Object instance, Method method, Object[] arguments) 
throws Throwable
     {
         if(method.getName().equals("closeJMSObject"))
         {
@@ -129,7 +135,7 @@ public class JmsProxyHandler implements 
         }
         else
         {
-            return proceed.invoke(instance, arguments);
+            return method.invoke(instance, arguments);
         }
     }
 


Reply via email to