List of usage examples for org.hibernate.criterion Restrictions disjunction
public static Disjunction disjunction()
From source file:com.webbfontaine.valuewebb.action.pricedb.pdss.PdssCriteriaContainer.java
License:Open Source License
@Override public Criteria transformUserCriteria(Session session) throws Exception { if (fakeToRealPropertyMap == null || entityClass == null) { throw new RuntimeException("Target bean/properties were not initialized"); }//from w w w .j a v a2 s . c o m Criteria criteria = session.createCriteria(entityClass) .add(Example.create(entityClass.newInstance()).excludeZeroes()); List<String> aliases = new ArrayList<>(); Junction junction = getMatchAll() ? Restrictions.conjunction() : Restrictions.disjunction(); List<UserCriterion> selectedUserCriteria = getSelectedUserCriteria(); for (UserCriterion fakeCriterion : selectedUserCriteria) { if (beanHasCriterionProperty(fakeCriterion.getFullKey())) { UserCriterion realCriterion = prepareUCForBean(fakeCriterion); String alias = extractAlias(realCriterion.getFullKey()); if (alias != null) { if (!aliases.contains(alias)) { aliases.add(alias); criteria.createCriteria(alias, alias); } } Criterion transformedCriterion; if ("ageOfPrice".equals(fakeCriterion.getFullKey())) { transformedCriterion = transformAgeOfPriceToPriceDate(fakeCriterion, realCriterion); } else { transformedCriterion = realCriterion.transform(); } criteria.add(junction.add(transformedCriterion)); } } return criteria; }
From source file:com.webbfontaine.valuewebb.action.pricedb.prd.PRDCriteriaContainer.java
License:Open Source License
@Override public Criteria transformUserCriteria(Session session) throws Exception { Criteria criteria = session.createCriteria(Pd.class).add(Example.create(new Pd()).excludeZeroes()); criteria.createCriteria("ttGen", "ttGen"); criteria.createCriteria("ttInv", "ttInv"); Junction junction = getMatchAll() ? Restrictions.conjunction() : Restrictions.disjunction(); List<UserCriterion> selectedUserCriteria = getSelectedUserCriteria(); for (UserCriterion userCriterion : selectedUserCriteria) { Criterion transformedCriterion;/* w w w . j a va 2 s . com*/ if ("ageOfPrice".equals(userCriterion.getFullKey())) { transformedCriterion = MPCriteriaContainer.transformAgeOfPriceToPriceDate(userCriterion, getDefinedCriterion("ttInv.invDat")); } else { transformedCriterion = userCriterion.transform(); } if (transformedCriterion != null) { criteria.add(junction.add(transformedCriterion)); } } return criteria; }
From source file:com.wisemapping.dao.MindmapManagerImpl.java
License:Open Source License
public List<MindMap> search(MindMapCriteria criteria, int maxResult) { final Criteria hibernateCriteria = getSession().createCriteria(MindMap.class); //always search public maps hibernateCriteria.add(Restrictions.like("public", Boolean.TRUE)); if (criteria != null) { final Junction junction; if (criteria.isOrCriteria()) { junction = Restrictions.disjunction(); } else {/* w w w. j a v a 2 s . c o m*/ junction = Restrictions.conjunction(); } if (criteria.getTitle() != null && criteria.getTitle().length() > 0) { final SimpleExpression titleRestriction = Restrictions.like("title", "%" + criteria.getTitle() + "%"); junction.add(titleRestriction); } if (criteria.getDescription() != null && criteria.getDescription().length() > 0) { final SimpleExpression descriptionRestriction = Restrictions.like("description", "%" + criteria.getDescription() + "%"); junction.add(descriptionRestriction); } if (criteria.getTags().size() > 0) { for (String tag : criteria.getTags()) { final SimpleExpression tagRestriction = Restrictions.like("tags", "%" + tag + "%"); junction.add(tagRestriction); } } hibernateCriteria.add(junction); } // if (maxResult>0) // { // hibernateCriteria.setMaxResults(maxResult); // } return hibernateCriteria.list(); }
From source file:com.xbwl.common.orm.hibernate.HibernateDao.java
License:Apache License
/** * Criterion,./*from w w w . j av a 2 s . co m*/ */ protected Criterion[] buildPropertyFilterCriterions(final List<PropertyFilter> filters) { List<Criterion> criterionList = new ArrayList<Criterion>(); for (PropertyFilter filter : filters) { if (!filter.isMultiProperty()) { //. Criterion criterion = buildPropertyFilterCriterion(filter.getPropertyName(), filter.getPropertyValue(), filter.getMatchType()); criterionList.add(criterion); } else {//,or. Disjunction disjunction = Restrictions.disjunction(); for (String param : filter.getPropertyNames()) { Criterion criterion = buildPropertyFilterCriterion(param, filter.getPropertyValue(), filter.getMatchType()); disjunction.add(criterion); } criterionList.add(disjunction); } } return criterionList.toArray(new Criterion[criterionList.size()]); }
From source file:com.xin.orm.hibernate.HibernateDao.java
License:Apache License
/** * orCriterion,./* www. ja va 2s . co m*/ * @param orfilters * @return */ protected Criterion[] buildOrCriterionByPropertyFilter(List<PropertyFilter> orfilters) { List<Criterion> criterionList = new ArrayList<Criterion>(); Disjunction disjunction = Restrictions.disjunction(); for (PropertyFilter filter : orfilters) { if (!filter.hasMultiProperties()) { // ??. Criterion criterion = buildCriterion(filter.getPropertyName(), filter.getMatchValue(), filter.getMatchType()); disjunction.add(criterion); } else {// ??,or?. for (String param : filter.getPropertyNames()) { Criterion criterion = buildCriterion(param, filter.getMatchValue(), filter.getMatchType()); disjunction.add(criterion); } } criterionList.add(disjunction); } return criterionList.toArray(new Criterion[criterionList.size()]); }
From source file:Controller.CashierController.java
/** * Zwraca list uytkownikw, ktrych login, imi lub nazwisko zawiera podany cig znakw * @param text tekst wykorzystywany jako wzorzec do wyszukiwania w bazie * @return lista uytkownikw/*from w w w. j a v a 2 s .co m*/ */ public List GetUsersList(String text) { List queryResult = s.createCriteria(Users.class) .add(Restrictions.disjunction().add(Restrictions.like("login", text, MatchMode.ANYWHERE)) .add(Restrictions.like("name", text, MatchMode.ANYWHERE)) .add(Restrictions.like("surname", text, MatchMode.ANYWHERE))) .list(); return queryResult; }
From source file:Controller.TerminalController.java
public List GetTerminalList(String text) { int possibleID = 0; try {/* w w w. j a v a 2 s .co m*/ possibleID = Integer.parseInt(text); } catch (Exception e) { possibleID = -1; } Criteria c = s.createCriteria(Terminal.class); Junction junction = Restrictions.disjunction().add(Restrictions.eq("terminalid", possibleID)); List possibleAttractions = GetAttractionList(text); for (Object result : possibleAttractions) { Attraction attraction = (Attraction) result; junction.add(Restrictions.eq("attraction", attraction)); } List queryResult = c.add(junction).list(); return queryResult; }
From source file:db.Database.java
public ArrayList<CashFlow> getCashFlow(Date begin, Date end, Account acc) { session = sessionFactory.openSession(); ArrayList<CashFlow> cashFlow = new ArrayList<>(); List transfers = session.createCriteria(Transfer.class) .add(Restrictions.disjunction().add(Restrictions.eq("from", acc)).add(Restrictions.eq("to", acc))) .add(Restrictions.between("date", begin, end)).list(); List payments = session.createCriteria(Payment.class).add(Restrictions.eq("account", acc)) .add(Restrictions.between("date", begin, end)).list(); int lastid = 0; for (int i = payments.size() - 1; i >= 0; i--) { Payment p = (Payment) payments.get(i); if (p.getId() != lastid) { lastid = p.getId();//from ww w . java2 s. c o m } else { payments.remove(i); } } cashFlow.addAll(transfers); cashFlow.addAll(payments); session.close(); return cashFlow; }
From source file:db.Database.java
public ArrayList<CashFlow> getUncheckedCashFlow(Account acc) { session = sessionFactory.openSession(); ArrayList<CashFlow> cashFlow = new ArrayList<>(); List transfers = session.createCriteria(Transfer.class) .add(Restrictions.disjunction().add(Restrictions.eq("from", acc)).add(Restrictions.eq("to", acc))) .add(Restrictions.eq("checked", false)).list(); List payments = session.createCriteria(Payment.class).add(Restrictions.eq("account", acc)) .add(Restrictions.eq("checked", false)).list(); int lastid = 0; for (int i = payments.size() - 1; i >= 0; i--) { Payment p = (Payment) payments.get(i); if (p.getId() != lastid) { lastid = p.getId();/* w w w .ja v a2s . c om*/ } else { payments.remove(i); } } cashFlow.addAll(transfers); cashFlow.addAll(payments); session.close(); return cashFlow; }
From source file:de.cosmocode.hibernate.CustomRestrictions.java
License:Apache License
/** * Group expressions together in a single disjunction (A or B or C...). * //from www .j a va 2s .c o m * @param first the first {@link Criterion} * @param second the second {@link Criterion} * @param rest the rest * @return a {@link Criterion} containing all parameters combined in disjunct style */ public static Criterion disjunction(Criterion first, Criterion second, Criterion... rest) { final Disjunction disjunction = Restrictions.disjunction(); disjunction.add(first).add(second); for (Criterion criterion : rest) { disjunction.add(criterion); } return disjunction; }