You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by ar...@apache.org on 2013/01/24 22:26:49 UTC
svn commit: r1438202 - in
/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation:
AbstractBeanBuilder.java InterceptorBeanBuilder.java
Author: arne
Date: Thu Jan 24 21:26:49 2013
New Revision: 1438202
URL: http://svn.apache.org/viewvc?rev=1438202&view=rev
Log:
OWB-344: Removed unnecessary removal of overridden methods (this is done already in AnnotatedType)
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/AbstractBeanBuilder.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/InterceptorBeanBuilder.java
Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/AbstractBeanBuilder.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/AbstractBeanBuilder.java?rev=1438202&r1=1438201&r2=1438202&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/AbstractBeanBuilder.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/AbstractBeanBuilder.java Thu Jan 24 21:26:49 2013
@@ -24,13 +24,10 @@ import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
import java.util.Set;
import javax.enterprise.inject.spi.Annotated;
import javax.enterprise.inject.spi.AnnotatedMember;
-import javax.enterprise.inject.spi.AnnotatedMethod;
import javax.enterprise.inject.spi.Bean;
import org.apache.webbeans.component.BeanAttributesImpl;
@@ -85,74 +82,6 @@ public abstract class AbstractBeanBuilde
//Sub-class can override this
}
- /**
- * Check if the given annotatedMethod overrides some previously defined AnnotatedMethods
- * from a superclass and remove them if non-private.
- *
- *
- * @param alreadyDefinedMethods the methods already calculated from the superclasses. See
- * {@link org.apache.webbeans.intercept.InterceptorUtil#getReverseClassHierarchy(Class)}
- * @param annotatedMethod the AnnotatedMethod to check for.
- * @return <code>true</code> if a method was overridden and got removed, <code>false</code> otherwise.
- */
- protected boolean removeOverriddenMethod(List<AnnotatedMethod> alreadyDefinedMethods, AnnotatedMethod annotatedMethod)
- {
- String methodName = null;
- Class<?>[] methodParameterTypes = null;
-
- Iterator<AnnotatedMethod> it = alreadyDefinedMethods.iterator();
- while (it.hasNext())
- {
- AnnotatedMethod alreadyDefined = it.next();
-
- if (alreadyDefined == annotatedMethod)
- {
- // we don't remove ourself
- continue;
- }
-
- if (methodName == null)
- {
- methodName = annotatedMethod.getJavaMember().getName();
- methodParameterTypes = annotatedMethod.getJavaMember().getParameterTypes();
- }
-
- // check method overrides
- if (!Modifier.isPrivate(alreadyDefined.getJavaMember().getModifiers()))
- {
- // we only scan non-private methods, as private methods cannot get overridden.
- if (methodName.equals(alreadyDefined.getJavaMember().getName()) &&
- methodParameterTypes.length == alreadyDefined.getJavaMember().getParameterTypes().length)
- {
- boolean overridden = true;
- // same name and param length so we need to check if all the paramTypes are equal.
- if (methodParameterTypes.length > 0)
- {
- Class<?>[] otherParamTypes = alreadyDefined.getJavaMember().getParameterTypes();
-
- for (int i = 0; i < otherParamTypes.length; i++)
- {
- if (!otherParamTypes[i].equals(methodParameterTypes[i]))
- {
- overridden = false;
- break;
- }
- }
- }
-
- if (overridden)
- {
- // then we need to remove this method
- it.remove();
- return true;
- }
- }
- }
- }
-
- return false;
- }
-
protected void addInjectionPoint(AnnotatedMember<? super T> member)
{
injectionPoints.add(member);
Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/InterceptorBeanBuilder.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/InterceptorBeanBuilder.java?rev=1438202&r1=1438201&r2=1438202&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/InterceptorBeanBuilder.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/InterceptorBeanBuilder.java Thu Jan 24 21:26:49 2013
@@ -186,7 +186,6 @@ public abstract class InterceptorBeanBui
checkSameClassInterceptors(postConstructMethods, m);
postConstructMethods.add(m); // add at last position
}
- removeOverriddenMethod(postConstructMethods, m);
// PreDestroy
if (m.getAnnotation(PreDestroy.class) != null)
@@ -194,7 +193,6 @@ public abstract class InterceptorBeanBui
checkSameClassInterceptors(preDestroyMethods, m);
preDestroyMethods.add(m); // add at last position
}
- removeOverriddenMethod(preDestroyMethods, m);
// AroundTimeout
if (m.getAnnotation(AroundTimeout.class) != null)
@@ -202,7 +200,6 @@ public abstract class InterceptorBeanBui
checkSameClassInterceptors(aroundTimeoutMethods, m);
aroundTimeoutMethods.add(m); // add at last position
}
- removeOverriddenMethod(aroundTimeoutMethods, m);
// and now the EJB related interceptors
if (ejbPlugin != null)
@@ -212,7 +209,6 @@ public abstract class InterceptorBeanBui
checkSameClassInterceptors(prePassivateMethods, m);
prePassivateMethods.add(m); // add at last position
}
- removeOverriddenMethod(prePassivateMethods, m);
// AroundTimeout
if (m.getAnnotation(AroundTimeout.class) != null)
@@ -220,7 +216,6 @@ public abstract class InterceptorBeanBui
checkSameClassInterceptors(aroundTimeoutMethods, m);
postActivateMethods.add(m); // add at last position
}
- removeOverriddenMethod(postActivateMethods, m);
// AroundTimeout
if (m.getAnnotation(postActivateClass) != null)
@@ -228,7 +223,6 @@ public abstract class InterceptorBeanBui
checkSameClassInterceptors(postActivateMethods, m);
postActivateMethods.add(m); // add at last position
}
- removeOverriddenMethod(postActivateMethods, m);
}
}
}