in src/main/java/com/amazonaws/services/kinesis/aggregators/app/ListAggregateKeysServlet.java [40:94]
private void respondWith(HttpServletResponse response, List<TableKeyStructure> queryResult)
throws IOException {
response.setStatus(200);
// cors grant
response.setHeader("Access-Control-Allow-Origin", "*");
PrintWriter w = response.getWriter();
w.println("{");
int i = 0;
// write out the response values as json
if (queryResult != null) {
int result = 0;
for (TableKeyStructure t : queryResult) {
if (result == 0) {
w.println(String.format("\"labelName\":\"%s\",", t.getLabelAttributeName()));
w.println(String.format("\"dateName\":\"%s\",", t.getDateAttributeName()));
w.println("\"values\":[");
}
// write the value as a struct
w.print("{");
w.print(String.format("\"value\":\"%s\"", t.getLabelAttributeValue()));
int dateItem = 0;
if (t.getDateValues() != null) {
if (dateItem == 0) {
w.print(",\n\"dates\":[");
}
for (String s : t.getDateValues()) {
// write the date value
w.print(String.format("\"%s\"", s));
if (dateItem != t.getDateValues().size() - 1) {
w.println(",");
} else {
w.print("]");
}
dateItem++;
}
}
w.print("}");
if (result != queryResult.size() - 1) {
w.println(",");
}
result++;
}
}
w.print("]}");
}