private String generateIndexAnnotation(IndexInspector index) { AnnotationBuilder ap = new AnnotationBuilder(); ap.append('@').append(IQIndex.class.getSimpleName()); ap.append('('); ap.resetCount(); if (!StringUtils.isNullOrEmpty(index.name)) { ap.addParameter("name", index.name); } if (!index.type.equals(IndexType.STANDARD)) { ap.addEnum("type", index.type); } if (ap.getCount() > 0) { // multiple fields specified ap.addParameter("value", index.columns); } else { // default value ap.addParameter(null, index.columns); } ap.append(')'); return ap.toString(); }