public ManagedBeanProcessor(AnnotationFinder<AnnotatedElement> finder) { super(finder); // add any class/method/field processors here // @Interceptors addTypeProcessor(new InterceptorsProcessor<Class<?>>(finder)); addMethodProcessor(new InterceptorsProcessor<Method>(finder)); // @PostConstruct addMethodProcessor(new PostConstructProcessor(finder)); // @AroundInvoke (on the managed bean class and its super classes) addMethodProcessor(new AroundInvokeProcessor(finder)); }
/** * Creates a {@link ManagedBeanDeploymentMetaData} * * @param finder The {@link AnnotationFinder} that will be used for processing the annotation(s) on the * classes */ public ManagedBeanMetaDataCreator(AnnotationFinder<AnnotatedElement> finder) { super(finder); // add the managed bean processor this.addProcessor(new ManagedBeanProcessor(finder)); }
/** * Creates a {@link ManagedBeanDeploymentMetaData} for the passed <code>classes</code> * * @throws IllegalArgumentException If the passed <code>classes</code> is null or empty */ @Override public ManagedBeanDeploymentMetaData create(Collection<Class<?>> classes) { if (classes == null || classes.isEmpty()) { throw new IllegalArgumentException("Cannot create managed bean deployment metadata out of null or empty classes"); } ManagedBeanDeploymentMetaData managedBeanDeploymentMetaData = new ManagedBeanDeploymentMetaDataImpl(); // pass it through the processor(s) this.processMetaData(classes, managedBeanDeploymentMetaData); // return the processed metadata return managedBeanDeploymentMetaData; }
ManagedBeanMetaDataCreator managedBeanMetaDataCreator = new ManagedBeanMetaDataCreator(new DefaultAnnotationFinder<AnnotatedElement>()); logger.debugf("Creating metadata for @ManagedBean annotated classes for unit %s", unit.getName()); ManagedBeanDeploymentMetaData managedBeanDeploymentMetaData = managedBeanMetaDataCreator.create(annotatedClasses); int numManagedBeans = managedBeanDeploymentMetaData.getManagedBeans() == null ? 0 : managedBeanDeploymentMetaData.getManagedBeans().size(); logger.debugf("%d managed beans found in unit %s", numManagedBeans, unit.getName());