Search in sources :

Example 11 with Page

use of org.broadleafcommerce.cms.page.domain.Page in project BroadleafCommerce by BroadleafCommerce.

the class PageDaoImpl method findPageByURI.

@Override
public List<Page> findPageByURI(String uri) {
    CriteriaBuilder builder = em.getCriteriaBuilder();
    CriteriaQuery<Page> criteriaQuery = builder.createQuery(Page.class);
    Root pageRoot = criteriaQuery.from(PageImpl.class);
    criteriaQuery.select(pageRoot);
    List<Predicate> restrictions = new ArrayList<>();
    restrictions.add(builder.equal(pageRoot.get("fullUrl"), uri));
    Date currentDate = DateUtil.getCurrentDateAfterFactoringInDateResolution(cachedDate, getCurrentDateResolution());
    addActiveDateRestrictions(builder, pageRoot, restrictions, currentDate, currentDate);
    addOfflineRestriction(builder, pageRoot, restrictions);
    criteriaQuery.where(restrictions.toArray(new Predicate[restrictions.size()]));
    return getResultForQueryAndCache(criteriaQuery);
}
Also used : CriteriaBuilder(javax.persistence.criteria.CriteriaBuilder) Root(javax.persistence.criteria.Root) ArrayList(java.util.ArrayList) Page(org.broadleafcommerce.cms.page.domain.Page) Date(java.util.Date) Predicate(javax.persistence.criteria.Predicate)

Aggregations

Page (org.broadleafcommerce.cms.page.domain.Page)11 ArrayList (java.util.ArrayList)6 CriteriaBuilder (javax.persistence.criteria.CriteriaBuilder)4 PageImpl (org.broadleafcommerce.cms.page.domain.PageImpl)3 Date (java.util.Date)2 Predicate (javax.persistence.criteria.Predicate)2 Root (javax.persistence.criteria.Root)2 FieldGroup (org.broadleafcommerce.cms.field.domain.FieldGroup)2 PageField (org.broadleafcommerce.cms.page.domain.PageField)2 AdminMainEntity (org.broadleafcommerce.common.admin.domain.AdminMainEntity)2 Entity (org.broadleafcommerce.openadmin.dto.Entity)2 Property (org.broadleafcommerce.openadmin.dto.Property)2 File (java.io.File)1 HashMap (java.util.HashMap)1 Map (java.util.Map)1 NoResultException (javax.persistence.NoResultException)1 Query (javax.persistence.Query)1 TypedQuery (javax.persistence.TypedQuery)1 CriteriaQuery (javax.persistence.criteria.CriteriaQuery)1 FieldDefinition (org.broadleafcommerce.cms.field.domain.FieldDefinition)1