}
ObjectMapper mapper = new ObjectMapper();
mapper.configure(Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);
CategoryAPI catAPI = APILocator.getCategoryAPI();
int start = -1;
int count = -1;
String startStr = request.getParameter("start");
String countStr = request.getParameter("count");
String sort = request.getParameter("sort");
if(UtilMethods.isSet(startStr) && UtilMethods.isSet(countStr)) {
start = Integer.parseInt(request.getParameter("start"));
count = Integer.parseInt(request.getParameter("count"));
}
Boolean topLevelCats = !UtilMethods.isSet(inode);
if(UtilMethods.isSet(reorder) && reorder.equalsIgnoreCase("TRUE")) {
if(topLevelCats) {
catAPI.sortTopLevelCategories();
} else {
catAPI.sortChildren(inode);
}
}
PaginatedCategories pagCategories = topLevelCats?catAPI.findTopLevelCategories(user, false, start, count, q, sort):
catAPI.findChildren(user, inode, false, start, count, q, sort);
List<Map<String,Object>> items = new ArrayList<Map<String,Object>>();
List<Category> categories = pagCategories.getCategories();
if(categories!=null) {