public static <T> EnhancedAnnotatedType<T> createEnhancedAnnotatedType(BasicInjectionTarget<T> it) { return EnhancedAnnotatedTypeImpl.of( (SlimAnnotatedType<T>) it.getAnnotatedType(), ClassTransformer.instance(it.getBeanManager())); }
private static EnhancedAnnotatedType<?> createAnnotatedTypeForExistingBeanClass(String bdaId, Bean<?> bean) { ClassTransformer classTransformer = getClassTransformer(); SlimAnnotatedType<?> annotatedType = classTransformer.getBackedAnnotatedType(bean.getBeanClass(), bdaId); return EnhancedAnnotatedTypeImpl.of(annotatedType, classTransformer); }
@SuppressWarnings({ "rawtypes", "unchecked" }) private static void doDefineNewManagedBean(BeanManagerImpl beanManager, String bdaId, Class<?> beanClass) { try { ClassTransformer classTransformer = getClassTransformer(); SlimAnnotatedType<?> annotatedType = classTransformer.getBackedAnnotatedType(beanClass, bdaId); boolean managedBeanOrDecorator = Beans.isTypeManagedBeanOrDecoratorOrInterceptor(annotatedType); if (managedBeanOrDecorator) { EnhancedAnnotatedType eat = EnhancedAnnotatedTypeImpl.of(annotatedType, classTransformer); BeanAttributes attributes = BeanAttributesFactory.forBean(eat, beanManager); ManagedBean<?> bean = ManagedBean.of(attributes, eat, beanManager); ReflectionHelper.set(beanManager, beanManager.getClass(), "beanSet", Collections.synchronizedSet(new HashSet<Bean<?>>())); beanManager.addBean(bean); beanManager.getBeanResolver().clear(); bean.initializeAfterBeanDiscovery(); LOGGER.debug("Bean defined '{}'", beanClass.getName()); } else { // TODO : define session bean LOGGER.warning("Bean NOT? defined '{}', session bean?", beanClass.getName()); } } catch (Exception e) { LOGGER.debug("Bean definition failed.", e); } }
@Override public EnhancedAnnotatedType<?> apply(SlimAnnotatedType<?> annotatedType) { return EnhancedAnnotatedTypeImpl.of(annotatedType, ClassTransformer.this); } }
@Override public EnhancedAnnotatedType<?> apply(SlimAnnotatedType<?> annotatedType) { return EnhancedAnnotatedTypeImpl.of(annotatedType, ClassTransformer.this); } }
@Override public EnhancedAnnotatedType<?> apply(SlimAnnotatedType<?> annotatedType) { return EnhancedAnnotatedTypeImpl.of(annotatedType, ClassTransformer.this); } }
@Override public EnhancedAnnotatedType<?> apply(SlimAnnotatedType<?> annotatedType) { return EnhancedAnnotatedTypeImpl.of(annotatedType, ClassTransformer.this); } }
@Override public EnhancedAnnotatedType<?> apply(SlimAnnotatedType<?> annotatedType) { return EnhancedAnnotatedTypeImpl.of(annotatedType, ClassTransformer.this); } }
@Override public EnhancedAnnotatedType<?> apply(SlimAnnotatedType<?> annotatedType) { return EnhancedAnnotatedTypeImpl.of(annotatedType, ClassTransformer.this); } }