/** * Returns the annotation member with the given name. * * @param name of the member, must not be null. * @return String representation of the member value, null if member doesn't exist. */ default String getMember(final String name) { return getMembers().get(name); } }
@Override public Set getQualifiers() { final Set<DynamicAnnotation> qualifiers = new HashSet<>(); for (final String serializedQualifier : JsArray.iterable(provider.getQualifiers())) { qualifiers.add(DynamicAnnotation.create(serializedQualifier)); } return qualifiers; }
if (a instanceof AssociatedResources) { associatedResources = (AssociatedResources) a; } else if (da != null && AssociatedResources.class.getName().equals(da.getName())) { dynAssociatedResources = da; } else if (a instanceof Priority) { priority = (Priority) a; } else if (da != null && Priority.class.getName().equals(da.getName())) { dynPriority = da; } else { if (dynamic) { priorityValue = Integer.valueOf(dynPriority.getMember("value")); } else { priorityValue = priority.value(); String resourceTypes = dynAssociatedResources.getMember("value"); resourceTypes = resourceTypes.substring(1, resourceTypes.length() - 1);
QualWithMultiMembers.class.getName(), Any.class.getName())); for (final DynamicAnnotation qual : quals) { final Map<String, String> members = qual.getMembers(); if (Any.class.getName().equals(qual.getName())) { assertEquals(0, members.size()); notYetFound.remove(Any.class.getName()); else if (Named.class.getName().equals(qual.getName())) { assertEquals(1, members.size()); assertEquals("Moogah", members.get("value")); notYetFound.remove(Named.class.getName()); else if (QualWithMultiMembers.class.getName().equals(qual.getName())) { assertEquals(3, members.size()); assertEquals("1", members.get("num"));
@Test public void generateActivityMetaInfoForDynamicActivity() { final String otherResourceType = "org.uberfire.OtherResourceType"; IOCBeanDef<?> beanDefinition = mock(IOCBeanDef.class); DynamicAnnotation priority = mock(DynamicAnnotation.class); when(priority.getName()).thenReturn(Priority.class.getName()); when(priority.getMember("value")).thenReturn("1"); Set<Annotation> qualifiers = new HashSet<Annotation>(); DynamicAnnotation associatedResources = mock(DynamicAnnotation.class); when(associatedResources.getName()).thenReturn(AssociatedResources.class.getName()); when(associatedResources.getMember("value")).thenReturn("[" + ClientResourceType.class.getName() + "," + otherResourceType + "]"); qualifiers.add(associatedResources); qualifiers.add(priority); when(beanDefinition.isDynamic()).thenReturn(true); when(beanDefinition.getQualifiers()).thenReturn(qualifiers); Pair<Integer, List<String>> generated = ActivityMetaInfo.generate(beanDefinition); assertEquals(Integer.valueOf(1), generated.getK1()); assertTrue(generated.getK2().contains(ClientResourceType.class.getName())); assertTrue(generated.getK2().contains("org.uberfire.OtherResourceType")); } }
@Test public void generateActivityMetaInfoForDynamicActivity() { final String otherResourceType = "org.uberfire.OtherResourceType"; IOCBeanDef<?> beanDefinition = mock(IOCBeanDef.class); DynamicAnnotation priority = mock(DynamicAnnotation.class); when(priority.getName()).thenReturn(Priority.class.getName()); when(priority.getMember("value")).thenReturn("1"); Set<Annotation> qualifiers = new HashSet<Annotation>(); DynamicAnnotation associatedResources = mock(DynamicAnnotation.class); when(associatedResources.getName()).thenReturn(AssociatedResources.class.getName()); when(associatedResources.getMember("value")).thenReturn("[" + ClientResourceType.class.getName() + "," + otherResourceType + "]"); qualifiers.add(associatedResources); qualifiers.add(priority); when(beanDefinition.isDynamic()).thenReturn(true); when(beanDefinition.getQualifiers()).thenReturn(qualifiers); Pair<Integer, List<String>> generated = ActivityMetaInfo.generate(beanDefinition); assertEquals(Integer.valueOf(1), generated.getK1()); assertTrue(generated.getK2().contains(ClientResourceType.class.getName())); assertTrue(generated.getK2().contains("org.uberfire.OtherResourceType")); } }