this.url = checkNotNullOrEmpty(url);
new URL(url); // validate url
GsonBuilder builder = new GsonBuilder();
builder.registerTypeAdapter(GroupResult.class, new GroupByDeserializer());
builder.registerTypeAdapter(Results.class, new ResultsDeserializer(this));
mapper = builder.create();
customGroupTypes.put("number", Number.class);
customGroupTypes.put("text", String.class);
}