Example usage for org.hibernate.criterion Projections rowCount

List of usage examples for org.hibernate.criterion Projections rowCount

Introduction

In this page you can find the example usage for org.hibernate.criterion Projections rowCount.

Prototype

public static Projection rowCount() 

Source Link

Document

The query row count, ie.

Usage

From source file:com.denimgroup.threadfix.data.dao.hibernate.HibernateUserDao.java

License:Mozilla Public License

@Override
public Long countUsers() {
    return (Long) getActiveUserCriteria().setProjection(Projections.rowCount()).uniqueResult();
}

From source file:com.denimgroup.threadfix.data.dao.hibernate.HibernateUserDao.java

License:Mozilla Public License

@Override
public boolean canRemovePermissionFromUserAndGroup(Integer userId, Integer groupId, String string) {
    Long result = (Long) sessionFactory.getCurrentSession().createCriteria(User.class)
            .createAlias("globalRole", "roleAlias").add(Restrictions.eq("active", true))
            .add(Restrictions.eq("isLdapUser", false)).add(Restrictions.eq("roleAlias." + string, true))
            .add(Restrictions.ne("id", userId)).setProjection(Projections.rowCount()).uniqueResult();

    if (result == null || result == 0) {
        // we also need to do a lookup on groups
        result += (Long) sessionFactory.getCurrentSession().createCriteria(User.class)
                .createAlias("groups", "groupAlias").createAlias("groupAlias.globalRole", "roleAlias")
                .add(Restrictions.eq("active", true)).add(Restrictions.eq("isLdapUser", false))
                .add(Restrictions.eq("groupAlias.active", true)).add(Restrictions.ne("groupAlias.id", groupId))
                .add(Restrictions.eq("roleAlias." + string, true)).add(Restrictions.ne("id", userId))
                .setProjection(Projections.rowCount()).uniqueResult();
    }/* w  w  w  .  j av a  2  s .  c om*/

    return result != null && result > 0;
}

From source file:com.denimgroup.threadfix.data.dao.hibernate.HibernateVulnerabilityDao.java

License:Mozilla Public License

@Override
public long getVulnCountWithFilters(Integer appId, String description, String severity, String path,
        String param, Integer cweInteger, boolean open, boolean falsePositive, boolean hidden) {

    Criteria criteria = sessionFactory.getCurrentSession().createCriteria(Vulnerability.class);

    if (hidden) {
        criteria.add(Restrictions.eq("hidden", true));
    } else {//from   w w w.  j  a va2 s  .  c o m
        criteria.add(Restrictions.eq("hidden", false));

        if (!open && falsePositive) {
            criteria.add(Restrictions.eq("isFalsePositive", true));
        } else {
            criteria.add(Restrictions.eq("active", open)).add(Restrictions.eq("hidden", false))
                    .add(Restrictions.eq("isFalsePositive", falsePositive));
        }
    }

    criteria.createAlias("genericVulnerability", "vuln").add(Restrictions.eq("application.id", appId));

    // Add Filtering restrictions
    if (description != null) {
        criteria.add(Restrictions.like("vuln.name", "%" + description + "%").ignoreCase());
    }

    if (severity != null) {
        criteria.createAlias("genericSeverity", "severity")
                .add(Restrictions.like("severity.name", "%" + severity + "%").ignoreCase());
    }

    if (path != null) {
        criteria.createAlias("surfaceLocation", "surface")
                .add(Restrictions.like("surface.path", "%" + path + "%").ignoreCase());
    }

    if (cweInteger != null) {
        criteria.add(Restrictions.eq("vuln.id", cweInteger));
    }

    if (param != null) {
        criteria.createAlias("surfaceLocation", "surface")
                .add(Restrictions.like("surface.parameter", "%" + param + "%").ignoreCase());
    }

    return (Long) criteria.setProjection(Projections.rowCount()).uniqueResult();
}

From source file:com.denimgroup.threadfix.data.dao.hibernate.HibernateVulnerabilityDao.java

License:Mozilla Public License

@Override
public long getVulnCount(Integer appId, boolean open) {
    return (Long) sessionFactory.getCurrentSession().createCriteria(Vulnerability.class)
            .add(Restrictions.eq("active", open)).add(Restrictions.eq("hidden", false))
            .add(Restrictions.eq("isFalsePositive", false)).add(Restrictions.eq("application.id", appId))
            .setProjection(Projections.rowCount()).uniqueResult();
}

From source file:com.denimgroup.threadfix.data.dao.hibernate.HibernateVulnerabilitySearchDao.java

License:Mozilla Public License

@Override
public long performLookupCount(VulnerabilitySearchParameters parameters) {
    assert parameters != null;

    Criteria criteria = performLookupSetup(parameters);

    Number numVulns = (Number) criteria.setProjection(Projections.rowCount()).uniqueResult();
    return numVulns.longValue();
}

From source file:com.denimgroup.threadfix.data.dao.hibernate.HibernateVulnerabilitySearchDao.java

License:Mozilla Public License

@Override
public Long getCount(VulnerabilitySearchParameters parameters) {
    return (Long) VulnerabilitySearchCriteriaConstructor
            .getCriteriaWithRestrictions(sessionFactory.getCurrentSession(), parameters)
            .setProjection(Projections.rowCount()).uniqueResult();
}

From source file:com.dosport.hibernate.utils.HibernateDao.java

License:Apache License

/**
 * countCriteria./* w  ww.  j a  v  a 2 s . c o  m*/
 */
@SuppressWarnings({ "unchecked", "rawtypes" })
protected long countCriteriaResult(final Criteria c) {
    CriteriaImpl impl = (CriteriaImpl) c;

    // Projection?ResultTransformer?OrderBy??,??Count?
    Projection projection = impl.getProjection();
    ResultTransformer transformer = impl.getResultTransformer();

    List<CriteriaImpl.OrderEntry> orderEntries = null;
    try {
        orderEntries = (List) ReflectionUtils.getFieldValue(impl, "orderEntries");
        ReflectionUtils.setFieldValue(impl, "orderEntries", new ArrayList());
    } catch (Exception e) {
        logger.error("??:{}", e.getMessage());
    }

    // Count
    Long totalCountObject = (Long) c.setProjection(Projections.rowCount()).uniqueResult();
    long totalCount = (totalCountObject != null) ? totalCountObject : 0;

    // ?Projection,ResultTransformerOrderBy??
    c.setProjection(projection);

    if (projection == null) {
        c.setResultTransformer(CriteriaSpecification.ROOT_ENTITY);
    }
    if (transformer != null) {
        c.setResultTransformer(transformer);
    }
    try {
        ReflectionUtils.setFieldValue(impl, "orderEntries", orderEntries);
    } catch (Exception e) {
        logger.error("??:{}", e.getMessage());
    }

    return totalCount;
}

From source file:com.eheobo.samples.shiro.dao.BootstrapDataPopulator.java

License:Apache License

private boolean isUserTableEmpty() {
    Session session = sessionFactory.openSession();
    try {//from ww  w .j  av  a  2  s.  co m
        Integer userCount = Integer.parseInt(session.createCriteria(User.class)
                .setProjection(Projections.rowCount()).uniqueResult().toString());
        return userCount == 0;
    } finally {
        session.close();
    }
}

From source file:com.enonic.cms.store.dao.FindContentByKeysQuerier.java

License:Open Source License

private boolean eagerFetchingIsSafe(final Collection<ContentKey> contentKeys) {
    final Number number = (Number) hibernateSession.createCriteria(SectionContentEntity.class)
            .add(Restrictions.in("content.key", contentKeys)).setProjection(Projections.rowCount())
            .uniqueResult();//from   w ww .  j  a  v  a2 s.c  o m

    return number.intValue() <= (EAGER_FETCH_NUMBER_OF_SECTIONS_THRESHOLD * contentKeys.size());
}

From source file:com.ephesoft.dcma.core.dao.hibernate.HibernateDao.java

License:Open Source License

/**
 * To count no. of rows satisfying criteria.
 * @param criteria DetachedCriteria/*ww w.j  av  a 2  s  .co m*/
 */
public int count(DetachedCriteria criteria) {
    criteria.setProjection(Projections.rowCount());
    return (Integer) find(criteria).get(0);
}