io.crnk.jpa.internal.query.backend.JpaQueryBackend Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of crnk-jpa Show documentation
Show all versions of crnk-jpa Show documentation
JSON API framework for Java
package io.crnk.jpa.internal.query.backend;
import io.crnk.core.queryspec.Direction;
import io.crnk.core.queryspec.FilterOperator;
import io.crnk.meta.model.MetaAttribute;
import io.crnk.meta.model.MetaAttributePath;
import javax.persistence.criteria.JoinType;
import java.util.List;
public interface JpaQueryBackend {
void distinct();
F getRoot();
void setOrder(List orderSpecListToOrderArray);
List getOrderList();
O newSort(E expression, Direction dir);
void addPredicate(P predicate);
E getAttribute(MetaAttributePath attrPath);
void addParentPredicate(MetaAttribute primaryKeyAttr);
boolean hasManyRootsFetchesOrJoins();
void addSelection(E expression, String name);
E getExpression(O order);
boolean containsRelation(E expression);
P buildPredicate(FilterOperator operator, MetaAttributePath path, Object value);
P and(List predicates);
P not(P predicate);
P or(List
predicates);
Class> getJavaElementType(E currentCriteriaPath);
E getAttribute(E currentCriteriaPath, MetaAttribute pathElement);
E joinSubType(E currentCriteriaPath, Class> entityType);
E joinMapValue(E currentCriteriaPath, MetaAttribute pathElement, Object key);
F doJoin(MetaAttribute targetAttr, JoinType joinType, F parent);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy