use of org.broadleafcommerce.openadmin.dto.CriteriaTransferObject in project BroadleafCommerce by BroadleafCommerce.
the class AdminEntityServiceImpl method fetch.
@Override
public PersistenceResponse fetch(PersistencePackageRequest request) throws ServiceException {
PersistencePackage pkg = persistencePackageFactory.create(request);
CriteriaTransferObject cto = getDefaultCto();
if (request.getFilterAndSortCriteria() != null) {
cto.addAll(Arrays.asList(request.getFilterAndSortCriteria()));
}
if (request.getMaxResults() != null) {
cto.setMaxResults(request.getMaxResults());
}
if (request.getStartIndex() == null) {
cto.setFirstResult(0);
} else {
cto.setFirstResult(request.getStartIndex());
}
if (request.getMaxIndex() != null) {
Integer startIndex = request.getStartIndex() != null ? request.getStartIndex() : 0;
int requestedMaxResults = request.getMaxIndex() - startIndex + 1;
if (requestedMaxResults >= 0 && requestedMaxResults < cto.getMaxResults()) {
cto.setMaxResults(requestedMaxResults);
}
}
cto.setLastId(request.getLastId());
cto.setFirstId(request.getFirstId());
cto.setUpperCount(request.getUpperCount());
cto.setLowerCount(request.getLowerCount());
if (request.getPageSize() != null) {
cto.setMaxResults(request.getPageSize());
}
cto.setPresentationFetch(request.getPresentationFetch());
return service.fetch(pkg, cto);
}
Aggregations