Example usage for org.hibernate.criterion Restrictions isNull

List of usage examples for org.hibernate.criterion Restrictions isNull

Introduction

In this page you can find the example usage for org.hibernate.criterion Restrictions isNull.

Prototype

public static Criterion isNull(String propertyName) 

Source Link

Document

Apply an "is null" constraint to the named property

Usage

From source file:com.viettel.vsaadmin.database.DAOHibernate.DepartmentDAOHE.java

License:Open Source License

/**
 *
 * @return/*from  w w  w.  j a v a2 s  . c  o m*/
 */
public List<Department> getParentDeptForTree(List<Long> listDeptId, String... type) {
    Criterion[] criterion = new Criterion[4];
    criterion[0] = Restrictions.isNull("parentId");
    criterion[1] = Restrictions.in("deptId", listDeptId);
    criterion[2] = Restrictions.eq("status", (short) 1);
    criterion[3] = Restrictions
            .sqlRestriction(" 1 = 1 order by nlssort(lower({alias}.DEPT_NAME),'nls_sort = Vietnamese') ");
    return this.findByCriteria(0, -1, criterion);
}

From source file:com.viettel.vsaadmin.database.DAOHibernate.PositionDAOHE.java

License:Open Source License

/**
 * tim kiem root cua cay//  w  w w  .j a  v  a 2s  .  c o  m
 *
 * @return
 */
public List<Position> getParentDateForTree() {
    Criterion criterion = Restrictions.isNull("parentId");
    return this.findByCriteria(0, -1, criterion);
}

From source file:com.webbfontaine.valuewebb.action.pricedb.mp.PRDConsult.java

License:Open Source License

private void fillPDs(Pd pd) {
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(new Date());
    calendar.add(Calendar.MONTH, -3);
    Date dateOfTodayMinus3Months = calendar.getTime();

    Criteria criteria = PersistenceUtil.getSession(entityManager).createCriteria(Pd.class)
            .setMaxResults(Constants.MAX_RECORDS_IN_FINDER_RESULT).addOrder(Order.desc("id"));
    if (pd.getHsCodeF() != null) {
        criteria.add(Restrictions.like("hsCodeF", pd.getHsCodeF(), MatchMode.START));
    }/*from   w  ww  .j  a  v  a2 s .  co  m*/
    if (pd.getProductDscF() != null) {
        criteria.add(Restrictions.ilike("productDscF", pd.getProductDscF(), MatchMode.ANYWHERE));
    }
    if (!StringUtils.isEmpty(pd.getValMethod())) {
        criteria.add(Restrictions.ilike("valMethod", pd.getValMethod(), MatchMode.ANYWHERE));
    }

    if (ApplicationProperties.getAppCountry().equals(Constants.CI)) {
        // according to ELL-1186, hardcoded restriction added to qlClassLine, qlValLine
        criteria.add(Restrictions.and(
                Restrictions.or(Restrictions.eq("qlValLine", "1"), Restrictions.isNull("qlValLine")),
                Restrictions.or(Restrictions.eq("qlClassLine", "1"), Restrictions.isNull("qlClassLine"))));
    }

    Criteria ttCrit = criteria.createCriteria("ttGen");
    ttCrit.add(Restrictions.ge("date", dateOfTodayMinus3Months));

    pdDB.addAll(criteria.list());
}

From source file:com.webbfontaine.valuewebb.search.custom.UserCriterion.java

License:Open Source License

public Criterion getCriterion() throws Exception {
    if (condition.equals(EQ)) {
        if (value == null || value.toString().trim().length() == 0) {
            return Restrictions.isNull(fullKey);
        } else {//w w  w  .  j av  a 2s . c o  m
            return Restrictions.eq(fullKey, value);
        }
    }

    if (condition.equals(NE)) {
        if (value == null || value.toString().trim().length() == 0) {
            return Restrictions.isNotNull(fullKey);
        } else {
            return Restrictions.ne(fullKey, value);
        }
    }

    if (condition.equals(GT)) {
        assertNonNullity(value);
        return Restrictions.gt(fullKey, value);
    }

    if (condition.equals(GE)) {
        assertNonNullity(value);
        return Restrictions.ge(fullKey, value);
    }

    if (condition.equals(LT)) {
        assertNonNullity(value);
        return Restrictions.lt(fullKey, value);
    }

    if (condition.equals(LE)) {
        assertNonNullity(value);
        return Restrictions.le(fullKey, value);
    }

    if (condition.equals(IN_A_RANGE)) {
        assertNonNullity(value);
        assertNonNullity(diff);
        return getPercentRange();
    }

    if (condition.equals(ENDS_WITH)) {
        return Restrictions.like(fullKey, "%" + StringUtils.trim(value.toString()));
    }

    if (condition.equals(STARTS_WITH)) {
        return Restrictions.like(fullKey, StringUtils.trim(value.toString()) + "%");
    }

    if (condition.equals(CONTAINS)) {
        return Restrictions.like(fullKey, "%" + StringUtils.trim(value.toString()) + '%');
    }

    if (condition.equals(NOT_CONTAIN)) {
        return Restrictions.not(Restrictions.like(fullKey, "%" + StringUtils.trim(value.toString()) + '%'));
    }

    LOGGER.error(
            "Undefined User Criteria [key:{0}, value:{1}, condition:{3}] couldn't be transformed to search criterion",
            fullKey, value, condition);

    throw new RuntimeException("Undefined User Criteria: " + name);
}

From source file:com.wintindustries.pdffilter.PFData.PFDatabase.java

/**
 * Refreshes the Cache of root folders from the database
 *///from w w w .ja  v a  2s.com
public synchronized void refreshFolderCache() {
    //  Session  session = sessionManager.OpenSession(); // if sesion is not already open open it
    log.info(name + ": Refreshing FolderCache...");

    if (folderCache == null) {
        log.info(name + ": Folder Cache was null, creating new folder cache");
        folderCache = new HashSet<>();
    }
    if (sessionManager.getSession() == null)
        throw new NullPointerException(name + ":The PFDatabase session object was null");
    if (sessionManager.getSession().isOpen() == false)
        throw new RuntimeException(name + ":The Session cannot be used becuase it is closed.");
    Criteria criteria = sessionManager.getSession().createCriteria(PFFolder.class);
    criteria.add(Restrictions.isNull("parent"));
    List<PFFolder> fetchedQuery = criteria.list();
    for (PFFolder f : fetchedQuery) {
        // make sure we don't add any duplicates 
        boolean foundExistingFolder = false;
        for (PFFolder existingFolder : folderCache) {
            if (existingFolder.getLocation().toString().equalsIgnoreCase(f.getLocation().toString())) {
                foundExistingFolder = true;
                // we found our match, don't need to continue searching
                break;
            }
        }

        if (foundExistingFolder)
            continue; // if we already have a folder that exists, don't add it again and create a duplicate

        folderCache.add(f);
        log.info(name + ": Added new folder \"" + f.getLocation() + "\" to FolderCache");
    }
}

From source file:com.yahoo.elide.datastores.hibernate3.filter.CriterionFilterOperation.java

License:Apache License

@Override
public Criterion apply(FilterPredicate filterPredicate) {
    List<FilterPredicate.PathElement> path = filterPredicate.getPath();

    /* If the predicate refers to a nested association, the restriction should be 'alias.fieldName' */
    String alias;//  w ww.j  a  v  a 2 s  .co m
    if (path.size() > 1) {
        alias = getAlias(path);
        alias = alias + "." + path.get(path.size() - 1).getFieldName();
        /* If the predicate refers to the root entity, the restriction should be 'fieldName' */
    } else {
        alias = path.get(0).getFieldName();
    }

    switch (filterPredicate.getOperator()) {
    case IN:
        if (filterPredicate.getValues().isEmpty()) {
            return Restrictions.sqlRestriction("(false)");
        }
        return Restrictions.in(alias, filterPredicate.getValues());
    case NOT:
        if (filterPredicate.getValues().isEmpty()) {
            return Restrictions.sqlRestriction("(true)");
        }
        return Restrictions.not(Restrictions.in(alias, filterPredicate.getValues()));
    case PREFIX:
        return Restrictions.like(alias,
                filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER)
                        + MATCHALL_CHARACTER);
    case PREFIX_CASE_INSENSITIVE:
        return Restrictions.ilike(alias,
                filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER)
                        + MATCHALL_CHARACTER);
    case POSTFIX:
        return Restrictions.like(alias, MATCHALL_CHARACTER
                + filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER));
    case POSTFIX_CASE_INSENSITIVE:
        return Restrictions.ilike(alias, MATCHALL_CHARACTER
                + filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER));
    case INFIX:
        return Restrictions.like(alias,
                MATCHALL_CHARACTER + filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER)
                        + MATCHALL_CHARACTER);
    case INFIX_CASE_INSENSITIVE:
        return Restrictions.ilike(alias,
                MATCHALL_CHARACTER + filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER)
                        + MATCHALL_CHARACTER);
    case ISNULL:
        return Restrictions.isNull(alias);
    case NOTNULL:
        return Restrictions.isNotNull(alias);
    case LT:
        return Restrictions.lt(alias, filterPredicate.getValues().get(0));
    case LE:
        return Restrictions.le(alias, filterPredicate.getValues().get(0));
    case GT:
        return Restrictions.gt(alias, filterPredicate.getValues().get(0));
    case GE:
        return Restrictions.ge(alias, filterPredicate.getValues().get(0));
    case TRUE:
        return Restrictions.sqlRestriction("(true)");
    case FALSE:
        return Restrictions.sqlRestriction("(false)");
    default:
        throw new InvalidPredicateException("Operator not implemented: " + filterPredicate.getOperator());
    }
}

From source file:com.zutubi.pulse.master.model.persistence.hibernate.HibernateBuildResultDao.java

License:Apache License

public List<BuildResult> findCompletedSince(final Project[] projects, final long sinceTime) {
    return getHibernateTemplate().execute(new HibernateCallback<List<BuildResult>>() {
        public List<BuildResult> doInHibernate(Session session) throws HibernateException {
            Criteria criteria = session.createCriteria(BuildResult.class);
            criteria.add(Restrictions.isNull("user"));
            addProjectsToCriteria(projects, criteria);
            criteria.add(Restrictions.gt("stamps.endTime", sinceTime));
            criteria.addOrder(Order.desc("id"));
            return criteria.list();
        }//  ww  w.  j  a  v a 2s .  com
    });
}

From source file:com.zutubi.pulse.master.model.persistence.hibernate.HibernateBuildResultDao.java

License:Apache License

public List<BuildResult> queryBuilds(final Project[] projects, final ResultState[] states,
        final String[] statuses, final long earliestStartTime, final long latestStartTime, final int first,
        final int max, final boolean mostRecentFirst, final boolean includePinned) {
    return getHibernateTemplate().execute(new HibernateCallback<List<BuildResult>>() {
        public List<BuildResult> doInHibernate(Session session) throws HibernateException {
            Criteria criteria = session.createCriteria(BuildResult.class);
            criteria.add(Restrictions.isNull("user"));
            if (!includePinned) {
                criteria.add(Restrictions.eq("pinned", false));
            }/*from w w  w  .  j a v a 2s  .  c om*/
            addProjectsToCriteria(projects, criteria);
            addStatesToCriteria(states, criteria);
            addStatusesToCriteria(statuses, criteria);
            addDatesToCriteria(earliestStartTime, latestStartTime, criteria);

            if (first >= 0) {
                criteria.setFirstResult(first);
            }

            if (max >= 0) {
                criteria.setMaxResults(max);
            }

            if (mostRecentFirst) {
                criteria.addOrder(Order.desc("id"));
            } else {
                criteria.addOrder(Order.asc("id"));
            }

            return criteria.list();
        }
    });
}

From source file:com.zutubi.pulse.master.model.persistence.hibernate.HibernateBuildResultDao.java

License:Apache License

public List<BuildResult> queryBuilds(final Project project, final ResultState[] states, final long lowestNumber,
        final long highestNumber, final int first, final int max, final boolean mostRecentFirst,
        boolean initialise) {
    List<BuildResult> results = getHibernateTemplate().execute(new HibernateCallback<List<BuildResult>>() {
        public List<BuildResult> doInHibernate(Session session) throws HibernateException {
            Criteria criteria = session.createCriteria(BuildResult.class);
            criteria.add(Restrictions.isNull("user"));
            criteria.add(Restrictions.eq("project", project));
            addStatesToCriteria(states, criteria);
            addNumbersToCriteria(lowestNumber, highestNumber, criteria);

            if (first >= 0) {
                criteria.setFirstResult(first);
            }/*www. j a  va2 s . c  o m*/

            if (max >= 0) {
                criteria.setMaxResults(max);
            }

            if (mostRecentFirst) {
                criteria.addOrder(Order.desc("number"));
            } else {
                criteria.addOrder(Order.asc("number"));
            }

            return criteria.list();
        }
    });

    if (initialise) {
        for (BuildResult result : results) {
            initialise(result);
        }
    }

    return results;
}

From source file:com.zutubi.pulse.master.model.persistence.hibernate.HibernateBuildResultDao.java

License:Apache License

public List<BuildResult> queryBuildsWithMessages(final Project[] projects, final Feature.Level level,
        final int max) {
    return getHibernateTemplate().execute(new HibernateCallback<List<BuildResult>>() {
        public List<BuildResult> doInHibernate(Session session) throws HibernateException {
            Criteria criteria = session.createCriteria(BuildResult.class);
            criteria.add(Restrictions.isNull("user"));
            addProjectsToCriteria(projects, criteria);
            criteria.add(Restrictions.gt(level.toString().toLowerCase() + "FeatureCount", 0));

            if (max >= 0) {
                criteria.setMaxResults(max);
            }//from  www  . java2 s. c o m

            criteria.addOrder(Order.desc("id"));
            return criteria.list();
        }
    });
}