List of usage examples for org.hibernate.criterion Restrictions isNotNull
public static Criterion isNotNull(String propertyName)
From source file:org.openfaces.component.filter.HibernateCriterionBuilder.java
License:LGPL
private static Criterion convertToHibernateCriteria(final ExpressionFilterCriterion expressionFilterCriterion) { final String property = expressionFilterCriterion.getExpressionStr(); final Object parameter = expressionFilterCriterion.getArg1(); FilterCondition condition = expressionFilterCriterion.getCondition(); Criterion result = condition.process(new FilterConditionProcessor<Criterion>() { @Override//from ww w . j a va 2s . co m public Criterion processEmpty() { return Restrictions.isNull(property); } @Override public Criterion processEquals() { if (parameter == null) { return Restrictions.isNull(property); } if (parameter instanceof Date) { TimeZone timeZone = (TimeZone) expressionFilterCriterion.getParameters().get("timeZone"); Date dayStart = ParametersInterpreter.dayStart((Date) parameter, timeZone); Date dayEnd = ParametersInterpreter.dayEnd((Date) parameter, timeZone); return Restrictions.and(Restrictions.ge(property, dayStart), Restrictions.le(property, dayEnd)); } else if (parameter instanceof String) { boolean caseSensitive = expressionFilterCriterion.isCaseSensitive(); if (!caseSensitive) { return Restrictions.like(property, parameter.toString().toLowerCase()).ignoreCase(); } else { return Restrictions.like(property, parameter); } } else { return Restrictions.eq(property, parameter); } } @Override public Criterion processContains() { boolean caseSensitive = expressionFilterCriterion.isCaseSensitive(); if (!caseSensitive) { return Restrictions.like(property, "%" + parameter.toString().toLowerCase() + "%").ignoreCase(); } else { return Restrictions.like(property, "%" + parameter + "%"); } } @Override public Criterion processBegins() { boolean caseSensitive = expressionFilterCriterion.isCaseSensitive(); if (!caseSensitive) { return Restrictions.like(property, parameter.toString().toLowerCase() + "%").ignoreCase(); } else { return Restrictions.like(property, parameter + "%"); } } @Override public Criterion processEnds() { boolean caseSensitive = expressionFilterCriterion.isCaseSensitive(); if (!caseSensitive) { return Restrictions.like(property, "%" + parameter.toString().toLowerCase()).ignoreCase(); } else { return Restrictions.like(property, "%" + parameter); } } @Override public Criterion processLess() { Object correctedParameter = parameter; if (parameter instanceof Date) { TimeZone timeZone = (TimeZone) expressionFilterCriterion.getParameters().get("timeZone"); correctedParameter = ParametersInterpreter.dayStart((Date) parameter, timeZone); } return Restrictions.lt(property, correctedParameter); } @Override public Criterion processGreater() { Object correctedParameter = parameter; if (parameter instanceof Date) { TimeZone timeZone = (TimeZone) expressionFilterCriterion.getParameters().get("timeZone"); correctedParameter = ParametersInterpreter.dayEnd((Date) parameter, timeZone); } return Restrictions.gt(property, correctedParameter); } @Override public Criterion processLessOrEqual() { Object correctedParameter = parameter; if (parameter instanceof Date) { TimeZone timeZone = (TimeZone) expressionFilterCriterion.getParameters().get("timeZone"); correctedParameter = ParametersInterpreter.dayEnd((Date) parameter, timeZone); } return Restrictions.le(property, correctedParameter); } @Override public Criterion processGreaterOrEqual() { Object correctedParameter = parameter; if (parameter instanceof Date) { TimeZone timeZone = (TimeZone) expressionFilterCriterion.getParameters().get("timeZone"); correctedParameter = ParametersInterpreter.dayStart((Date) parameter, timeZone); } return Restrictions.ge(property, correctedParameter); } @Override public Criterion processBetween() { Object parameter2 = expressionFilterCriterion.getArg2(); if (parameter instanceof Date && parameter2 instanceof Date) { TimeZone timeZone = (TimeZone) expressionFilterCriterion.getParameters().get("timeZone"); Date periodStart = ParametersInterpreter.dayStart((Date) parameter, timeZone); Date periodEnd = ParametersInterpreter.dayEnd((Date) parameter2, timeZone); return Restrictions.and(Restrictions.ge(property, periodStart), Restrictions.le(property, periodEnd)); } else { return Restrictions.between(property, parameter, parameter2); } } }); if (parameter != null) { result = Restrictions.and(Restrictions.isNotNull(property), result); } return (expressionFilterCriterion.isInverse()) ? Restrictions.not(result) : result; }
From source file:org.openhealthtools.openatna.audit.persistence.dao.hibernate.HibernateQueryBuilder.java
License:Apache License
private Criterion createConditional(CriteriaNode root, CriteriaNode node, Query.ConditionalStatement value, String name) {//from ww w . j a v a 2 s . c om Criteria c = node.getCriteria(); Query.Conditional con = value.getConditional(); Object val = value.getValue(); Criterion cron = null; switch (con) { case MAX_NUM: idCriteria.setMaxResults((Integer) val); break; case START_OFFSET: idCriteria.setFirstResult((Integer) val); break; case AFTER: cron = Restrictions.ge(name, val); break; case BEFORE: cron = Restrictions.le(name, val); break; case CASE_INSENSITIVE_LIKE: cron = Restrictions.ilike(name, val); break; case EQUALS: cron = Restrictions.eq(name, val); break; case GREATER_THAN: cron = Restrictions.gt(name, val); break; case GREATER_THAN_OR_EQUAL: cron = Restrictions.ge(name, val); break; case LESS_THAN: cron = Restrictions.lt(name, val); break; case LESS_THAN_OR_EQUAL: cron = Restrictions.le(name, val); break; case LIKE: cron = Restrictions.like(name, val); break; case NOT_EQUAL: cron = Restrictions.ne(name, val); break; case OR: processJoint(root, value, false); break; case AND: processJoint(root, value, true); break; case NULLITY: Boolean b = (Boolean) val; cron = b ? Restrictions.isNull(name) : Restrictions.isNotNull(name); break; case ASC: messageCriteria.addOrder(Order.asc((String) val)); break; case DESC: messageCriteria.addOrder(Order.desc((String) val)); break; default: break; } if (cron != null && c != null) { c.add(cron); } return cron; }
From source file:org.openhie.openempi.blocking.basicblockinghp.dao.hibernate.BlockingDaoHibernate.java
License:Open Source License
@SuppressWarnings("rawtypes") private void addCriterion(org.hibernate.Criteria criteriaHibernate, Criterion criterion) { if (criterion.getOperation().equals(Operation.EQ)) { criteriaHibernate.add(Restrictions.eq(criterion.getName(), criterion.getValue())); } else if (criterion.getOperation().equals(Operation.ISNOTNULL)) { criteriaHibernate.add(Restrictions.isNotNull(criterion.getName())); } else if (criterion.getOperation().equals(Operation.ISNULL)) { criteriaHibernate.add(Restrictions.isNull(criterion.getName())); } else if (criterion.getOperation().equals(Operation.LIKE)) { criteriaHibernate.add(Restrictions.like(criterion.getName(), criterion.getValue())); } else if (criterion.getOperation().equals(Operation.NE)) { criteriaHibernate.add(Restrictions.ne(criterion.getName(), criterion.getValue())); } else if (criterion.getOperation().equals(Operation.IN)) { criteriaHibernate.add(Restrictions.in(criterion.getName(), (Collection) criterion.getValue())); }//from w w w. j av a2s. c o m }
From source file:org.openhie.openempi.dao.hibernate.BlockingDaoHibernate.java
License:Open Source License
private void addCriterion(org.hibernate.Criteria criteriaHibernate, Criterion criterion) { if (criterion.getOperation().equals(Operation.EQ)) { criteriaHibernate.add(Restrictions.eq(criterion.getName(), criterion.getValue())); } else if (criterion.getOperation().equals(Operation.ISNOTNULL)) { criteriaHibernate.add(Restrictions.isNotNull(criterion.getName())); } else if (criterion.getOperation().equals(Operation.ISNULL)) { criteriaHibernate.add(Restrictions.isNull(criterion.getName())); } else if (criterion.getOperation().equals(Operation.LIKE)) { criteriaHibernate.add(Restrictions.like(criterion.getName(), criterion.getValue())); } else if (criterion.getOperation().equals(Operation.NE)) { criteriaHibernate.add(Restrictions.ne(criterion.getName(), criterion.getValue())); }/*from ww w . j av a 2s . c om*/ }
From source file:org.openhie.openempi.dao.hibernate.PersonDaoHibernate.java
License:Open Source License
private void addCriterion(org.hibernate.Criteria criteriaHibernate, org.openhie.openempi.model.Criterion criterion) { if (criterion instanceof ExtendedCriterion) { ExtendedCriterion extended = (ExtendedCriterion) criterion; criteriaHibernate.createAlias(extended.getAssociationPath(), extended.getAlias()); }//from w w w.j a v a 2 s . c o m if (criterion.getOperation().equals(Operation.EQ) || criterion.getValue() instanceof java.util.Date) { if (criterion.getValue() instanceof java.util.Date) { criteriaHibernate.add(Restrictions.eq(criterion.getName(), criterion.getValue())); } else { criteriaHibernate.add(Restrictions.eq(criterion.getName(), criterion.getValue()).ignoreCase()); } } else if (criterion.getOperation().equals(Operation.ISNOTNULL)) { criteriaHibernate.add(Restrictions.isNotNull(criterion.getName())); } else if (criterion.getOperation().equals(Operation.ISNULL)) { criteriaHibernate.add(Restrictions.isNull(criterion.getName())); } else if (criterion.getOperation().equals(Operation.LIKE)) { criteriaHibernate.add(Restrictions.like(criterion.getName(), criterion.getValue()).ignoreCase()); } else if (criterion.getOperation().equals(Operation.EQ)) { criteriaHibernate.add(Restrictions.eq(criterion.getName(), criterion.getValue()).ignoreCase()); } else if (criterion.getOperation().equals(Operation.NE)) { criteriaHibernate.add(Restrictions.ne(criterion.getName(), criterion.getValue())); } }
From source file:org.openinfobutton.responder.dao.impl.ResponderRequestParameterDaoImpl.java
License:Apache License
/** * * @return/* w w w . java 2 s. co m*/ */ @Override public List<RequestParameter> getSupportedOpenInfobuttonRequestParametersOrdered() { if (supportedOpenInfobuttonRequestParameters == null) { supportedOpenInfobuttonRequestParameters = getSessionFactory().getCurrentSession() .createCriteria(RequestParameter.class).add(Restrictions.isNotNull("parameterRoot")) .add(Restrictions.isNotNull("parameterName")).add(Restrictions.isNotNull("typeCode")) .addOrder(Order.asc("parameterName")).list(); } return supportedOpenInfobuttonRequestParameters; }
From source file:org.openmrs.api.db.hibernate.HibernateConceptDAO.java
License:Mozilla Public License
/** * @see org.openmrs.api.db.ConceptDAO#getProposedConcepts(java.lang.String) *//* w ww .ja v a 2s .c o m*/ @SuppressWarnings("unchecked") public List<Concept> getProposedConcepts(String text) throws DAOException { Criteria crit = sessionFactory.getCurrentSession().createCriteria(ConceptProposal.class); crit.add(Restrictions.ne("state", OpenmrsConstants.CONCEPT_PROPOSAL_UNMAPPED)); crit.add(Restrictions.eq("originalText", text)); crit.add(Restrictions.isNotNull("mappedConcept")); crit.setProjection(Projections.distinct(Projections.property("mappedConcept"))); return crit.list(); }
From source file:org.openmrs.api.db.hibernate.PatientSearchCriteria.java
License:Mozilla Public License
private Criterion getCriterionForShortName(String name, boolean includeVoided) { Criterion criterion = Restrictions.disjunction() .add(Restrictions.conjunction().add(Restrictions.isNotNull("name.givenName")) .add(Restrictions.eq("name.givenName", name).ignoreCase())) .add(Restrictions.conjunction().add(Restrictions.isNotNull("name.middleName")) .add(Restrictions.eq("name.middleName", name).ignoreCase())) .add(Restrictions.conjunction().add(Restrictions.isNotNull("name.familyName")) .add(Restrictions.eq("name.familyName", name).ignoreCase())) .add(Restrictions.conjunction().add(Restrictions.isNotNull("name.familyName2")) .add(Restrictions.eq("name.familyName2", name).ignoreCase())); if (!includeVoided) { return Restrictions.conjunction().add(Restrictions.eq("name.voided", false)).add(criterion); }/*from w ww .j a v a2s. c o m*/ return criterion; }
From source file:org.openmrs.api.db.hibernate.PatientSearchCriteria.java
License:Mozilla Public License
private Criterion getCriterionForNoExactName(String name, boolean includeVoided) { MatchMode matchMode = getMatchMode(); Criterion criterion = Restrictions.conjunction() .add(Restrictions.disjunction() .add(Restrictions.conjunction().add(Restrictions.isNotNull("name.givenName")) .add(Restrictions.like("name.givenName", name, matchMode))) .add(Restrictions.conjunction().add(Restrictions.isNotNull("name.middleName")) .add(Restrictions.like("name.middleName", name, matchMode))) .add(Restrictions.conjunction().add(Restrictions.isNotNull("name.familyName")) .add(Restrictions.like("name.familyName", name, matchMode))) .add(Restrictions.conjunction().add(Restrictions.isNotNull("name.familyName2")) .add(Restrictions.like("name.familyName2", name, matchMode)))) .add(Restrictions.disjunction().add(Restrictions.isNull("name.givenName")) .add(Restrictions.ne("name.givenName", name))) .add(Restrictions.disjunction().add(Restrictions.isNull("name.middleName")) .add(Restrictions.ne("name.middleName", name))) .add(Restrictions.disjunction().add(Restrictions.isNull("name.familyName")) .add(Restrictions.ne("name.familyName", name))) .add(Restrictions.disjunction().add(Restrictions.isNull("name.familyName2")) .add(Restrictions.ne("name.familyName2", name))); if (!includeVoided) { return Restrictions.conjunction().add(Restrictions.eq("name.voided", false)).add(criterion); }/* w w w. java2 s . c o m*/ return criterion; }
From source file:org.openmrs.module.clinicalsummary.db.hibernate.HibernateIndexDAO.java
License:Open Source License
/** * @see IndexDAO#getIndexes(org.openmrs.Location, org.openmrs.module.clinicalsummary.Summary, java.util.Date, java.util.Date) *///from ww w . j a va 2s.c o m @Override @SuppressWarnings("unchecked") public List<Index> getIndexes(final Location location, final Summary summary, final Date startVisitDate, final Date endVisitDate) throws DAOException { Criteria criteria = sessionFactory.getCurrentSession().createCriteria(Index.class); criteria.add(Restrictions.eq("location", location)); criteria.createAlias("patient", "patient"); criteria.createAlias("patient.identifiers", "identifier"); criteria.add(Restrictions.eq("patient.voided", Boolean.FALSE)); criteria.add(Restrictions.isNotNull("identifier.identifier")); if (summary != null) criteria.add(Restrictions.eq("summary", summary)); if (startVisitDate != null) criteria.add(Restrictions.ge("returnDate", startVisitDate)); if (endVisitDate != null) criteria.add(Restrictions.le("returnDate", endVisitDate)); criteria.addOrder(Order.asc("returnDate")); criteria.addOrder(Order.asc("identifier.identifier")); return criteria.list(); }