[weld-commits] Weld SVN: r4626 - in core/trunk/impl/src/main/java/org/jboss/weld: introspector/jlr and 2 other directories.
weld-commits at lists.jboss.org
weld-commits at lists.jboss.org
Tue Nov 3 13:58:17 EST 2009
Author: pete.muir at jboss.org
Date: 2009-11-03 13:58:17 -0500 (Tue, 03 Nov 2009)
New Revision: 4626
Modified:
core/trunk/impl/src/main/java/org/jboss/weld/BeanManagerImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldAnnotated.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldCallable.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldMember.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldAnnotationImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldClassImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldConstructorImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldFieldImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldMethodImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldParameterImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/resolution/NewResolvableTransformer.java
core/trunk/impl/src/main/java/org/jboss/weld/util/Reflections.java
Log:
generalize fix for WELD-201
Modified: core/trunk/impl/src/main/java/org/jboss/weld/BeanManagerImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/BeanManagerImpl.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/BeanManagerImpl.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -631,7 +631,7 @@
}
bindingAnnotations.add(new AnyLiteral());
Set<ObserverMethod<? super T>> observers = new HashSet<ObserverMethod<? super T>>();
- Set<ObserverMethod<?>> eventObservers = observerResolver.resolve(ResolvableFactory.of(new Reflections.HierarchyDiscovery(eventType).getTypeClosureAsSet(), bindingAnnotations, null));
+ Set<ObserverMethod<?>> eventObservers = observerResolver.resolve(ResolvableFactory.of(new Reflections.HierarchyDiscovery(eventType).getTypeClosure(), bindingAnnotations, null));
for (ObserverMethod<?> observer : eventObservers)
{
observers.add((ObserverMethod<T>) observer);
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldAnnotated.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldAnnotated.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldAnnotated.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -29,7 +29,6 @@
import org.jboss.weld.introspector.WeldAnnotated;
import org.jboss.weld.util.Proxies;
import org.jboss.weld.util.Reflections;
-import org.jboss.weld.util.Reflections.HierarchyDiscovery;
import org.jboss.weld.util.collections.Arrays2;
/**
@@ -77,7 +76,7 @@
* @param annotationMap A map of annotation to register
*
*/
- public AbstractWeldAnnotated(AnnotationStore annotatedItemHelper, Class<T> rawType, Type type)
+ public AbstractWeldAnnotated(AnnotationStore annotatedItemHelper, Class<T> rawType, Type type, Set<Type> typeClosure)
{
this.annotationStore = annotatedItemHelper;
this.rawType = rawType;
@@ -91,14 +90,13 @@
this.actualTypeArguments = new Type[0];
}
this._parameterizedType = Reflections.isParameterizedType(rawType);
- HierarchyDiscovery discovery = new Reflections.HierarchyDiscovery(type);
this.interfaceOnlyFlattenedTypes = new HashSet<Type>();
for (Type t : rawType.getGenericInterfaces())
{
- interfaceOnlyFlattenedTypes.addAll(new Reflections.HierarchyDiscovery(t).getTypeClosureAsSet());
+ interfaceOnlyFlattenedTypes.addAll(new Reflections.HierarchyDiscovery(t).getTypeClosure());
}
- this.typeClosureAsSet = discovery.getTypeClosureAsSet();
- this.typeClosureAsMap = discovery.getTypeClosureAsMap();
+ this.typeClosureAsMap = Reflections.buildTypeMap(typeClosure);
+ this.typeClosureAsSet = typeClosure;
this.proxyable = Proxies.isTypesProxyable(typeClosureAsSet);
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldCallable.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldCallable.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldCallable.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -18,6 +18,7 @@
import java.lang.reflect.Member;
import java.lang.reflect.Type;
+import java.util.Set;
import org.jboss.weld.introspector.AnnotationStore;
import org.jboss.weld.introspector.WeldCallable;
@@ -32,9 +33,9 @@
- protected AbstractWeldCallable(AnnotationStore annotatedItemHelper, Member member, Class<T> rawType, Type type, WeldClass<X> declaringType)
+ protected AbstractWeldCallable(AnnotationStore annotatedItemHelper, Member member, Class<T> rawType, Type type, Set<Type> typeClosure, WeldClass<X> declaringType)
{
- super(annotatedItemHelper, member, rawType, type, declaringType);
+ super(annotatedItemHelper, member, rawType, type, typeClosure, declaringType);
}
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldMember.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldMember.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/AbstractWeldMember.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -19,6 +19,7 @@
import java.lang.reflect.Member;
import java.lang.reflect.Modifier;
import java.lang.reflect.Type;
+import java.util.Set;
import org.jboss.weld.introspector.AnnotationStore;
import org.jboss.weld.introspector.ForwardingWeldMember;
@@ -60,9 +61,9 @@
*
* @param annotationMap The annotation map
*/
- protected AbstractWeldMember(AnnotationStore annotatedItemHelper, Member member, Class<T> rawType, Type type, WeldClass<X> declaringType)
+ protected AbstractWeldMember(AnnotationStore annotatedItemHelper, Member member, Class<T> rawType, Type type, Set<Type> typeClosure, WeldClass<X> declaringType)
{
- super(annotatedItemHelper, rawType, type);
+ super(annotatedItemHelper, rawType, type, typeClosure);
name = member.getName();
this._public = Modifier.isPublic(member.getModifiers());
this._private = Modifier.isPrivate(member.getModifiers());
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldAnnotationImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldAnnotationImpl.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldAnnotationImpl.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -31,6 +31,7 @@
import org.jboss.weld.introspector.WeldMethod;
import org.jboss.weld.resources.ClassTransformer;
import org.jboss.weld.util.Names;
+import org.jboss.weld.util.Reflections;
import com.google.common.base.Supplier;
import com.google.common.collect.Multimaps;
@@ -74,7 +75,7 @@
*/
protected WeldAnnotationImpl(Class<T> annotationType, ClassTransformer classTransformer)
{
- super(annotationType, annotationType, null, AnnotationStore.of(annotationType, classTransformer.getTypeStore().get(annotationType), classTransformer.getTypeStore().get(annotationType), classTransformer.getTypeStore()), classTransformer);
+ super(annotationType, annotationType, null, new Reflections.HierarchyDiscovery(annotationType).getTypeClosure(), AnnotationStore.of(annotationType, classTransformer.getTypeStore().get(annotationType), classTransformer.getTypeStore().get(annotationType), classTransformer.getTypeStore()), classTransformer);
this.clazz = annotationType;
this.toString = "class " + Names.classToString(getDelegate());
members = new HashSet<WeldMethod<?, ?>>();
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldClassImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldClassImpl.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldClassImpl.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -46,7 +46,6 @@
import org.jboss.weld.introspector.WeldMethod;
import org.jboss.weld.resources.ClassTransformer;
import org.jboss.weld.util.Names;
-import org.jboss.weld.util.Proxies;
import org.jboss.weld.util.Reflections;
import com.google.common.base.Supplier;
@@ -127,32 +126,28 @@
private final boolean _local;
private final boolean _anonymous;
private final boolean _enum;
- private final boolean _proxyable;
-
- private final Set<Type> typeClosureAsSet;
- private final Map<Class<?>, Type> typeClosureAsMap;
public static <T> WeldClass<T> of(Class<T> clazz, ClassTransformer classTransformer)
{
AnnotationStore annotationStore = AnnotationStore.of(clazz.getAnnotations(), clazz.getDeclaredAnnotations(), classTransformer.getTypeStore());
- return new WeldClassImpl<T>(clazz, clazz, null, annotationStore, classTransformer);
+ return new WeldClassImpl<T>(clazz, clazz, null, new Reflections.HierarchyDiscovery(clazz).getTypeClosure(), annotationStore, classTransformer);
}
public static <T> WeldClass<T> of(AnnotatedType<T> annotatedType, ClassTransformer classTransformer)
{
AnnotationStore annotationStore = AnnotationStore.of(annotatedType.getAnnotations(), annotatedType.getAnnotations(), classTransformer.getTypeStore());
- return new WeldClassImpl<T>(annotatedType.getJavaClass(), annotatedType.getBaseType(), annotatedType, annotationStore, classTransformer);
+ return new WeldClassImpl<T>(annotatedType.getJavaClass(), annotatedType.getBaseType(), annotatedType, annotatedType.getTypeClosure(), annotationStore, classTransformer);
}
public static <T> WeldClass<T> of(Class<T> rawType, Type type, ClassTransformer classTransformer)
{
AnnotationStore annotationStore = AnnotationStore.of(rawType.getAnnotations(), rawType.getDeclaredAnnotations(), classTransformer.getTypeStore());
- return new WeldClassImpl<T>(rawType, type, null, annotationStore, classTransformer);
+ return new WeldClassImpl<T>(rawType, type, null, new Reflections.HierarchyDiscovery(type).getTypeClosure(), annotationStore, classTransformer);
}
- protected WeldClassImpl(Class<T> rawType, Type type, AnnotatedType<T> annotatedType, AnnotationStore annotationStore, ClassTransformer classTransformer)
+ protected WeldClassImpl(Class<T> rawType, Type type, AnnotatedType<T> annotatedType, Set<Type> typeClosure, AnnotationStore annotationStore, ClassTransformer classTransformer)
{
- super(annotationStore, rawType, type);
+ super(annotationStore, rawType, type, typeClosure);
this.toString = "class " + Names.classToString(rawType);
this.name = rawType.getName();
this._simpleName = rawType.getSimpleName();
@@ -169,20 +164,6 @@
this._packagePrivate = Reflections.isPackagePrivate(rawType.getModifiers());
this._package = rawType.getPackage();
- if (annotatedType == null)
- {
- // If this annotated type has not been enhanced, use the default version
- this.typeClosureAsSet = super.getTypeClosure();
- this.typeClosureAsMap = super.getTypeClosureAsMap();
- this._proxyable = super.isProxyable();
- }
- else
- {
- this.typeClosureAsSet = annotatedType.getTypeClosure();
- this.typeClosureAsMap = Reflections.buildTypeMap(typeClosureAsSet);
- this._proxyable = Proxies.isTypesProxyable(typeClosureAsSet);
- }
-
this.fields = new HashSet<WeldField<?, ?>>();
this.annotatedFields = Multimaps.newSetMultimap(new HashMap<Class<? extends Annotation>, Collection<WeldField<?, ?>>>(), new Supplier< Set<WeldField<?, ?>>>()
{
@@ -807,23 +788,5 @@
{
return (Set) methods;
}
-
- @Override
- public boolean isProxyable()
- {
- return _proxyable;
- }
-
- @Override
- public Set<Type> getTypeClosure()
- {
- return typeClosureAsSet;
- }
-
- @Override
- public Map<Class<?>, Type> getTypeClosureAsMap()
- {
- return typeClosureAsMap;
- }
}
\ No newline at end of file
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldConstructorImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldConstructorImpl.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldConstructorImpl.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -28,6 +28,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import javax.enterprise.inject.spi.AnnotatedConstructor;
import javax.enterprise.inject.spi.AnnotatedParameter;
@@ -73,13 +74,13 @@
public static <T> WeldConstructor<T> of(Constructor<T> constructor, WeldClass<T> declaringClass, ClassTransformer classTransformer)
{
AnnotationStore annotationStore = AnnotationStore.of(constructor, classTransformer.getTypeStore());
- return new WeldConstructorImpl<T>(ensureAccessible(constructor), null, annotationStore, declaringClass, classTransformer);
+ return new WeldConstructorImpl<T>(ensureAccessible(constructor), null, new Reflections.HierarchyDiscovery(constructor.getDeclaringClass()).getTypeClosure(), annotationStore, declaringClass, classTransformer);
}
public static <T> WeldConstructor<T> of(AnnotatedConstructor<T> annotatedConstructor, WeldClass<T> declaringClass, ClassTransformer classTransformer)
{
AnnotationStore annotationStore = AnnotationStore.of(annotatedConstructor.getAnnotations(), annotatedConstructor.getAnnotations(), classTransformer.getTypeStore());
- return new WeldConstructorImpl<T>(ensureAccessible(annotatedConstructor.getJavaMember()), annotatedConstructor, annotationStore, declaringClass, classTransformer);
+ return new WeldConstructorImpl<T>(ensureAccessible(annotatedConstructor.getJavaMember()), annotatedConstructor, annotatedConstructor.getTypeClosure(), annotationStore, declaringClass, classTransformer);
}
/**
@@ -90,9 +91,9 @@
* @param constructor The constructor method
* @param declaringClass The declaring class
*/
- private WeldConstructorImpl(Constructor<T> constructor, AnnotatedConstructor<T> annotatedConstructor, AnnotationStore annotationStore, WeldClass<T> declaringClass, ClassTransformer classTransformer)
+ private WeldConstructorImpl(Constructor<T> constructor, AnnotatedConstructor<T> annotatedConstructor, Set<Type> typeClosure, AnnotationStore annotationStore, WeldClass<T> declaringClass, ClassTransformer classTransformer)
{
- super(annotationStore, constructor, constructor.getDeclaringClass(), constructor.getDeclaringClass(), declaringClass);
+ super(annotationStore, constructor, constructor.getDeclaringClass(), constructor.getDeclaringClass(), typeClosure, declaringClass);
this.toString = new StringBuilder().append("constructor ").append(constructor.toString()).toString();
this.constructor = constructor;
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldFieldImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldFieldImpl.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldFieldImpl.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -19,6 +19,8 @@
import static org.jboss.weld.util.Reflections.ensureAccessible;
import java.lang.reflect.Field;
+import java.lang.reflect.Type;
+import java.util.Set;
import javax.enterprise.inject.spi.AnnotatedField;
@@ -49,13 +51,13 @@
public static <T, X> WeldFieldImpl<T, X> of(Field field, WeldClass<X> declaringClass, ClassTransformer classTransformer)
{
AnnotationStore annotationStore = AnnotationStore.of(field, classTransformer.getTypeStore());
- return new WeldFieldImpl<T, X>(ensureAccessible(field), annotationStore, declaringClass, classTransformer);
+ return new WeldFieldImpl<T, X>(ensureAccessible(field), new Reflections.HierarchyDiscovery(field.getGenericType()).getTypeClosure(), annotationStore, declaringClass, classTransformer);
}
public static <T, X> WeldFieldImpl<T, X> of(AnnotatedField<? super X> annotatedField, WeldClass<X> declaringClass, ClassTransformer classTransformer)
{
AnnotationStore annotationStore = AnnotationStore.of(annotatedField.getAnnotations(), annotatedField.getAnnotations(), classTransformer.getTypeStore());
- return new WeldFieldImpl<T, X>(ensureAccessible(annotatedField.getJavaMember()), annotationStore, declaringClass, classTransformer);
+ return new WeldFieldImpl<T, X>(ensureAccessible(annotatedField.getJavaMember()), annotatedField.getTypeClosure(), annotationStore, declaringClass, classTransformer);
}
/**
@@ -67,9 +69,9 @@
* @param field The actual field
* @param declaringClass The abstraction of the declaring class
*/
- private WeldFieldImpl(Field field, AnnotationStore annotationStore, WeldClass<X> declaringClass, ClassTransformer classTransformer)
+ private WeldFieldImpl(Field field, Set<Type> typeClosure, AnnotationStore annotationStore, WeldClass<X> declaringClass, ClassTransformer classTransformer)
{
- super(annotationStore, field, (Class<T>) field.getType(), field.getGenericType(), declaringClass);
+ super(annotationStore, field, (Class<T>) field.getType(), field.getGenericType(), typeClosure, declaringClass);
this.field = field;
this.toString = new StringBuilder().append("field ").append(declaringClass.getName()).append(".").append(field.getName()).toString();
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldMethodImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldMethodImpl.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldMethodImpl.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -29,6 +29,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import javax.enterprise.inject.spi.AnnotatedMethod;
import javax.enterprise.inject.spi.AnnotatedParameter;
@@ -77,13 +78,13 @@
public static <T, X> WeldMethodImpl<T, X> of(Method method, WeldClass<X> declaringClass, ClassTransformer classTransformer)
{
AnnotationStore annotationStore = AnnotationStore.of(method, classTransformer.getTypeStore());
- return new WeldMethodImpl<T, X>(ensureAccessible(method), null, annotationStore, declaringClass, classTransformer);
+ return new WeldMethodImpl<T, X>(ensureAccessible(method),new Reflections.HierarchyDiscovery(method.getGenericReturnType()).getTypeClosure(), null, annotationStore, declaringClass, classTransformer);
}
public static <T, X> WeldMethodImpl<T, X> of(AnnotatedMethod<T> method, WeldClass<X> declaringClass, ClassTransformer classTransformer)
{
AnnotationStore annotationStore = AnnotationStore.of(method.getAnnotations(), method.getAnnotations(), classTransformer.getTypeStore());
- return new WeldMethodImpl<T, X>(ensureAccessible(method.getJavaMember()), method, annotationStore, declaringClass, classTransformer);
+ return new WeldMethodImpl<T, X>(ensureAccessible(method.getJavaMember()), method.getTypeClosure(), method, annotationStore, declaringClass, classTransformer);
}
/**
@@ -96,9 +97,9 @@
* @param declaringClass The declaring class abstraction
*/
@SuppressWarnings("unchecked")
- private WeldMethodImpl(Method method, AnnotatedMethod<T> annotatedMethod, AnnotationStore annotationStore, WeldClass<X> declaringClass, ClassTransformer classTransformer)
+ private WeldMethodImpl(Method method, Set<Type> typeClosure, AnnotatedMethod<T> annotatedMethod, AnnotationStore annotationStore, WeldClass<X> declaringClass, ClassTransformer classTransformer)
{
- super(annotationStore, method, (Class<T>) method.getReturnType(), method.getGenericReturnType(), declaringClass);
+ super(annotationStore, method, (Class<T>) method.getReturnType(), method.getGenericReturnType(), typeClosure, declaringClass);
this.method = method;
this.toString = new StringBuilder().append("method ").append(method.toString()).toString();
this.parameters = new ArrayList<WeldParameter<?, X>>();
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldParameterImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldParameterImpl.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldParameterImpl.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -26,6 +26,7 @@
import org.jboss.weld.introspector.WeldCallable;
import org.jboss.weld.introspector.WeldParameter;
import org.jboss.weld.resources.ClassTransformer;
+import org.jboss.weld.util.Reflections;
/**
* Represents a parameter
@@ -56,12 +57,12 @@
public static <T, X> WeldParameter<T, X> of(Annotation[] annotations, Class<T> rawType, Type type, WeldCallable<?, X, ?> declaringMember, int position, ClassTransformer classTransformer)
{
- return new WeldParameterImpl<T, X>(annotations, rawType, type, declaringMember, position, classTransformer);
+ return new WeldParameterImpl<T, X>(annotations, rawType, type, new Reflections.HierarchyDiscovery(type).getTypeClosure(), declaringMember, position, classTransformer);
}
public static <T, X> WeldParameter<T, X> of(Set<Annotation> annotations, Class<T> rawType, Type type, WeldCallable<?, X, ?> declaringMember, int position, ClassTransformer classTransformer)
{
- return new WeldParameterImpl<T, X>(annotations.toArray(EMPTY_ANNOTATION_ARRAY), rawType, type, declaringMember, position, classTransformer);
+ return new WeldParameterImpl<T, X>(annotations.toArray(EMPTY_ANNOTATION_ARRAY), rawType, type, new Reflections.HierarchyDiscovery(type).getTypeClosure(), declaringMember, position, classTransformer);
}
/**
@@ -70,9 +71,9 @@
* @param annotations The annotations array
* @param type The type of the parameter
*/
- protected WeldParameterImpl(Annotation[] annotations, Class<T> rawType, Type type, WeldCallable<?, X, ?> declaringMember, int position, ClassTransformer classTransformer)
+ protected WeldParameterImpl(Annotation[] annotations, Class<T> rawType, Type type, Set<Type> typeClosure, WeldCallable<?, X, ?> declaringMember, int position, ClassTransformer classTransformer)
{
- super(AnnotationStore.of(annotations, annotations, classTransformer.getTypeStore()), rawType, type);
+ super(AnnotationStore.of(annotations, annotations, classTransformer.getTypeStore()), rawType, type, typeClosure);
this.declaringMember = declaringMember;
this._package = declaringMember.getPackage();
this.position = position;
Modified: core/trunk/impl/src/main/java/org/jboss/weld/resolution/NewResolvableTransformer.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/resolution/NewResolvableTransformer.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/resolution/NewResolvableTransformer.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -86,7 +86,7 @@
else
{
final Class<?> javaClass = originalNewAnnotation.value();
- final Set<Type> typeClosure = new Reflections.HierarchyDiscovery(javaClass).getTypeClosureAsSet();
+ final Set<Type> typeClosure = new Reflections.HierarchyDiscovery(javaClass).getTypeClosure();
return new ForwardingResolvable()
{
Modified: core/trunk/impl/src/main/java/org/jboss/weld/util/Reflections.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/util/Reflections.java 2009-11-03 18:57:08 UTC (rev 4625)
+++ core/trunk/impl/src/main/java/org/jboss/weld/util/Reflections.java 2009-11-03 18:58:17 UTC (rev 4626)
@@ -71,7 +71,6 @@
private final Type type;
- private Map<Class<?>, Type> typeMap;
private Set<Type> typeSet;
public HierarchyDiscovery(Type type)
@@ -82,13 +81,9 @@
protected void add(Class<?> clazz, Type type)
{
typeSet.add(type);
- if (clazz != null)
- {
- typeMap.put(clazz, type);
- }
}
- public Set<Type> getTypeClosureAsSet()
+ public Set<Type> getTypeClosure()
{
if (typeSet == null)
{
@@ -97,19 +92,9 @@
return typeSet;
}
- public Map<Class<?>, Type> getTypeClosureAsMap()
- {
- if (typeMap == null)
- {
- init();
- }
- return typeMap;
- }
-
private void init()
{
this.typeSet = new HashSet<Type>();
- this.typeMap = new HashMap<Class<?>, Type>();
discoverTypes(type);
}
More information about the weld-commits
mailing list