/** * Adds or operator. */ default CriteriaWhere<T> or() { return append(" or "); }
/** * Adds a like operator with the parameter <code>%string</code>. */ default CriteriaWhere<T> ends_with(String string) { return like(null == string ? "%" : "%" + string); }
@Override public CriteriaWhere<T> id(Object id) { EntityMapping em = q.getEntityMapping(); if(em.getKeyFieldNames().length == 1) { return name(em.getKeyFieldNames()[0]).eq(id); } if(em.getKeyFieldNames().length > 0) { Params params = c.getParameterStrategy().createIdParameters(c, em, id); for(int i=0;i<em.getKeyFieldNames().length;i++) { if(i > 0) { and(); } String name = em.getKeyFieldNames()[i]; name(em.getKeyFieldNames()[i]).eq(params.get(name)); } return this; } throw new IllegalStateException("No id column(s) in entity '" + em.getEntityName() + "'"); }
/** * Adds a like operator with the parameter <code>%string%</code>. */ default CriteriaWhere<T> contains(String string) { return like((null == string ? "%" : "%" + string + "%")); }
/** * Adds and operator. */ default CriteriaWhere<T> and() { return append(" and "); }
/** * Adds a like operator with the parameter <code>string%</code>. */ default CriteriaWhere<T> starts_with(String string) { return like(null == string ? "%" : string + "%"); }