private void findUnusedBeans() { Collection<Bean<?>> beans = idToBean.values(); Collection<ObserverMethod<?>> observers = idToObserver.values(); for (Bean<?> bean : beans) { BeanKind kind = BeanKind.from(bean); if (BeanKind.BUILT_IN.equals(kind) || BeanKind.EXTENSION.equals(kind) || BeanKind.DECORATOR.equals(kind) || BeanKind.INTERCEPTOR.equals(kind)) { continue; } if (bean.getName() != null) { // Is annotated with @Named continue; } if (!(BeanKind.PRODUCER_FIELD.equals(kind) || BeanKind.PRODUCER_METHOD.equals(kind)) && !getDeclaredProducers(bean).isEmpty()) { // Has declared producers continue; } if (Components.hasDependents(bean, beans, this)) { // Has direct or potential (Instance<>) dependents continue; } if (hasDeclaredObserversOrIsInjectedIntoObserver(bean, observers)) { continue; } if (isInjectedIntoDisposer(bean, beans)) { continue; } unusedBeans.add(bean); } }
BeanKind kind = BeanKind.from(bean); if (BeanKind.INTERCEPTOR.equals(kind) || BeanKind.DECORATOR.equals(kind) || bean.isAlternative()) { JsonObjectBuilder enablementBuilder = Json.objectBuilder(); AnnotationApiAbstraction annotationApi = beanManager.getServices().get(AnnotationApiAbstraction.class); for (BeanManagerImpl manager : beanManagers) { ModuleEnablement enablement = manager.getEnabled(); if ((BeanKind.INTERCEPTOR.equals(kind) && enablement.isInterceptorEnabled(bean.getBeanClass())) || (BeanKind.DECORATOR.equals(kind) && enablement.isDecoratorEnabled(bean.getBeanClass())) || isSelectedAlternative(enablement, bean)) { bdasBuilder.add(createSimpleBdaJson(manager.getId())); if (BeanKind.INTERCEPTOR.equals(kind)) { Interceptor<?> interceptor = (Interceptor<?>) bean; JsonArrayBuilder bindings = Json.arrayBuilder(true); if (BeanKind.DECORATOR.equals(kind)) { Decorator<?> decorator = (Decorator<?>) bean; beanBuilder.add(DELEGATE_TYPE, Formats.formatType(decorator.getDelegateType(), false));
BeanKind kind = BeanKind.from(bean); if (BeanKind.INTERCEPTOR.equals(kind) || BeanKind.DECORATOR.equals(kind) || bean.isAlternative()) { JsonObjectBuilder enablementBuilder = Json.objectBuilder(); AnnotationApiAbstraction annotationApi = beanManager.getServices().get(AnnotationApiAbstraction.class); for (BeanManagerImpl manager : beanManagers) { ModuleEnablement enablement = manager.getEnabled(); if ((BeanKind.INTERCEPTOR.equals(kind) && enablement.isInterceptorEnabled(bean.getBeanClass())) || (BeanKind.DECORATOR.equals(kind) && enablement.isDecoratorEnabled(bean.getBeanClass())) || isSelectedAlternative(enablement, bean)) { bdasBuilder.add(createSimpleBdaJson(manager.getId())); if (BeanKind.INTERCEPTOR.equals(kind)) { Interceptor<?> interceptor = (Interceptor<?>) bean; JsonArrayBuilder bindings = Json.arrayBuilder(true); if (BeanKind.DECORATOR.equals(kind)) { Decorator<?> decorator = (Decorator<?>) bean; beanBuilder.add(DELEGATE_TYPE, Formats.formatType(decorator.getDelegateType(), false));
BeanKind kind = BeanKind.from(bean); if (BeanKind.INTERCEPTOR.equals(kind) || BeanKind.DECORATOR.equals(kind) || bean.isAlternative()) { JsonObjectBuilder enablementBuilder = Json.objectBuilder(); AnnotationApiAbstraction annotationApi = beanManager.getServices().get(AnnotationApiAbstraction.class); for (BeanManagerImpl manager : beanManagers) { ModuleEnablement enablement = manager.getEnabled(); if ((BeanKind.INTERCEPTOR.equals(kind) && enablement.isInterceptorEnabled(bean.getBeanClass())) || (BeanKind.DECORATOR.equals(kind) && enablement.isDecoratorEnabled(bean.getBeanClass())) || isSelectedAlternative(enablement, bean)) { bdasBuilder.add(createSimpleBdaJson(manager.getId())); if (BeanKind.INTERCEPTOR.equals(kind)) { Interceptor<?> interceptor = (Interceptor<?>) bean; JsonArrayBuilder bindings = Json.arrayBuilder(true); if (BeanKind.DECORATOR.equals(kind)) { Decorator<?> decorator = (Decorator<?>) bean; beanBuilder.add(DELEGATE_TYPE, Formats.formatType(decorator.getDelegateType(), false));
BeanKind kind = BeanKind.from(bean); if (BeanKind.INTERCEPTOR.equals(kind) || BeanKind.DECORATOR.equals(kind) || bean.isAlternative()) { JsonObjectBuilder enablementBuilder = Json.objectBuilder(); AnnotationApiAbstraction annotationApi = beanManager.getServices().get(AnnotationApiAbstraction.class); for (BeanManagerImpl manager : beanManagers) { ModuleEnablement enablement = manager.getEnabled(); if ((BeanKind.INTERCEPTOR.equals(kind) && enablement.isInterceptorEnabled(bean.getBeanClass())) || (BeanKind.DECORATOR.equals(kind) && enablement.isDecoratorEnabled(bean.getBeanClass())) || isSelectedAlternative(enablement, bean)) { bdasBuilder.add(createSimpleBdaJson(manager.getId())); if (BeanKind.INTERCEPTOR.equals(kind)) { Interceptor<?> interceptor = (Interceptor<?>) bean; JsonArrayBuilder bindings = Json.arrayBuilder(true); if (BeanKind.DECORATOR.equals(kind)) { Decorator<?> decorator = (Decorator<?>) bean; beanBuilder.add(DELEGATE_TYPE, Formats.formatType(decorator.getDelegateType(), false));
BeanKind kind = BeanKind.from(bean); if (BeanKind.INTERCEPTOR.equals(kind) || BeanKind.DECORATOR.equals(kind) || bean.isAlternative()) { JsonObjectBuilder enablementBuilder = Json.objectBuilder(); AnnotationApiAbstraction annotationApi = beanManager.getServices().get(AnnotationApiAbstraction.class); for (BeanManagerImpl manager : beanManagers) { ModuleEnablement enablement = manager.getEnabled(); if ((BeanKind.INTERCEPTOR.equals(kind) && enablement.isInterceptorEnabled(bean.getBeanClass())) || (BeanKind.DECORATOR.equals(kind) && enablement.isDecoratorEnabled(bean.getBeanClass())) || isSelectedAlternative(enablement, bean)) { bdasBuilder.add(createSimpleBdaJson(manager.getId())); if (BeanKind.INTERCEPTOR.equals(kind)) { Interceptor<?> interceptor = (Interceptor<?>) bean; JsonArrayBuilder bindings = Json.arrayBuilder(true); if (BeanKind.DECORATOR.equals(kind)) { Decorator<?> decorator = (Decorator<?>) bean; beanBuilder.add(DELEGATE_TYPE, Formats.formatType(decorator.getDelegateType(), false));
BeanKind kind = BeanKind.from(bean); if (BeanKind.INTERCEPTOR.equals(kind) || BeanKind.DECORATOR.equals(kind) || bean.isAlternative()) { JsonObjectBuilder enablementBuilder = Json.objectBuilder(); AnnotationApiAbstraction annotationApi = beanManager.getServices().get(AnnotationApiAbstraction.class); for (BeanManagerImpl manager : beanManagers) { ModuleEnablement enablement = manager.getEnabled(); if ((BeanKind.INTERCEPTOR.equals(kind) && enablement.isInterceptorEnabled(bean.getBeanClass())) || (BeanKind.DECORATOR.equals(kind) && enablement.isDecoratorEnabled(bean.getBeanClass())) || isSelectedAlternative(enablement, bean)) { bdasBuilder.add(createSimpleBdaJson(manager.getId())); if (BeanKind.INTERCEPTOR.equals(kind)) { Interceptor<?> interceptor = (Interceptor<?>) bean; JsonArrayBuilder bindings = Json.arrayBuilder(true); if (BeanKind.DECORATOR.equals(kind)) { Decorator<?> decorator = (Decorator<?>) bean; beanBuilder.add(DELEGATE_TYPE, Formats.formatType(decorator.getDelegateType(), false));
BeanKind kind = BeanKind.from(bean); if (BeanKind.INTERCEPTOR.equals(kind) || BeanKind.DECORATOR.equals(kind) || bean.isAlternative()) { JsonObjectBuilder enablementBuilder = Json.objectBuilder(); AnnotationApiAbstraction annotationApi = beanManager.getServices().get(AnnotationApiAbstraction.class); for (BeanManagerImpl manager : beanManagers) { ModuleEnablement enablement = manager.getEnabled(); if ((BeanKind.INTERCEPTOR.equals(kind) && enablement.isInterceptorEnabled(bean.getBeanClass())) || (BeanKind.DECORATOR.equals(kind) && enablement.isDecoratorEnabled(bean.getBeanClass())) || isSelectedAlternative(enablement, bean)) { bdasBuilder.add(createSimpleBdaJson(manager.getId())); if (BeanKind.INTERCEPTOR.equals(kind)) { Interceptor<?> interceptor = (Interceptor<?>) bean; JsonArrayBuilder bindings = Json.arrayBuilder(true); if (BeanKind.DECORATOR.equals(kind)) { Decorator<?> decorator = (Decorator<?>) bean; beanBuilder.add(DELEGATE_TYPE, Formats.formatType(decorator.getDelegateType(), false));
HtmlTag.tr() .add(HtmlTag.td(++idx + "."), HtmlTag.td().add(HtmlTag.a("#" + BDAS).add(" " + (i + 1))), HtmlTag.td(BeanKind.from(bean).toString()), HtmlTag.td().add(HtmlTag.div().attr(HtmlTag.TITLE, beanClass).add(abbreviateType(beanClass))), types, qualifiers, HtmlTag.td(JsonObjects.simplifiedScope(bean.getScope())))
HtmlTag.tr() .add(HtmlTag.td(++idx + "."), HtmlTag.td().add(HtmlTag.a("#" + BDAS).add(" " + (i + 1))), HtmlTag.td(BeanKind.from(bean).toString()), HtmlTag.td().add(HtmlTag.div().attr(HtmlTag.TITLE, beanClass).add(abbreviateType(beanClass))), types, qualifiers, HtmlTag.td(JsonObjects.simplifiedScope(bean.getScope())))
HtmlTag.tr() .add(HtmlTag.td(++idx + "."), HtmlTag.td().add(HtmlTag.a("#" + BDAS).add(" " + (i + 1))), HtmlTag.td(BeanKind.from(bean).toString()), HtmlTag.td().add(HtmlTag.div().attr(HtmlTag.TITLE, beanClass).add(abbreviateType(beanClass))), types, qualifiers, HtmlTag.td(JsonObjects.simplifiedScope(bean.getScope())))
HtmlTag.tr() .add(HtmlTag.td(++idx + "."), HtmlTag.td().add(HtmlTag.a("#" + BDAS).add(" " + (i + 1))), HtmlTag.td(BeanKind.from(bean).toString()), HtmlTag.td().add(HtmlTag.div().attr(HtmlTag.TITLE, beanClass).add(abbreviateType(beanClass))), types, qualifiers, HtmlTag.td(JsonObjects.simplifiedScope(bean.getScope())))
HtmlTag.tr() .add(HtmlTag.td(++idx + "."), HtmlTag.td().add(HtmlTag.a("#" + BDAS).add(" " + (i + 1))), HtmlTag.td(BeanKind.from(bean).toString()), HtmlTag.td().add(HtmlTag.div().attr(HtmlTag.TITLE, beanClass).add(abbreviateType(beanClass))), types, qualifiers, HtmlTag.td(JsonObjects.simplifiedScope(bean.getScope())))