@Override public Set<Annotation> getQualifiers() { Set<Annotation> qualifiers = new HashSet<Annotation>(attributes.getQualifiers()); qualifiers.add(Hungry.Literal.INSTANCE); qualifiers.remove(Default.Literal.INSTANCE); return Collections.unmodifiableSet(qualifiers); }
@Override public Set<Annotation> getQualifiers() { Set<Annotation> qualifiers = new HashSet<>(); qualifiers.addAll(beanAttributes.getQualifiers()); qualifiers.add(ImplicitDeployment.Literal.INSTANCE); qualifiers.removeIf(e -> Default.class.isAssignableFrom(e.getClass())); return qualifiers; }
/** * Verifies that the set of qualifiers of a given {@link BeanAttributes} matches the given set of annotation types. */ public static void verifyQualifierTypes(BeanAttributes<?> attributes, Class<?>... expectedTypes) { verifyQualifierTypes(attributes.getQualifiers(), expectedTypes); }
private void verifyName(BeanAttributes<?> attributes, String name) { assertEquals(name, attributes.getName()); for (Annotation qualifier : attributes.getQualifiers()) { if (Named.class.equals(qualifier.annotationType())) { assertEquals(name, ((Named) qualifier).value()); return; } } fail("@Named qualifier not found."); } }
protected <X> DisposalMethod<X, ?> resolveDisposalMethod(BeanAttributes<?> attributes, AbstractClassBean<X> declaringBean) { Set<DisposalMethod<X, ?>> disposalBeans = environment.<X>resolveDisposalBeans(attributes.getTypes(), attributes.getQualifiers(), declaringBean); if (disposalBeans.size() == 1) { return disposalBeans.iterator().next(); } else if (disposalBeans.size() > 1) { throw BeanLogger.LOG.multipleDisposalMethods(this, WeldCollections.toMultiRowString(disposalBeans)); } return null; }
protected <X> DisposalMethod<X, ?> resolveDisposalMethod(BeanAttributes<?> attributes, AbstractClassBean<X> declaringBean) { Set<DisposalMethod<X, ?>> disposalBeans = environment.<X>resolveDisposalBeans(attributes.getTypes(), attributes.getQualifiers(), declaringBean); if (disposalBeans.size() == 1) { return disposalBeans.iterator().next(); } else if (disposalBeans.size() > 1) { throw BeanLogger.LOG.multipleDisposalMethods(this, WeldCollections.toMultiRowString(disposalBeans)); } return null; }
protected <X> DisposalMethod<X, ?> resolveDisposalMethod(BeanAttributes<?> attributes, AbstractClassBean<X> declaringBean) { Set<DisposalMethod<X, ?>> disposalBeans = environment.<X>resolveDisposalBeans(attributes.getTypes(), attributes.getQualifiers(), declaringBean); if (disposalBeans.size() == 1) { return disposalBeans.iterator().next(); } else if (disposalBeans.size() > 1) { throw BeanLogger.LOG.multipleDisposalMethods(this, WeldCollections.toMultiRowString(disposalBeans)); } return null; }
protected <X> DisposalMethod<X, ?> resolveDisposalMethod(BeanAttributes<?> attributes, AbstractClassBean<X> declaringBean) { Set<DisposalMethod<X, ?>> disposalBeans = environment.<X>resolveDisposalBeans(attributes.getTypes(), attributes.getQualifiers(), declaringBean); if (disposalBeans.size() == 1) { return disposalBeans.iterator().next(); } else if (disposalBeans.size() > 1) { throw BeanLogger.LOG.multipleDisposalMethods(this, WeldCollections.toMultiRowString(disposalBeans)); } return null; }
protected <X> DisposalMethod<X, ?> resolveDisposalMethod(BeanAttributes<?> attributes, AbstractClassBean<X> declaringBean) { Set<DisposalMethod<X, ?>> disposalBeans = environment.<X>resolveDisposalBeans(attributes.getTypes(), attributes.getQualifiers(), declaringBean); if (disposalBeans.size() == 1) { return disposalBeans.iterator().next(); } else if (disposalBeans.size() > 1) { throw BeanLogger.LOG.multipleDisposalMethods(this, WeldCollections.toMultiRowString(disposalBeans)); } return null; }
@SuppressWarnings("unchecked") private void verifyVolume(BeanAttributes<?> attributes) { assertTrue(typeSetMatches(attributes.getTypes(), long.class, Object.class)); assertTrue(annotationSetMatches(attributes.getQualifiers(), Any.class, Default.class, Named.class)); assertTrue(attributes.getStereotypes().isEmpty()); assertEquals(attributes.getScope(), Dependent.class); assertEquals(attributes.getName(), "volume"); assertFalse(attributes.isAlternative()); }
@SuppressWarnings("unchecked") private void verifyLakeFish(BeanAttributes<?> attributes) { assertTrue(typeSetMatches(attributes.getTypes(), Fish.class, Object.class)); assertTrue(typeSetMatches(attributes.getStereotypes(), TundraStereotype.class)); assertTrue(annotationSetMatches(attributes.getQualifiers(), Natural.class, Any.class, Named.class)); assertEquals(attributes.getScope(), ApplicationScoped.class); assertEquals(attributes.getName(), "fish"); assertTrue(attributes.isAlternative()); }
@Test @SpecAssertion(section = PROCESS_BEAN_ATTRIBUTES, id = "bca") public void configuratorInitializedWithOriginalBeanAttributes() { Bean<Mace> configuredBean = getUniqueBean(Mace.class); BeanAttributes<Mace> originalBA = getCurrentManager().getExtension(ProcessBeanAttributesObserver.class).getOriginalBA(); assertEquals(configuredBean.getTypes(), originalBA.getTypes()); assertEquals(configuredBean.getQualifiers(), originalBA.getQualifiers()); assertEquals(configuredBean.getStereotypes(), originalBA.getStereotypes()); assertEquals(configuredBean.getScope(), originalBA.getScope()); } }
@Override public BeanConfigurator<T> read(BeanAttributes<?> beanAttributes) { this.stereotypes.addAll(beanAttributes.getStereotypes()); this.scope = beanAttributes.getScope(); this.name = beanAttributes.getName(); this.alternative = beanAttributes.isAlternative(); types(beanAttributes.getTypes()); qualifiers(beanAttributes.getQualifiers()); stereotypes(beanAttributes.getStereotypes()); return this; }
/** * @param source source {@link BeanAttributes}. * @return a safe copy of source {@link BeanAttributes}. */ public static <T> BeanAttributes<T> of(BeanAttributes<T> source, BeanManager manager) { validateBeanAttributes(source, manager); BeanAttributes<T> attributes = new ImmutableBeanAttributes<T>(defensiveCopy(source.getStereotypes()), source.isAlternative(), source.getName(), defensiveCopy(source.getQualifiers()), defensiveCopy(source.getTypes()), source.getScope()); return attributes; }
/** * @param source source {@link BeanAttributes}. * @return a safe copy of source {@link BeanAttributes}. */ public static <T> BeanAttributes<T> of(BeanAttributes<T> source, BeanManager manager) { validateBeanAttributes(source, manager); BeanAttributes<T> attributes = new ImmutableBeanAttributes<T>(defensiveCopy(source.getStereotypes()), source.isAlternative(), source.getName(), defensiveCopy(source.getQualifiers()), defensiveCopy(source.getTypes()), source.getScope()); return attributes; }
/** * @param source source {@link BeanAttributes}. * @return a safe copy of source {@link BeanAttributes}. */ public static <T> BeanAttributes<T> of(BeanAttributes<T> source, BeanManager manager) { validateBeanAttributes(source, manager); BeanAttributes<T> attributes = new ImmutableBeanAttributes<T>(defensiveCopy(source.getStereotypes()), source.isAlternative(), source.getName(), defensiveCopy(source.getQualifiers()), defensiveCopy(source.getTypes()), source.getScope()); return attributes; }
public BeanAttributesConfigurator<T> read(BeanAttributes<?> beanAttributes) { checkArgumentNotNull(beanAttributes); name(beanAttributes.getName()); qualifiers(beanAttributes.getQualifiers()); scope(beanAttributes.getScope()); stereotypes(beanAttributes.getStereotypes()); types(beanAttributes.getTypes()); alternative(beanAttributes.isAlternative()); return this; }
public BeanAttributesConfigurator<T> read(BeanAttributes<?> beanAttributes) { checkArgumentNotNull(beanAttributes); name(beanAttributes.getName()); qualifiers(beanAttributes.getQualifiers()); scope(beanAttributes.getScope()); stereotypes(beanAttributes.getStereotypes()); types(beanAttributes.getTypes()); alternative(beanAttributes.isAlternative()); return this; }
public BeanAttributesConfigurator<T> read(BeanAttributes<?> beanAttributes) { checkArgumentNotNull(beanAttributes); name(beanAttributes.getName()); qualifiers(beanAttributes.getQualifiers()); scope(beanAttributes.getScope()); stereotypes(beanAttributes.getStereotypes()); types(beanAttributes.getTypes()); alternative(beanAttributes.isAlternative()); return this; }
public BeanAttributesConfigurator<T> read(BeanAttributes<?> beanAttributes) { checkArgumentNotNull(beanAttributes); name(beanAttributes.getName()); qualifiers(beanAttributes.getQualifiers()); scope(beanAttributes.getScope()); stereotypes(beanAttributes.getStereotypes()); types(beanAttributes.getTypes()); alternative(beanAttributes.isAlternative()); return this; }