public void visitArrayMemberValue(ArrayMemberValue arrayMemberValue) { Class<?> baseType = type.getComponentType(); int size = 0; if (arrayMemberValue.getValue() != null) { size = arrayMemberValue.getValue().length; } value = Array.newInstance(baseType, size); MemberValue[] elements = arrayMemberValue.getValue(); for (int i = 0; i < size; i++) { ProxyMapCreator creator = new ProxyMapCreator(baseType); elements[i].accept(creator); Array.set(value, i, creator.value); } }
public void visitArrayMemberValue(ArrayMemberValue arrayMemberValue) { Class baseType = type.getComponentType(); int size = 0; if (arrayMemberValue.getValue() != null) { size = arrayMemberValue.getValue().length; } value = Array.newInstance(baseType, size); MemberValue[] elements = arrayMemberValue.getValue(); for (int i = 0; i < size; i++) { ProxyMapCreator creator = new ProxyMapCreator(baseType); elements[i].accept(creator); Array.set(value, i, creator.value); } }
public static Map<String, Object> createProxyMap(Class annotation, javassist.bytecode.annotation.Annotation info) { Map<String, Object> map = new HashMap<String, Object>(); if (info.getMemberNames() == null) return map; Set members = info.getMemberNames(); Iterator it = members.iterator(); while (it.hasNext()) { String name = (String) it.next(); MemberValue mv = info.getMemberValue(name); ProxyMapCreator creator = new ProxyMapCreator(getMemberType(annotation, name)); mv.accept(creator); map.put(name, creator.value); } return map; } }
@SuppressWarnings("unchecked") public static Map<String, Object> createProxyMap(Class<?> annotation, javassist.bytecode.annotation.Annotation info) { Map<String, Object> map = new HashMap<String, Object>(); if (info.getMemberNames() == null) return map; Set members = info.getMemberNames(); Iterator it = members.iterator(); while (it.hasNext()) { String name = (String) it.next(); MemberValue mv = info.getMemberValue(name); ProxyMapCreator creator = new ProxyMapCreator(getMemberType(annotation, name)); mv.accept(creator); map.put(name, creator.value); } return map; } }