All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.querydsl.core.Join Maven / Gradle / Ivy
package com.querydsl.core;
import java.util.Collection;
import com.querydsl.core.types.CollectionExpression;
import com.querydsl.core.types.EntityPath;
import com.querydsl.core.types.Expression;
import com.querydsl.core.types.MapExpression;
import com.querydsl.core.types.Path;
import com.querydsl.core.types.Predicate;
public class Join {
private final JoinType type;
private final Expression target;
private Path alias;
private Predicate[] predicates;
private boolean fetchJoin;
private Join(JoinType type, Expression target) {
this(type, target, null);
}
private Join(JoinType type, Expression target, Path alias) {
this.type = type;
this.target = target;
this.alias = alias;
}
public static Join innerJoin(EntityPath entityPath) {
return new Join(JoinType.INNERJOIN, entityPath);
}
public static Join innerJoin(EntityPath entityPath, Path alias) {
return new Join(JoinType.INNERJOIN, entityPath, alias);
}
public static Join innerJoin(CollectionExpression, ?> collectionExpression) {
return new Join(JoinType.INNERJOIN, collectionExpression);
}
public static Join innerJoin(CollectionExpression, ?> collectionExpression, Path alias) {
return new Join(JoinType.INNERJOIN, collectionExpression, alias);
}
public static Join innerJoin(MapExpression mapExpression) {
return new Join(JoinType.INNERJOIN, mapExpression);
}
public static Join innerJoin(MapExpression mapExpression, Path alias) {
return new Join(JoinType.INNERJOIN, mapExpression, alias);
}
public static Join leftJoin(EntityPath entityPath) {
return new Join(JoinType.LEFTJOIN, entityPath);
}
public static Join leftJoin(EntityPath entityPath, Path alias) {
return new Join(JoinType.LEFTJOIN, entityPath, alias);
}
public static Join leftJoin(CollectionExpression, ?> collectionExpression) {
return new Join(JoinType.LEFTJOIN, collectionExpression);
}
public static Join leftJoin(CollectionExpression, ?> collectionExpression, Path alias) {
return new Join(JoinType.LEFTJOIN, collectionExpression, alias);
}
public static Join leftJoin(MapExpression mapExpression) {
return new Join(JoinType.LEFTJOIN, mapExpression);
}
public static Join leftJoin(MapExpression mapExpression, Path alias) {
return new Join(JoinType.LEFTJOIN, mapExpression, alias);
}
public static Join rightJoin(EntityPath entityPath) {
return new Join(JoinType.RIGHTJOIN, entityPath);
}
public static Join rightJoin(EntityPath entityPath, Path alias) {
return new Join(JoinType.RIGHTJOIN, entityPath, alias);
}
public static Join rightJoin(CollectionExpression, ?> collectionExpression) {
return new Join(JoinType.RIGHTJOIN, collectionExpression);
}
public static Join rightJoin(CollectionExpression, ?> collectionExpression, Path alias) {
return new Join(JoinType.RIGHTJOIN, collectionExpression, alias);
}
public static Join rightJoin(MapExpression mapExpression) {
return new Join(JoinType.RIGHTJOIN, mapExpression);
}
public static Join rightJoin(MapExpression mapExpression, Path alias) {
return new Join(JoinType.RIGHTJOIN, mapExpression, alias);
}
public Join on(Predicate... conditions) {
this.predicates = conditions;
return this;
}
public Join fetchJoin() {
this.fetchJoin = true;
return this;
}
public JoinType getJoinType() {
return type;
}
public boolean isFetchJoin() {
return fetchJoin;
}
public Predicate[] getPredicates() {
return predicates;
}
public Path getAlias() {
return alias;
}
public Expression getTarget() {
return target;
}
}