@Override public DynamicField text(boolean own) { Annotation annot = new Annotation(Text.class.getName(), cpool); annot.addMemberValue("own", new BooleanMemberValue(own, cpool)); attr.addAnnotation(annot); return this; }
@Override public DynamicField html(boolean outer) { Annotation annot = new Annotation(Html.class.getName(), cpool); annot.addMemberValue("outer", new BooleanMemberValue(outer, cpool)); attr.addAnnotation(annot); return this; }
@SuppressWarnings("all") public static MemberValue createMemberValue(Object value, ConstPool constPool) { MemberValue memberValue = null; if (value instanceof Integer) { memberValue = new IntegerMemberValue(constPool, ((Integer) value)); } else if (value instanceof Boolean) { memberValue = new BooleanMemberValue((Boolean) value, constPool); } else if (value instanceof Long) { memberValue = new LongMemberValue((Long) value, constPool); } else if (value instanceof String) { memberValue = new StringMemberValue((String) value, constPool); } else if (value instanceof Class) { memberValue = new ClassMemberValue(((Class) value).getName(), constPool); } else if (value instanceof Object[]) { Object[] arr = ((Object[]) value); ArrayMemberValue arrayMemberValue = new ArrayMemberValue(new ClassMemberValue(arr[0].getClass().getName(), constPool), constPool); arrayMemberValue.setValue(Arrays.stream(arr) .map(o -> createMemberValue(o, constPool)) .toArray(MemberValue[]::new)); memberValue = arrayMemberValue; } return memberValue; }
@Override public DynamicField href(boolean click, String... value) { Annotation annot = new Annotation(Href.class.getName(), cpool); annot.addMemberValue("click", new BooleanMemberValue(click, cpool)); ArrayMemberValue arrayMemberValue = new ArrayMemberValue(cpool); MemberValue[] memberValues = new StringMemberValue[value.length]; for(int i = 0; i < value.length; i++) { memberValues[i] = new StringMemberValue(value[i], cpool); } arrayMemberValue.setValue(memberValues); annot.addMemberValue("value", arrayMemberValue); attr.addAnnotation(annot); return this; }
break; case 'Z' : m = new BooleanMemberValue(index, cp); break; case 's' :
return new BooleanMemberValue(cp); else if (type == CtClass.byteType) return new ByteMemberValue(cp);
break; case 'Z' : m = new BooleanMemberValue(index, cp); break; case 's' :
return new BooleanMemberValue(cp); else if (type == CtClass.byteType) return new ByteMemberValue(cp);
public void visitBooleanMemberValue(BooleanMemberValue booleanMemberValue) { value = new BooleanMemberValue(cp); }
public void visitBooleanMemberValue(BooleanMemberValue booleanMemberValue) { value = new BooleanMemberValue(cp); }
@Override public void visitBooleanMemberValue(BooleanMemberValue node) { array[index] = new BooleanMemberValue(node.getValue(), constPool); }
@Override public void visitBooleanMemberValue(BooleanMemberValue node) { array[index] = new BooleanMemberValue(node.getValue(), constPool); }
public CtAnnotationBuilder addBooleanMember(String name, boolean value) { annotation.addMemberValue(name, new BooleanMemberValue(value, constPool)); return this; }
private MemberValue getFieldMemberValue(Object object, Method field) throws Exception { ConstPool cp = new ConstPool(this.getClass().getCanonicalName()); if (field.getReturnType().isArray()) { return getArrayMemberValue(object, field, cp); } if (field.getReturnType().equals(boolean.class)) { return new BooleanMemberValue((Boolean) field.invoke(object), cp); } if (field.getReturnType().equals(String.class)) { return new StringMemberValue((String) field.invoke(object), cp); } if (field.getReturnType().equals(int.class)) { return new IntegerMemberValue(cp, (int) field.invoke(object)); } return null; } public static String[] convertPluginPaths(String[] original, int index, boolean checkFormat) {
public CtAnnotationBuilder addBooleanMember(String name, boolean[] values) { ArrayMemberValue member = new ArrayMemberValue(constPool); BooleanMemberValue[] members = new BooleanMemberValue[values.length]; for (int i = 0; i < values.length; i++) { members[i] = new BooleanMemberValue(values[i], constPool); } member.setValue(members); annotation.addMemberValue(name, member); return this; }
@SuppressWarnings("all") public static MemberValue createMemberValue(Object value, ConstPool constPool) { MemberValue memberValue = null; if (value instanceof Integer) { memberValue = new IntegerMemberValue(constPool, ((Integer) value)); } else if (value instanceof Boolean) { memberValue = new BooleanMemberValue((Boolean) value, constPool); } else if (value instanceof Long) { memberValue = new LongMemberValue((Long) value, constPool); } else if (value instanceof String) { memberValue = new StringMemberValue((String) value, constPool); } else if (value instanceof Class) { memberValue = new ClassMemberValue(((Class) value).getName(), constPool); } else if (value instanceof Object[]) { Object[] arr = ((Object[]) value); ArrayMemberValue arrayMemberValue = new ArrayMemberValue(new ClassMemberValue(arr[0].getClass().getName(), constPool), constPool); arrayMemberValue.setValue(Arrays.stream(arr) .map(o -> createMemberValue(o, constPool)) .toArray(MemberValue[]::new)); memberValue = arrayMemberValue; } return memberValue; }
/** * Returns the api path parameter annotations * * @return */ protected List<Annotation> getApiPathParamAnnotations() { List<Annotation> annotations = new ArrayList<Annotation>(); List<String> parameters = getRoutePattern().getParameterNames(); for (int i = 0; i < parameters.size(); i++) { Annotation annotation = new Annotation(ApiImplicitParam.class.getCanonicalName(), ctClass.getClassFile().getConstPool()); annotation.addMemberValue("name", new StringMemberValue(parameters.get(i), ctClass.getClassFile().getConstPool())); annotation.addMemberValue("paramType", new StringMemberValue("path", ctClass.getClassFile().getConstPool())); annotation.addMemberValue("dataType", new StringMemberValue(String.class.getCanonicalName(), ctClass.getClassFile().getConstPool())); annotation.addMemberValue("value", new StringMemberValue("The " + getResourcePath().getNodePath().get(i).getEntityMetaData().getName() + " identifier", ctClass.getClassFile().getConstPool())); annotation.addMemberValue("required", new BooleanMemberValue(true, ctClass.getClassFile().getConstPool())); if (i == parameters.size() - 1) { annotation.addMemberValue("allowMultiple", new BooleanMemberValue(true, ctClass.getClassFile().getConstPool())); } annotations.add(annotation); } return annotations; }
break; case 'Z' : m = new BooleanMemberValue(index, cp); break; case 's' :
break; case 'Z' : m = new BooleanMemberValue(index, cp); break; case 's' :
protected List<Annotation> getApiAdditionalParamAnnotations() { List<Annotation> annotations = new ArrayList<Annotation>(); // Exclude params Annotation annotation = new Annotation(ApiImplicitParam.class.getCanonicalName(), ctClass.getClassFile().getConstPool()); annotation.addMemberValue("name", new StringMemberValue("exclude", ctClass.getClassFile().getConstPool())); annotation.addMemberValue("paramType", new StringMemberValue("query", ctClass.getClassFile().getConstPool())); annotation.addMemberValue("dataType", new StringMemberValue(String.class.getCanonicalName(), ctClass.getClassFile().getConstPool())); annotation.addMemberValue("value", new StringMemberValue("Comma seperated fields to exclude from the response", ctClass.getClassFile().getConstPool())); annotation.addMemberValue("allowMultiple", new BooleanMemberValue(true, ctClass.getClassFile().getConstPool())); annotations.add(annotation); // Exclude params annotation = new Annotation(ApiImplicitParam.class.getCanonicalName(), ctClass.getClassFile().getConstPool()); annotation.addMemberValue("name", new StringMemberValue("include", ctClass.getClassFile().getConstPool())); annotation.addMemberValue("paramType", new StringMemberValue("query", ctClass.getClassFile().getConstPool())); annotation.addMemberValue("dataType", new StringMemberValue(String.class.getCanonicalName(), ctClass.getClassFile().getConstPool())); annotation.addMemberValue("value", new StringMemberValue("Comma seperated fields to include in the response", ctClass.getClassFile().getConstPool())); annotation.addMemberValue("allowMultiple", new BooleanMemberValue(true, ctClass.getClassFile().getConstPool())); annotations.add(annotation); return annotations; }