public static DataMap getAnnotationsMap(Annotation[] as)
  {
    return annotationsToData(as, true);
  }
@Test(description = "Non-empty annotation, array members, overridden values: data map with annotation + all members")
  public void succeedsOnSupportedArrayMembersWithOverriddenValues()
  {
    @SupportedArrayMembers(
        booleanMembers = { },
        intMembers = { 1 }
    )
    class LocalClass {
    }

    final Annotation[] annotations = LocalClass.class.getAnnotations();
    final DataMap actual = ResourceModelAnnotation.getAnnotationsMap(annotations);

    Assert.assertNotNull(actual);
    Assert.assertTrue(actual.get(SUPPORTED_ARRAY_MEMBERS) instanceof DataMap);

    final DataMap dataMap = ((DataMap) actual.get(SUPPORTED_ARRAY_MEMBERS));

    Assert.assertEquals(dataMap.size(), 9);
    Assert.assertEquals(dataMap.get("annotationMembers").getClass(), DataList.class);
    Assert.assertNull(dataMap.get("booleanMembers")); // empty array --> null
    Assert.assertEquals(dataMap.get("byteMembers").getClass(), ByteString.class); // byte string
    Assert.assertEquals(dataMap.get("classMembers").getClass(), DataList.class);
    Assert.assertEquals(dataMap.get("doubleMembers").getClass(), DataList.class);
    Assert.assertEquals(dataMap.get("enumMembers").getClass(), DataList.class);
    Assert.assertEquals(dataMap.get("floatMembers").getClass(), DataList.class);
    Assert.assertEquals(dataMap.get("intMembers").getClass(), DataList.class);
    Assert.assertEquals(dataMap.get("longMembers").getClass(), DataList.class);
    Assert.assertEquals(dataMap.get("stringMembers").getClass(), DataList.class);
  }