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/05 17:04:08 UTC

svn commit: r1429323 - /openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/DefinitionUtil.java

Author: arne
Date: Sat Jan  5 16:04:08 2013
New Revision: 1429323

URL: http://svn.apache.org/viewvc?rev=1429323&view=rev
Log:
OWB-745: Removed obsolete code

Modified:
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/DefinitionUtil.java

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/DefinitionUtil.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/DefinitionUtil.java?rev=1429323&r1=1429322&r2=1429323&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/DefinitionUtil.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/DefinitionUtil.java Sat Jan  5 16:04:08 2013
@@ -21,9 +21,7 @@ package org.apache.webbeans.config;
 import java.io.Serializable;
 import java.lang.annotation.Annotation;
 import java.lang.reflect.Constructor;
-import java.lang.reflect.Field;
 import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
 import java.lang.reflect.Type;
 import java.util.ArrayList;
 import java.util.HashSet;
@@ -32,17 +30,9 @@ import java.util.List;
 import java.util.Set;
 
 import javax.enterprise.context.NormalScope;
-import javax.enterprise.event.Observes;
-import javax.enterprise.inject.Disposes;
-import javax.enterprise.inject.Produces;
-import javax.enterprise.inject.Specializes;
 import javax.enterprise.inject.Typed;
-import javax.enterprise.inject.spi.AnnotatedMethod;
-import javax.enterprise.inject.spi.AnnotatedParameter;
-import javax.enterprise.inject.spi.AnnotatedType;
 import javax.enterprise.inject.spi.InjectionPoint;
 import javax.enterprise.util.Nonbinding;
-import javax.inject.Inject;
 import javax.inject.Named;
 import javax.inject.Scope;
 
@@ -58,7 +48,6 @@ import org.apache.webbeans.component.Ent
 import org.apache.webbeans.component.InjectionTargetBean;
 import org.apache.webbeans.component.ManagedBean;
 import org.apache.webbeans.component.OwbBean;
-import org.apache.webbeans.component.ProducerMethodBean;
 import org.apache.webbeans.config.inheritance.IBeanInheritedMetaData;
 import org.apache.webbeans.container.ExternalScope;
 import org.apache.webbeans.decorator.WebBeansDecoratorConfig;
@@ -74,7 +63,6 @@ import org.apache.webbeans.util.WebBeans
 /**
  * Defines the web beans components common properties.
  */
-@SuppressWarnings("unchecked")
 public final class DefinitionUtil
 {
     private final WebBeansContext webBeansContext;
@@ -106,7 +94,7 @@ public final class DefinitionUtil
         removeIgnoredInterfaces(bean);
     }
 
-    public static <T> void removeIgnoredInterfaces(AbstractOwbBean<T> bean)
+    private static <T> void removeIgnoredInterfaces(AbstractOwbBean<T> bean)
     {
         Set<String> ignoredInterfaces = bean.getWebBeansContext().getOpenWebBeansConfiguration().getIgnoredInterfaces();
         for (Iterator<Type> i = bean.getTypes().iterator(); i.hasNext(); )
@@ -173,30 +161,7 @@ public final class DefinitionUtil
     
     
 
-    /**
-     * Configures the producer method web bean api types.
-     * 
-     * @param <T> generic class type
-     * @param producerBean configuring web beans component
-     * @param type bean implementation class
-     */
-    public static <T> void defineProducerMethodApiTypes(AbstractProducerBean<T> producerBean, Type type, Annotation[] annots)
-    {
-        
-        //Looking for bean types
-        Typed beanTypes = AnnotationUtil.getAnnotation(annots, Typed.class);
-        if(beanTypes != null)
-        {
-            defineUserDefinedBeanTypes(producerBean, type, beanTypes);
-        }
-        else
-        {
-            defineNormalProducerMethodApi(producerBean, type);
-        }
-        removeIgnoredInterfaces(producerBean);
-    }
-    
-    public static <T> void defineNormalProducerMethodApi(AbstractProducerBean<T> producerBean, Type type)
+    private static <T> void defineNormalProducerMethodApi(AbstractProducerBean<T> producerBean, Type type)
     {
         Set<Type> types = producerBean.getTypes();
         types.add(Object.class);
@@ -436,7 +401,7 @@ public final class DefinitionUtil
         
     }
 
-    public void defineDefaultScopeType(OwbBean<?> component, String exceptionMessage, boolean allowLazyInit)
+    private void defineDefaultScopeType(OwbBean<?> component, String exceptionMessage, boolean allowLazyInit)
     {
         // Frist look for inherited scope
         IBeanInheritedMetaData metaData = null;
@@ -675,26 +640,6 @@ public final class DefinitionUtil
         }
     }
 
-    public <T> void addFieldInjectionPointMetaData(AbstractOwbBean<T> owner, Field field)
-    {
-        InjectionPoint injectionPoint = owner.getWebBeansContext().getInjectionPointFactory().getFieldInjectionPointData(owner, field);
-        if (injectionPoint != null)
-        {
-            addImplicitComponentForInjectionPoint(injectionPoint);
-            owner.addInjectionPoint(injectionPoint);
-        }
-    }
-
-    public <T> void addMethodInjectionPointMetaData(AbstractOwbBean<T> owner, Method method)
-    {
-        List<InjectionPoint> injectionPoints = owner.getWebBeansContext().getInjectionPointFactory().getMethodInjectionPointData(owner, method);
-        for (InjectionPoint injectionPoint : injectionPoints)
-        {
-            addImplicitComponentForInjectionPoint(injectionPoint);
-            owner.addInjectionPoint(injectionPoint);
-        }
-    }
-
     public <T> void addConstructorInjectionPointMetaData(AbstractOwbBean<T> owner, Constructor<T> constructor)
     {
         List<InjectionPoint> injectionPoints = owner.getWebBeansContext().getInjectionPointFactory().getConstructorInjectionPointData(owner, constructor);
@@ -712,103 +657,4 @@ public final class DefinitionUtil
             EventUtil.checkObservableInjectionPointConditions(injectionPoint);
         }        
     }
-    
-    public <X> Set<ProducerMethodBean<?>> defineProducerMethods(InjectionTargetBean<X> bean, AnnotatedType<X> annotatedType)
-    {
-        Set<ProducerMethodBean<?>> producerComponents = new HashSet<ProducerMethodBean<?>>();
-        Set<AnnotatedMethod<? super X>> annotatedMethods = annotatedType.getMethods();
-        
-        for(AnnotatedMethod annotatedMethod: annotatedMethods)
-        {
-            createProducerBeansFromAnnotatedType(bean, producerComponents, annotatedMethod, bean.getReturnType(), false);
-        }
-        
-        return producerComponents;
-    }
-    
-    private <X> void createProducerBeansFromAnnotatedType(InjectionTargetBean<X> bean, Set<ProducerMethodBean<?>> producerComponents,
-                                                          AnnotatedMethod<X> annotatedMethod, Class<?> clazz, boolean isSpecializes)
-    {
-        boolean specializes = isSpecializes;
-        Set<Annotation> annSet = annotatedMethod.getAnnotations();
-        if (annSet == null || annSet.isEmpty())
-        {
-            return;
-        }
-
-        Annotation[] anns = annSet.toArray(new Annotation[annSet.size()]);
-        
-        List<AnnotatedParameter<X>> parameters = annotatedMethod.getParameters();
-        // Producer Method
-        if (AnnotationUtil.hasAnnotation(anns, Produces.class))
-        {
-            for(AnnotatedParameter<X> parameter : parameters)
-            {
-                Set<Annotation> paramAnnSet = parameter.getAnnotations();
-                Annotation[] parameterAnns = paramAnnSet.toArray(new Annotation[parameter.getAnnotations().size()]);
-                if (AnnotationUtil.hasAnnotation(anns, Inject.class) ||
-                    AnnotationUtil.hasAnnotation(parameterAnns, Disposes.class) ||
-                    AnnotationUtil.hasAnnotation(parameterAnns, Observes.class))
-                {
-                    throw new WebBeansConfigurationException("Producer Method Bean with name : " + annotatedMethod.getJavaMember().getName() + " in bean class : " + clazz
-                                                             + " can not be annotated with @Initializer/@Destructor annotation "
-                                                             + "or has a parameter annotated with @Disposes/@Observes");
-                }
-                
-            }
-            
-            if (AnnotationUtil.hasAnnotation(anns, Specializes.class))
-            {
-                if (Modifier.isStatic(annotatedMethod.getJavaMember().getModifiers()))
-                {
-                    throw new WebBeansConfigurationException("Specializing producer method : " + annotatedMethod.getJavaMember().getName() + " in class : " + clazz.getName()
-                                                             + " can not be static");
-                }
-
-                specializes = true;
-            }
-
-            ProducerMethodBean<?> newComponent = createProducerBeanFromAnnotatedType((Class<X>)annotatedMethod.getJavaMember().getReturnType(),
-                                                                                     annotatedMethod, bean, specializes);
-            if (newComponent != null)
-            {
-                producerComponents.add(newComponent);
-                addMethodInjectionPointMetaData(newComponent, annotatedMethod.getJavaMember());
-            }
-        }
-
-    }
-
-    public <X> ProducerMethodBean<X> createProducerBeanFromAnnotatedType(Class<X> returnType, AnnotatedMethod<X> method,
-                                                                                InjectionTargetBean<?> parent, boolean isSpecializes)
-    {
-        ProducerMethodBean<X> bean = new ProducerMethodBean<X>(parent, returnType);
-        bean.setCreatorMethod(method.getJavaMember());
-
-        if (isSpecializes)
-        {
-            WebBeansUtil.configureProducerSpecialization(bean, method.getJavaMember(), parent.getReturnType().getSuperclass());
-        }
-
-        if (returnType.isPrimitive())
-        {
-            bean.setNullable(false);
-        }
-
-        Set<Annotation> annSet = method.getAnnotations();
-        Annotation[] anns = annSet.toArray(new Annotation[annSet.size()]);
-        
-        defineSerializable(bean);
-        defineStereoTypes(bean, anns);
-
-        defineProducerMethodApiTypes(bean, method.getBaseType(), anns);
-        defineScopeType(bean, anns, "Bean producer method : " + method.getJavaMember().getName() + " in class "
-                                                   + parent.getReturnType().getName() + " must declare default @Scope annotation", false);
-        WebBeansUtil.checkProducerGenericType(bean,method.getJavaMember());        
-        defineName(bean, anns, WebBeansUtil.getProducerDefaultName(method.getJavaMember().getName()));
-        defineQualifiers(bean, anns);
-
-        return bean;
-    }
-    
 }