@Override
public ResourceList getResourcesByCategory(SecurityContext sc, String catName,
boolean includeAttributes, boolean includeData) throws NotFoundWebEx, ConflictWebEx,
BadRequestWebEx, InternalErrorWebEx {
if (LOGGER.isDebugEnabled())
LOGGER.debug("getResourcesByCategory(" + catName + ")");
if (catName == null)
throw new BadRequestWebEx("Category is null");
Category category;
try {
category = categoryService.get(catName);
} catch (BadRequestServiceEx ex) {
throw new BadRequestWebEx(ex.getMessage());
}
if (category == null)
throw new NotFoundWebEx("Category not found");
SearchFilter filter = new CategoryFilter(catName, SearchOperator.EQUAL_TO);
List<Resource> resources = null;
try {
User user = extractAuthUser(sc);
resources = resourceService.getResources(filter, null, null, includeAttributes, includeData, user);
} catch (BadRequestServiceEx ex) {
throw new BadRequestWebEx(ex.getMessage());
} catch (InternalErrorServiceEx ex) {
throw new InternalErrorWebEx(ex.getMessage());
}
return new ResourceList(resources);
}