You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openwebbeans.apache.org by Mark Struberg <st...@yahoo.de> on 2014/10/01 16:31:49 UTC
Re: svn commit: r1628704 - in /openwebbeans/trunk/webbeans-impl/src: main/java/org/apache/webbeans/component/creation/ main/java/org/apache/webbeans/container/ main/java/org/apache/webbeans/portable/ main/java/org/apache/webbeans/util/ test/java/org/apache...
Isn't this the same thing as OWB-1015?
Oh, please disable your auto-formatting. This always creates tons of useless changes in the diff. It's much harder to review committs that way.
LieGrue,
strub
> On Wednesday, 1 October 2014, 15:50, "rmannibucau@apache.org" <rm...@apache.org> wrote:
> > Author: rmannibucau
> Date: Wed Oct 1 13:50:20 2014
> New Revision: 1628704
>
> URL: http://svn.apache.org/r1628704
> Log:
> tcks: unproxyable exceptions - I guess we copy Weld since this doesn't look
> that consistent to respect TCKs + minor check on TypeVariable, surely to do in a
> better way (using asm?)
>
> Modified:
>
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
>
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
>
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
>
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
>
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
>
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
>
> Modified:
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
> URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java?rev=1628704&r1=1628703&r2=1628704&view=diff
> ==============================================================================
> ---
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
> (original)
> +++
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
> Wed Oct 1 13:50:20 2014
> @@ -138,12 +138,15 @@ public abstract class BeanAttributesBuil
> Set<Type> types = annotated.getTypeClosure();
> this.types.addAll(types);
> Set<String> ignored =
> webBeansContext.getOpenWebBeansConfiguration().getIgnoredInterfaces();
> - for (Iterator<Type> i = this.types.iterator(); i.hasNext();)
> + if (!ignored.isEmpty())
> {
> - Type t = i.next();
> - if (t instanceof Class &&
> ignored.contains(((Class<?>)t).getName()))
> + for (Iterator<Type> i = this.types.iterator();
> i.hasNext(); )
> {
> - i.remove();
> + Type t = i.next();
> + if (t instanceof Class &&
> ignored.contains(((Class<?>) t).getName()))
> + {
> + i.remove();
> + }
> }
> }
> }
>
> Modified:
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
> URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java?rev=1628704&r1=1628703&r2=1628704&view=diff
> ==============================================================================
> ---
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
> (original)
> +++
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
> Wed Oct 1 13:50:20 2014
> @@ -534,11 +534,9 @@ public class BeanManagerImpl implements
> * {@inheritDoc}
> */
> @Override
> - public <T> AnnotatedType<T> createAnnotatedType(Class<T>
> type)
> + public <T> AnnotatedType<T> createAnnotatedType(final
> Class<T> type)
> {
> - AnnotatedType<T> annotatedType =
> annotatedElementFactory.newAnnotatedType(type);
> -
> - return annotatedType;
> + return annotatedElementFactory.newAnnotatedType(type);
> }
>
> /**
>
> Modified:
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
> URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java?rev=1628704&r1=1628703&r2=1628704&view=diff
> ==============================================================================
> ---
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
> (original)
> +++
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
> Wed Oct 1 13:50:20 2014
> @@ -18,36 +18,14 @@
> */
> package org.apache.webbeans.container;
>
> -import java.lang.annotation.Annotation;
> -import java.lang.reflect.GenericArrayType;
> -import java.lang.reflect.ParameterizedType;
> -import java.lang.reflect.Type;
> -import java.lang.reflect.TypeVariable;
> -import java.lang.reflect.WildcardType;
> -import java.util.Collections;
> -import java.util.HashSet;
> -import java.util.Iterator;
> -import java.util.List;
> -import java.util.Map;
> -import java.util.Set;
> -import java.util.concurrent.ConcurrentHashMap;
> -import java.util.logging.Level;
> -import java.util.logging.Logger;
> -
> -import javax.enterprise.event.Event;
> -import javax.enterprise.inject.Instance;
> -import javax.enterprise.inject.New;
> -import javax.enterprise.inject.spi.Bean;
> -import javax.enterprise.inject.spi.InjectionPoint;
> -
> import org.apache.webbeans.annotation.AnyLiteral;
> import org.apache.webbeans.annotation.DefaultLiteral;
> import org.apache.webbeans.component.AbstractOwbBean;
> import org.apache.webbeans.component.InjectionTargetBean;
> +import org.apache.webbeans.component.ManagedBean;
> import org.apache.webbeans.component.OwbBean;
> import org.apache.webbeans.config.WebBeansContext;
> import org.apache.webbeans.exception.WebBeansConfigurationException;
> -import javax.enterprise.inject.spi.DefinitionException;
> import org.apache.webbeans.inject.AlternativesManager;
> import org.apache.webbeans.logger.WebBeansLoggerFacade;
> import org.apache.webbeans.spi.BDABeansXmlScanner;
> @@ -59,6 +37,31 @@ import org.apache.webbeans.util.Generics
> import org.apache.webbeans.util.InjectionExceptionUtil;
> import org.apache.webbeans.util.SingleItemSet;
> import org.apache.webbeans.util.WebBeansUtil;
> +
> +import javax.enterprise.event.Event;
> +import javax.enterprise.inject.Instance;
> +import javax.enterprise.inject.New;
> +import javax.enterprise.inject.UnproxyableResolutionException;
> +import javax.enterprise.inject.spi.Bean;
> +import javax.enterprise.inject.spi.DefinitionException;
> +import javax.enterprise.inject.spi.DeploymentException;
> +import javax.enterprise.inject.spi.InjectionPoint;
> +import java.lang.annotation.Annotation;
> +import java.lang.reflect.GenericArrayType;
> +import java.lang.reflect.ParameterizedType;
> +import java.lang.reflect.Type;
> +import java.lang.reflect.TypeVariable;
> +import java.lang.reflect.WildcardType;
> +import java.util.Collections;
> +import java.util.HashSet;
> +import java.util.Iterator;
> +import java.util.List;
> +import java.util.Map;
> +import java.util.Set;
> +import java.util.concurrent.ConcurrentHashMap;
> +import java.util.logging.Level;
> +import java.util.logging.Logger;
> +
> import static
> org.apache.webbeans.util.InjectionExceptionUtil.throwAmbiguousResolutionException;
>
> /**
> @@ -139,6 +142,20 @@ public class InjectionResolver
> {
> throw new WebBeansConfigurationException("Injection point type
> : " + injectionPoint + " needs to define type argument for
> javax.enterprise.event.Event");
> }
> +
> + // not that happy about this check here and at runtime but few TCKs
> test Weld behavior only...
> + final Bean<?> bean = resolve(implResolveByType(false, type,
> injectionPoint.getQualifiers().toArray(new
> Annotation[injectionPoint.getQualifiers().size()])));
> + if (bean != null && ManagedBean.class.isInstance(bean))
> + {
> + try
> + {
> + ManagedBean.class.cast(bean).valid();
> + }
> + catch (final UnproxyableResolutionException ure)
> + {
> + throw new DeploymentException(ure);
> + }
> + }
> }
>
> /**
>
> Modified:
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
> URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java?rev=1628704&r1=1628703&r2=1628704&view=diff
> ==============================================================================
> ---
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
> (original)
> +++
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
> Wed Oct 1 13:50:20 2014
> @@ -46,7 +46,7 @@ abstract class AbstractAnnotated impleme
>
> /**Type closures*/
> private Set<Type> typeClosures = null;
> -
> +
> /**Set of annotations*/
> private Set<Annotation> annotations = new
> HashSet<Annotation>();
>
> @@ -226,13 +226,8 @@ abstract class AbstractAnnotated impleme
>
> public String toString()
> {
> - StringBuilder builder = new StringBuilder();
> -
> - builder.append("Base Type : " + baseType.toString() +
> ",");
> - builder.append("Type Closures : " + typeClosures +
> ",");
> - builder.append("Annotations : " + annotations.toString());
> -
> - return builder.toString();
> + return ("Base Type : " + baseType.toString() + ",")
> + + "Type Closures : " + typeClosures + ","
> + + "Annotations : " + annotations.toString();
> }
> -
> }
>
> Modified:
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
> URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java?rev=1628704&r1=1628703&r2=1628704&view=diff
> ==============================================================================
> ---
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
> (original)
> +++
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
> Wed Oct 1 13:50:20 2014
> @@ -292,7 +292,7 @@ public final class GenericsUtil
> {
> for (Type upperBound:
> ((TypeVariable<?>)beanTypeArgument).getBounds())
> {
> - if (!isAssignableFrom(swapParams, upperBound,
> injectionPointTypeArgument))
> + if (!isAssignableFrom(true, upperBound,
> injectionPointTypeArgument))
> {
> return false;
> }
> @@ -303,7 +303,8 @@ public final class GenericsUtil
> {
> return false;
> }
> - else if (!isAssignableFrom(isDelegateOrEvent,
> injectionPointTypeArgument, beanTypeArgument))
> + else if ((!TypeVariable.class.isInstance(beanTypeArgument) ||
> TypeVariable.class.cast(beanTypeArgument).getGenericDeclaration() !=
> beanType.getRawType())
> + && !isAssignableFrom(isDelegateOrEvent,
> injectionPointTypeArgument, beanTypeArgument))
> {
> return false;
> }
>
> Modified:
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
> URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java?rev=1628704&r1=1628703&r2=1628704&view=diff
> ==============================================================================
> ---
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
> (original)
> +++
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
> Wed Oct 1 13:50:20 2014
> @@ -18,8 +18,6 @@
> */
> package org.apache.webbeans.test.injection.generics;
>
> -import java.util.List;
> -
> import javax.enterprise.inject.Produces;
>
> public class GenericFactory {
> @@ -35,7 +33,7 @@ public class GenericFactory {
> }
>
> @Produces
> - public Baz<List<BazSubclass>> produceBazBazBazSubclass() {
> + public Baz<Baz<BazSubclass>> produceBazBazBazSubclass() {
> return new Baz();
> }
> }
>
Re: svn commit: r1628704 - in /openwebbeans/trunk/webbeans-impl/src:
main/java/org/apache/webbeans/component/creation/ main/java/org/apache/webbeans/container/
main/java/org/apache/webbeans/portable/ main/java/org/apache/webbeans/util/ test/java/org/apache...
Posted by Romain Manni-Bucau <rm...@gmail.com>.
I guess that's the same excepted valid should be void valid() since
boolean signature is not respected (so patch was not working)
Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau
2014-10-01 16:31 GMT+02:00 Mark Struberg <st...@yahoo.de>:
> Isn't this the same thing as OWB-1015?
>
> Oh, please disable your auto-formatting. This always creates tons of useless changes in the diff. It's much harder to review committs that way.
>
> LieGrue,
> strub
>
>
>
>
>> On Wednesday, 1 October 2014, 15:50, "rmannibucau@apache.org" <rm...@apache.org> wrote:
>> > Author: rmannibucau
>> Date: Wed Oct 1 13:50:20 2014
>> New Revision: 1628704
>>
>> URL: http://svn.apache.org/r1628704
>> Log:
>> tcks: unproxyable exceptions - I guess we copy Weld since this doesn't look
>> that consistent to respect TCKs + minor check on TypeVariable, surely to do in a
>> better way (using asm?)
>>
>> Modified:
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
>>
>> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
>> Wed Oct 1 13:50:20 2014
>> @@ -138,12 +138,15 @@ public abstract class BeanAttributesBuil
>> Set<Type> types = annotated.getTypeClosure();
>> this.types.addAll(types);
>> Set<String> ignored =
>> webBeansContext.getOpenWebBeansConfiguration().getIgnoredInterfaces();
>> - for (Iterator<Type> i = this.types.iterator(); i.hasNext();)
>> + if (!ignored.isEmpty())
>> {
>> - Type t = i.next();
>> - if (t instanceof Class &&
>> ignored.contains(((Class<?>)t).getName()))
>> + for (Iterator<Type> i = this.types.iterator();
>> i.hasNext(); )
>> {
>> - i.remove();
>> + Type t = i.next();
>> + if (t instanceof Class &&
>> ignored.contains(((Class<?>) t).getName()))
>> + {
>> + i.remove();
>> + }
>> }
>> }
>> }
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
>> Wed Oct 1 13:50:20 2014
>> @@ -534,11 +534,9 @@ public class BeanManagerImpl implements
>> * {@inheritDoc}
>> */
>> @Override
>> - public <T> AnnotatedType<T> createAnnotatedType(Class<T>
>> type)
>> + public <T> AnnotatedType<T> createAnnotatedType(final
>> Class<T> type)
>> {
>> - AnnotatedType<T> annotatedType =
>> annotatedElementFactory.newAnnotatedType(type);
>> -
>> - return annotatedType;
>> + return annotatedElementFactory.newAnnotatedType(type);
>> }
>>
>> /**
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
>> Wed Oct 1 13:50:20 2014
>> @@ -18,36 +18,14 @@
>> */
>> package org.apache.webbeans.container;
>>
>> -import java.lang.annotation.Annotation;
>> -import java.lang.reflect.GenericArrayType;
>> -import java.lang.reflect.ParameterizedType;
>> -import java.lang.reflect.Type;
>> -import java.lang.reflect.TypeVariable;
>> -import java.lang.reflect.WildcardType;
>> -import java.util.Collections;
>> -import java.util.HashSet;
>> -import java.util.Iterator;
>> -import java.util.List;
>> -import java.util.Map;
>> -import java.util.Set;
>> -import java.util.concurrent.ConcurrentHashMap;
>> -import java.util.logging.Level;
>> -import java.util.logging.Logger;
>> -
>> -import javax.enterprise.event.Event;
>> -import javax.enterprise.inject.Instance;
>> -import javax.enterprise.inject.New;
>> -import javax.enterprise.inject.spi.Bean;
>> -import javax.enterprise.inject.spi.InjectionPoint;
>> -
>> import org.apache.webbeans.annotation.AnyLiteral;
>> import org.apache.webbeans.annotation.DefaultLiteral;
>> import org.apache.webbeans.component.AbstractOwbBean;
>> import org.apache.webbeans.component.InjectionTargetBean;
>> +import org.apache.webbeans.component.ManagedBean;
>> import org.apache.webbeans.component.OwbBean;
>> import org.apache.webbeans.config.WebBeansContext;
>> import org.apache.webbeans.exception.WebBeansConfigurationException;
>> -import javax.enterprise.inject.spi.DefinitionException;
>> import org.apache.webbeans.inject.AlternativesManager;
>> import org.apache.webbeans.logger.WebBeansLoggerFacade;
>> import org.apache.webbeans.spi.BDABeansXmlScanner;
>> @@ -59,6 +37,31 @@ import org.apache.webbeans.util.Generics
>> import org.apache.webbeans.util.InjectionExceptionUtil;
>> import org.apache.webbeans.util.SingleItemSet;
>> import org.apache.webbeans.util.WebBeansUtil;
>> +
>> +import javax.enterprise.event.Event;
>> +import javax.enterprise.inject.Instance;
>> +import javax.enterprise.inject.New;
>> +import javax.enterprise.inject.UnproxyableResolutionException;
>> +import javax.enterprise.inject.spi.Bean;
>> +import javax.enterprise.inject.spi.DefinitionException;
>> +import javax.enterprise.inject.spi.DeploymentException;
>> +import javax.enterprise.inject.spi.InjectionPoint;
>> +import java.lang.annotation.Annotation;
>> +import java.lang.reflect.GenericArrayType;
>> +import java.lang.reflect.ParameterizedType;
>> +import java.lang.reflect.Type;
>> +import java.lang.reflect.TypeVariable;
>> +import java.lang.reflect.WildcardType;
>> +import java.util.Collections;
>> +import java.util.HashSet;
>> +import java.util.Iterator;
>> +import java.util.List;
>> +import java.util.Map;
>> +import java.util.Set;
>> +import java.util.concurrent.ConcurrentHashMap;
>> +import java.util.logging.Level;
>> +import java.util.logging.Logger;
>> +
>> import static
>> org.apache.webbeans.util.InjectionExceptionUtil.throwAmbiguousResolutionException;
>>
>> /**
>> @@ -139,6 +142,20 @@ public class InjectionResolver
>> {
>> throw new WebBeansConfigurationException("Injection point type
>> : " + injectionPoint + " needs to define type argument for
>> javax.enterprise.event.Event");
>> }
>> +
>> + // not that happy about this check here and at runtime but few TCKs
>> test Weld behavior only...
>> + final Bean<?> bean = resolve(implResolveByType(false, type,
>> injectionPoint.getQualifiers().toArray(new
>> Annotation[injectionPoint.getQualifiers().size()])));
>> + if (bean != null && ManagedBean.class.isInstance(bean))
>> + {
>> + try
>> + {
>> + ManagedBean.class.cast(bean).valid();
>> + }
>> + catch (final UnproxyableResolutionException ure)
>> + {
>> + throw new DeploymentException(ure);
>> + }
>> + }
>> }
>>
>> /**
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
>> Wed Oct 1 13:50:20 2014
>> @@ -46,7 +46,7 @@ abstract class AbstractAnnotated impleme
>>
>> /**Type closures*/
>> private Set<Type> typeClosures = null;
>> -
>> +
>> /**Set of annotations*/
>> private Set<Annotation> annotations = new
>> HashSet<Annotation>();
>>
>> @@ -226,13 +226,8 @@ abstract class AbstractAnnotated impleme
>>
>> public String toString()
>> {
>> - StringBuilder builder = new StringBuilder();
>> -
>> - builder.append("Base Type : " + baseType.toString() +
>> ",");
>> - builder.append("Type Closures : " + typeClosures +
>> ",");
>> - builder.append("Annotations : " + annotations.toString());
>> -
>> - return builder.toString();
>> + return ("Base Type : " + baseType.toString() + ",")
>> + + "Type Closures : " + typeClosures + ","
>> + + "Annotations : " + annotations.toString();
>> }
>> -
>> }
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
>> Wed Oct 1 13:50:20 2014
>> @@ -292,7 +292,7 @@ public final class GenericsUtil
>> {
>> for (Type upperBound:
>> ((TypeVariable<?>)beanTypeArgument).getBounds())
>> {
>> - if (!isAssignableFrom(swapParams, upperBound,
>> injectionPointTypeArgument))
>> + if (!isAssignableFrom(true, upperBound,
>> injectionPointTypeArgument))
>> {
>> return false;
>> }
>> @@ -303,7 +303,8 @@ public final class GenericsUtil
>> {
>> return false;
>> }
>> - else if (!isAssignableFrom(isDelegateOrEvent,
>> injectionPointTypeArgument, beanTypeArgument))
>> + else if ((!TypeVariable.class.isInstance(beanTypeArgument) ||
>> TypeVariable.class.cast(beanTypeArgument).getGenericDeclaration() !=
>> beanType.getRawType())
>> + && !isAssignableFrom(isDelegateOrEvent,
>> injectionPointTypeArgument, beanTypeArgument))
>> {
>> return false;
>> }
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
>> Wed Oct 1 13:50:20 2014
>> @@ -18,8 +18,6 @@
>> */
>> package org.apache.webbeans.test.injection.generics;
>>
>> -import java.util.List;
>> -
>> import javax.enterprise.inject.Produces;
>>
>> public class GenericFactory {
>> @@ -35,7 +33,7 @@ public class GenericFactory {
>> }
>>
>> @Produces
>> - public Baz<List<BazSubclass>> produceBazBazBazSubclass() {
>> + public Baz<Baz<BazSubclass>> produceBazBazBazSubclass() {
>> return new Baz();
>> }
>> }
>>
Re: svn commit: r1628704 - in /openwebbeans/trunk/webbeans-impl/src:
main/java/org/apache/webbeans/component/creation/ main/java/org/apache/webbeans/container/
main/java/org/apache/webbeans/portable/ main/java/org/apache/webbeans/util/ test/java/org/apache...
Posted by Romain Manni-Bucau <rm...@gmail.com>.
I guess that's the same excepted valid should be void valid() since
boolean signature is not respected (so patch was not working)
Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau
2014-10-01 16:31 GMT+02:00 Mark Struberg <st...@yahoo.de>:
> Isn't this the same thing as OWB-1015?
>
> Oh, please disable your auto-formatting. This always creates tons of useless changes in the diff. It's much harder to review committs that way.
>
> LieGrue,
> strub
>
>
>
>
>> On Wednesday, 1 October 2014, 15:50, "rmannibucau@apache.org" <rm...@apache.org> wrote:
>> > Author: rmannibucau
>> Date: Wed Oct 1 13:50:20 2014
>> New Revision: 1628704
>>
>> URL: http://svn.apache.org/r1628704
>> Log:
>> tcks: unproxyable exceptions - I guess we copy Weld since this doesn't look
>> that consistent to respect TCKs + minor check on TypeVariable, surely to do in a
>> better way (using asm?)
>>
>> Modified:
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
>>
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
>>
>> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/creation/BeanAttributesBuilder.java
>> Wed Oct 1 13:50:20 2014
>> @@ -138,12 +138,15 @@ public abstract class BeanAttributesBuil
>> Set<Type> types = annotated.getTypeClosure();
>> this.types.addAll(types);
>> Set<String> ignored =
>> webBeansContext.getOpenWebBeansConfiguration().getIgnoredInterfaces();
>> - for (Iterator<Type> i = this.types.iterator(); i.hasNext();)
>> + if (!ignored.isEmpty())
>> {
>> - Type t = i.next();
>> - if (t instanceof Class &&
>> ignored.contains(((Class<?>)t).getName()))
>> + for (Iterator<Type> i = this.types.iterator();
>> i.hasNext(); )
>> {
>> - i.remove();
>> + Type t = i.next();
>> + if (t instanceof Class &&
>> ignored.contains(((Class<?>) t).getName()))
>> + {
>> + i.remove();
>> + }
>> }
>> }
>> }
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/BeanManagerImpl.java
>> Wed Oct 1 13:50:20 2014
>> @@ -534,11 +534,9 @@ public class BeanManagerImpl implements
>> * {@inheritDoc}
>> */
>> @Override
>> - public <T> AnnotatedType<T> createAnnotatedType(Class<T>
>> type)
>> + public <T> AnnotatedType<T> createAnnotatedType(final
>> Class<T> type)
>> {
>> - AnnotatedType<T> annotatedType =
>> annotatedElementFactory.newAnnotatedType(type);
>> -
>> - return annotatedType;
>> + return annotatedElementFactory.newAnnotatedType(type);
>> }
>>
>> /**
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/container/InjectionResolver.java
>> Wed Oct 1 13:50:20 2014
>> @@ -18,36 +18,14 @@
>> */
>> package org.apache.webbeans.container;
>>
>> -import java.lang.annotation.Annotation;
>> -import java.lang.reflect.GenericArrayType;
>> -import java.lang.reflect.ParameterizedType;
>> -import java.lang.reflect.Type;
>> -import java.lang.reflect.TypeVariable;
>> -import java.lang.reflect.WildcardType;
>> -import java.util.Collections;
>> -import java.util.HashSet;
>> -import java.util.Iterator;
>> -import java.util.List;
>> -import java.util.Map;
>> -import java.util.Set;
>> -import java.util.concurrent.ConcurrentHashMap;
>> -import java.util.logging.Level;
>> -import java.util.logging.Logger;
>> -
>> -import javax.enterprise.event.Event;
>> -import javax.enterprise.inject.Instance;
>> -import javax.enterprise.inject.New;
>> -import javax.enterprise.inject.spi.Bean;
>> -import javax.enterprise.inject.spi.InjectionPoint;
>> -
>> import org.apache.webbeans.annotation.AnyLiteral;
>> import org.apache.webbeans.annotation.DefaultLiteral;
>> import org.apache.webbeans.component.AbstractOwbBean;
>> import org.apache.webbeans.component.InjectionTargetBean;
>> +import org.apache.webbeans.component.ManagedBean;
>> import org.apache.webbeans.component.OwbBean;
>> import org.apache.webbeans.config.WebBeansContext;
>> import org.apache.webbeans.exception.WebBeansConfigurationException;
>> -import javax.enterprise.inject.spi.DefinitionException;
>> import org.apache.webbeans.inject.AlternativesManager;
>> import org.apache.webbeans.logger.WebBeansLoggerFacade;
>> import org.apache.webbeans.spi.BDABeansXmlScanner;
>> @@ -59,6 +37,31 @@ import org.apache.webbeans.util.Generics
>> import org.apache.webbeans.util.InjectionExceptionUtil;
>> import org.apache.webbeans.util.SingleItemSet;
>> import org.apache.webbeans.util.WebBeansUtil;
>> +
>> +import javax.enterprise.event.Event;
>> +import javax.enterprise.inject.Instance;
>> +import javax.enterprise.inject.New;
>> +import javax.enterprise.inject.UnproxyableResolutionException;
>> +import javax.enterprise.inject.spi.Bean;
>> +import javax.enterprise.inject.spi.DefinitionException;
>> +import javax.enterprise.inject.spi.DeploymentException;
>> +import javax.enterprise.inject.spi.InjectionPoint;
>> +import java.lang.annotation.Annotation;
>> +import java.lang.reflect.GenericArrayType;
>> +import java.lang.reflect.ParameterizedType;
>> +import java.lang.reflect.Type;
>> +import java.lang.reflect.TypeVariable;
>> +import java.lang.reflect.WildcardType;
>> +import java.util.Collections;
>> +import java.util.HashSet;
>> +import java.util.Iterator;
>> +import java.util.List;
>> +import java.util.Map;
>> +import java.util.Set;
>> +import java.util.concurrent.ConcurrentHashMap;
>> +import java.util.logging.Level;
>> +import java.util.logging.Logger;
>> +
>> import static
>> org.apache.webbeans.util.InjectionExceptionUtil.throwAmbiguousResolutionException;
>>
>> /**
>> @@ -139,6 +142,20 @@ public class InjectionResolver
>> {
>> throw new WebBeansConfigurationException("Injection point type
>> : " + injectionPoint + " needs to define type argument for
>> javax.enterprise.event.Event");
>> }
>> +
>> + // not that happy about this check here and at runtime but few TCKs
>> test Weld behavior only...
>> + final Bean<?> bean = resolve(implResolveByType(false, type,
>> injectionPoint.getQualifiers().toArray(new
>> Annotation[injectionPoint.getQualifiers().size()])));
>> + if (bean != null && ManagedBean.class.isInstance(bean))
>> + {
>> + try
>> + {
>> + ManagedBean.class.cast(bean).valid();
>> + }
>> + catch (final UnproxyableResolutionException ure)
>> + {
>> + throw new DeploymentException(ure);
>> + }
>> + }
>> }
>>
>> /**
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/AbstractAnnotated.java
>> Wed Oct 1 13:50:20 2014
>> @@ -46,7 +46,7 @@ abstract class AbstractAnnotated impleme
>>
>> /**Type closures*/
>> private Set<Type> typeClosures = null;
>> -
>> +
>> /**Set of annotations*/
>> private Set<Annotation> annotations = new
>> HashSet<Annotation>();
>>
>> @@ -226,13 +226,8 @@ abstract class AbstractAnnotated impleme
>>
>> public String toString()
>> {
>> - StringBuilder builder = new StringBuilder();
>> -
>> - builder.append("Base Type : " + baseType.toString() +
>> ",");
>> - builder.append("Type Closures : " + typeClosures +
>> ",");
>> - builder.append("Annotations : " + annotations.toString());
>> -
>> - return builder.toString();
>> + return ("Base Type : " + baseType.toString() + ",")
>> + + "Type Closures : " + typeClosures + ","
>> + + "Annotations : " + annotations.toString();
>> }
>> -
>> }
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/GenericsUtil.java
>> Wed Oct 1 13:50:20 2014
>> @@ -292,7 +292,7 @@ public final class GenericsUtil
>> {
>> for (Type upperBound:
>> ((TypeVariable<?>)beanTypeArgument).getBounds())
>> {
>> - if (!isAssignableFrom(swapParams, upperBound,
>> injectionPointTypeArgument))
>> + if (!isAssignableFrom(true, upperBound,
>> injectionPointTypeArgument))
>> {
>> return false;
>> }
>> @@ -303,7 +303,8 @@ public final class GenericsUtil
>> {
>> return false;
>> }
>> - else if (!isAssignableFrom(isDelegateOrEvent,
>> injectionPointTypeArgument, beanTypeArgument))
>> + else if ((!TypeVariable.class.isInstance(beanTypeArgument) ||
>> TypeVariable.class.cast(beanTypeArgument).getGenericDeclaration() !=
>> beanType.getRawType())
>> + && !isAssignableFrom(isDelegateOrEvent,
>> injectionPointTypeArgument, beanTypeArgument))
>> {
>> return false;
>> }
>>
>> Modified:
>> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
>> URL:
>> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java?rev=1628704&r1=1628703&r2=1628704&view=diff
>> ==============================================================================
>> ---
>> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
>> (original)
>> +++
>> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/test/injection/generics/GenericFactory.java
>> Wed Oct 1 13:50:20 2014
>> @@ -18,8 +18,6 @@
>> */
>> package org.apache.webbeans.test.injection.generics;
>>
>> -import java.util.List;
>> -
>> import javax.enterprise.inject.Produces;
>>
>> public class GenericFactory {
>> @@ -35,7 +33,7 @@ public class GenericFactory {
>> }
>>
>> @Produces
>> - public Baz<List<BazSubclass>> produceBazBazBazSubclass() {
>> + public Baz<Baz<BazSubclass>> produceBazBazBazSubclass() {
>> return new Baz();
>> }
>> }
>>