You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by rm...@apache.org on 2012/11/19 08:32:41 UTC
svn commit: r1411090 -
/openwebbeans/branches/owb_1.1.x/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java
Author: rmannibucau
Date: Mon Nov 19 07:32:40 2012
New Revision: 1411090
URL: http://svn.apache.org/viewvc?rev=1411090&view=rev
Log:
OWB-722 @Typed not respected for bean with generics
Modified:
openwebbeans/branches/owb_1.1.x/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java
Modified: openwebbeans/branches/owb_1.1.x/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java
URL: http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.1.x/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java?rev=1411090&r1=1411089&r2=1411090&view=diff
==============================================================================
--- openwebbeans/branches/owb_1.1.x/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java (original)
+++ openwebbeans/branches/owb_1.1.x/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java Mon Nov 19 07:32:40 2012
@@ -222,6 +222,16 @@ public final class ClassUtil
return clazz.isMemberClass();
}
+ public static Class<?> identityOrGetPrimitiveWrapper(Class<?> clazz)
+ {
+ if (clazz.isPrimitive())
+ {
+ return getPrimitiveWrapper(clazz);
+ }
+ return clazz;
+
+ }
+
public static Class<?> getPrimitiveWrapper(Class<?> clazz)
{
Asserts.nullCheckForClass(clazz);
@@ -565,9 +575,9 @@ public final class ClassUtil
{
boolean ok = true;
ParameterizedType ptBean = (ParameterizedType)beanType;
- Class<?> clazzBeanType = (Class<?>)ptBean.getRawType();
- Class<?> clazzReqType = (Class<?>)requiredType;
- if(isClassAssignable(clazzReqType, clazzBeanType ))
+ Class<?> clazzBeanType = identityOrGetPrimitiveWrapper((Class<?>)ptBean.getRawType());
+ Class<?> clazzReqType = identityOrGetPrimitiveWrapper((Class<?>)requiredType);
+ if(clazzBeanType.equals(clazzReqType))
{
Type[] beanTypeArgs = ptBean.getActualTypeArguments();
for(Type actual : beanTypeArgs)