Search in sources :

Example 6 with CriteriaTransferObject

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);
}
Also used : PersistencePackage(org.broadleafcommerce.openadmin.dto.PersistencePackage) CriteriaTransferObject(org.broadleafcommerce.openadmin.dto.CriteriaTransferObject)

Aggregations

CriteriaTransferObject (org.broadleafcommerce.openadmin.dto.CriteriaTransferObject)6 FilterAndSortCriteria (org.broadleafcommerce.openadmin.dto.FilterAndSortCriteria)4 FilterMapping (org.broadleafcommerce.openadmin.server.service.persistence.module.criteria.FilterMapping)4 PersistencePerspective (org.broadleafcommerce.openadmin.dto.PersistencePerspective)3 Serializable (java.io.Serializable)2 InvocationTargetException (java.lang.reflect.InvocationTargetException)2 BigDecimal (java.math.BigDecimal)2 SecurityServiceException (org.broadleafcommerce.common.exception.SecurityServiceException)2 ServiceException (org.broadleafcommerce.common.exception.ServiceException)2 AdornedTargetList (org.broadleafcommerce.openadmin.dto.AdornedTargetList)2 BasicFieldMetadata (org.broadleafcommerce.openadmin.dto.BasicFieldMetadata)2 Entity (org.broadleafcommerce.openadmin.dto.Entity)2 FieldMetadata (org.broadleafcommerce.openadmin.dto.FieldMetadata)2 Field (java.lang.reflect.Field)1 ArrayList (java.util.ArrayList)1 List (java.util.List)1 CriteriaBuilder (javax.persistence.criteria.CriteriaBuilder)1 From (javax.persistence.criteria.From)1 Path (javax.persistence.criteria.Path)1 Predicate (javax.persistence.criteria.Predicate)1