if (!eat.isAbstract() || !eat.getJavaClass().isInterface()) { // injectionTargetCannotBeCreatedForInterface ((AbstractClassBean)bean).setProducer(beanManager.getLocalInjectionTargetFactory(eat).createInjectionTarget(eat, bean, false)); if (isReinjectingContext(bean)) {
EnhancedAnnotatedType<T> type = transformer.getEnhancedAnnotatedType(clazz, beanManager.getId()); if (!type.getJavaClass().equals(componentClass)) {
@Override public String toString() { return "InterceptionModelInitializer for " + annotatedType.getJavaClass(); } }
@Override public String toString() { return "InterceptionModelInitializer for " + annotatedType.getJavaClass(); } }
/** * Initializes the bean type */ protected void initType() { this.type = getEnhancedAnnotated().getJavaClass(); }
/** * Initializes the bean type */ protected void initType() { this.type = getEnhancedAnnotated().getJavaClass(); }
/** * Initializes the bean type */ protected void initType() { this.type = getEnhancedAnnotated().getJavaClass(); }
public <T> ConstructorInjectionPoint<T> createConstructorInjectionPoint(Bean<T> declaringBean, EnhancedAnnotatedType<T> type, BeanManagerImpl manager) { EnhancedAnnotatedConstructor<T> constructor = Beans.getBeanConstructorStrict(type); return createConstructorInjectionPoint(declaringBean, type.getJavaClass(), constructor, manager); }
public <T> ConstructorInjectionPoint<T> createConstructorInjectionPoint(Bean<T> declaringBean, EnhancedAnnotatedType<T> type, BeanManagerImpl manager) { EnhancedAnnotatedConstructor<T> constructor = Beans.getBeanConstructorStrict(type); return createConstructorInjectionPoint(declaringBean, type.getJavaClass(), constructor, manager); }
protected void checkType(EnhancedAnnotatedType<T> type) { if (!Reflections.isTopLevelOrStaticNestedClass(type.getJavaClass())) { throw BeanLogger.LOG.simpleBeanAsNonStaticInnerClassNotAllowed(type); } }
@Override protected Class<T> createEnhancedSubclass(EnhancedAnnotatedType<T> type, Bean<?> bean, BeanManagerImpl manager) { return new DecoratorProxyFactory<T>(manager.getContextId(), type.getJavaClass(), delegateInjectionPoint, bean).getProxyClass(); } };
@Override public <M> EnhancedAnnotatedMethod<M, ?> getEnhancedMethod(MethodSignature signature) { EnhancedAnnotatedMethod<M, ?> method = cast(getDeclaredEnhancedMethod(signature)); if ((method == null) && (superclass != null) && (superclass.getJavaClass() != Object.class)) { method = superclass.getEnhancedMethod(signature); } return method; }
@Override protected Class<T> createEnhancedSubclass(EnhancedAnnotatedType<T> type, Bean<?> bean, BeanManagerImpl manager) { return new DecoratorProxyFactory<T>(manager.getContextId(), type.getJavaClass(), delegateInjectionPoint, bean).getProxyClass(); } };
@Override public <M> EnhancedAnnotatedMethod<M, ?> getEnhancedMethod(MethodSignature signature) { EnhancedAnnotatedMethod<M, ?> method = cast(getDeclaredEnhancedMethod(signature)); if ((method == null) && (superclass != null) && (superclass.getJavaClass() != Object.class)) { method = superclass.getEnhancedMethod(signature); } return method; }
@Override protected Class<T> createEnhancedSubclass(EnhancedAnnotatedType<T> type, Bean<?> bean, BeanManagerImpl manager) { return new DecoratorProxyFactory<T>(manager.getContextId(), type.getJavaClass(), delegateInjectionPoint, bean).getProxyClass(); } };
protected SubclassedComponentInstantiator(EnhancedAnnotatedType<T> type, Bean<T> bean, ConstructorInjectionPoint<T> originalConstructor, BeanManagerImpl manager) { EnhancedAnnotatedConstructor<T> constructorForEnhancedSubclass = initEnhancedSubclass(manager, type, bean, originalConstructor); this.proxyClassConstructorInjectionPoint = new ProxyClassConstructorInjectionPointWrapper<T>(bean, type.getJavaClass(), constructorForEnhancedSubclass, originalConstructor, manager); this.componentClassConstructor = originalConstructor.getAnnotated().getJavaMember(); }
protected SubclassedComponentInstantiator(EnhancedAnnotatedType<T> type, Bean<T> bean, ConstructorInjectionPoint<T> originalConstructor, BeanManagerImpl manager) { EnhancedAnnotatedConstructor<T> constructorForEnhancedSubclass = initEnhancedSubclass(manager, type, bean, originalConstructor); this.proxyClassConstructorInjectionPoint = new ProxyClassConstructorInjectionPointWrapper<T>(bean, type.getJavaClass(), constructorForEnhancedSubclass, originalConstructor, manager); this.componentClassConstructor = originalConstructor.getAnnotated().getJavaMember(); }
public static <T> SubclassedComponentInstantiator<T> forSubclassedEjb(EnhancedAnnotatedType<T> componentType, EnhancedAnnotatedType<T> subclass, Bean<T> bean, BeanManagerImpl manager) { final EnhancedAnnotatedConstructor<T> componentConstructor = Beans.getBeanConstructor(componentType); final EnhancedAnnotatedConstructor<T> subclassConstructor = findMatchingConstructor(componentConstructor.getSignature(), subclass); final ConstructorInjectionPoint<T> cip = InjectionPointFactory.instance().createConstructorInjectionPoint(bean, componentType.getJavaClass(), subclassConstructor, manager); return new SubclassedComponentInstantiator<T>(cip, componentConstructor.getJavaMember()); }
public static <T> SubclassedComponentInstantiator<T> forSubclassedEjb(EnhancedAnnotatedType<T> componentType, EnhancedAnnotatedType<T> subclass, Bean<T> bean, BeanManagerImpl manager) { final EnhancedAnnotatedConstructor<T> componentConstructor = Beans.getBeanConstructor(componentType); final EnhancedAnnotatedConstructor<T> subclassConstructor = findMatchingConstructor(componentConstructor.getSignature(), subclass); final ConstructorInjectionPoint<T> cip = InjectionPointFactory.instance().createConstructorInjectionPoint(bean, componentType.getJavaClass(), subclassConstructor, manager); return new SubclassedComponentInstantiator<T>(cip, componentConstructor.getJavaMember()); }
public ExtensionBean(BeanManagerImpl manager, EnhancedAnnotatedType<E> enhancedAnnotatedType, Metadata<E> instance) { super(new StringBeanIdentifier(BeanIdentifiers.forExtension(enhancedAnnotatedType)), manager, enhancedAnnotatedType.getJavaClass()); this.annotatedType = enhancedAnnotatedType.slim(); this.instance = instance; this.passivationCapable = enhancedAnnotatedType.isSerializable(); this.proxiable = Proxies.isTypeProxyable(enhancedAnnotatedType.getBaseType(), manager.getServices()); checkPublicFields(enhancedAnnotatedType); }