public void renderURL(PropertyMap properties, MimeType mimeType, Appendable appendable) throws IOException {
//
ControllerHandler handler = application.resolveBean(ControllerService.class).getDescriptor().getMethodByHandle(target);
//
JSON props = new JSON();
if (properties != null) {
for (PropertyType<?> property : properties) {
Object value = properties.getValue(property);
String valid = _checkPropertyValidity(handler.getPhase(), property, value);
if (valid != null) {
throw new IllegalArgumentException(valid);
}
else {
props.set(property.getClass().getName(), value);
}
}
}
//
HashMap<String, String[]> foo = new HashMap<String, String[]>();
for (ResponseParameter parameter : parameters.values()) {
foo.put(parameter.getName(), parameter.toArray());
}
//
JSON url = new JSON();
url.set("target", target.toString());
url.map("parameters", foo);
url.set("properties", props);
//
url.toString(appendable);
}
};
}