javax.persistence.criteria.Join#isNotNull ( )源码实例Demo

下面列出了javax.persistence.criteria.Join#isNotNull ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: onedev   文件: OwnedByCriteria.java
@Override
public Predicate getPredicate(Root<Project> root, CriteriaBuilder builder) {
	Join<?, ?> userAuthorizationJoin = root.join(Project.PROP_USER_AUTHORIZATIONS, JoinType.LEFT);

	userAuthorizationJoin.on(builder.and(
			builder.equal(userAuthorizationJoin.get(UserAuthorization.PROP_ROLE), Role.OWNER_ID), 
			builder.equal(userAuthorizationJoin.get(UserAuthorization.PROP_USER), user)));
	
	if (user.getGroups().isEmpty()) {
		return userAuthorizationJoin.isNotNull();
	} else {
		Join<?, ?> groupAuthorizationJoin = root.join(Project.PROP_GROUP_AUTHORIZATIONS, JoinType.LEFT);
		groupAuthorizationJoin.on(builder.and(
				builder.equal(groupAuthorizationJoin.get(GroupAuthorization.PROP_ROLE), Role.OWNER_ID), 
				groupAuthorizationJoin.get(GroupAuthorization.PROP_GROUP).in(user.getGroups())));
		return builder.or(userAuthorizationJoin.isNotNull(), groupAuthorizationJoin.isNotNull());
	}
}
 
源代码2 项目: onedev   文件: FieldCriteria.java
@Override
public final Predicate getPredicate(Root<Issue> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(Issue.PROP_FIELDS, JoinType.LEFT);
	Predicate valuePredicate = getValuePredicate(join, builder);
	if (valuePredicate != null) {
		join.on(builder.and(
				builder.equal(join.get(IssueField.PROP_NAME), getFieldName()), 
				getValuePredicate(join, builder)));
		return join.isNotNull();
	} else {
		join.on(builder.and(
				builder.equal(join.get(IssueField.PROP_NAME), getFieldName()), 
				builder.or(builder.isNull(join.get(IssueField.PROP_VALUE)))));
		Join<?, ?> join2 = root.join(Issue.PROP_FIELDS, JoinType.LEFT);
		join2.on(builder.equal(join2.get(IssueField.PROP_NAME), getFieldName()));
		return builder.or(join.isNotNull(), join2.isNull());
	}
}
 
源代码3 项目: onedev   文件: ReplyCriteria.java
@Override
public Predicate getPredicate(Root<CodeComment> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(CodeComment.PROP_REPLIES, JoinType.LEFT);
	Path<String> attribute = join.get(CodeCommentReply.PROP_CONTENT);
	join.on(builder.like(builder.lower(attribute), "%" + value.toLowerCase().replace('*', '%') + "%"));
	return join.isNotNull();
}
 
源代码4 项目: onedev   文件: RequestedForChangesByCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(PullRequest.PROP_REVIEWS, JoinType.LEFT);
	Path<?> userPath = EntityQuery.getPath(join, PullRequestReview.PROP_USER);
	Path<?> approvedPath = EntityQuery.getPath(join, PullRequestReview.PROP_RESULT + "." + ReviewResult.PROP_APPROVED);
	join.on(builder.and(
			builder.equal(userPath, user), 
			builder.equal(approvedPath, false)));
	return join.isNotNull();
}
 
源代码5 项目: onedev   文件: HasPendingReviewsCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(PullRequest.PROP_REVIEWS, JoinType.LEFT);
	Path<?> userPath = EntityQuery.getPath(join, PullRequestReview.PROP_USER);
	Path<?> approvedPath = EntityQuery.getPath(join, PullRequestReview.PROP_RESULT + "." + ReviewResult.PROP_APPROVED);
	join.on(builder.and(
			builder.isNotNull(userPath), 
			builder.isNull(approvedPath)));
	return join.isNotNull();
}
 
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(PullRequest.PROP_REVIEWS, JoinType.LEFT);
	Path<?> userPath = EntityQuery.getPath(join, PullRequestReview.PROP_USER);
	Path<?> approvedPath = EntityQuery.getPath(join, PullRequestReview.PROP_RESULT + "." + ReviewResult.PROP_APPROVED);
	join.on(builder.and(
			builder.isNotNull(userPath), 
			builder.equal(approvedPath, false)));
	return join.isNotNull();
}
 
源代码7 项目: onedev   文件: ToBeReviewedByCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(PullRequest.PROP_REVIEWS, JoinType.LEFT);
	Path<?> userPath = EntityQuery.getPath(join, PullRequestReview.PROP_USER);
	Path<?> approvedPath = EntityQuery.getPath(join, PullRequestReview.PROP_RESULT + "." + ReviewResult.PROP_APPROVED);
	join.on(builder.and(
			builder.equal(userPath, user), 
			builder.isNull(approvedPath)));
	return join.isNotNull();
}
 
源代码8 项目: onedev   文件: AssignedToMeCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	if (User.get() != null) {
		Join<?, ?> join = root.join(PullRequest.PROP_ASSIGNMENTS, JoinType.LEFT);
		Path<?> userPath = EntityQuery.getPath(join, PullRequestAssignment.PROP_USER);
		join.on(builder.equal(userPath, User.get())); 
		return join.isNotNull();
	} else {
		throw new OneException("Please login to perform this query");
	}
}
 
源代码9 项目: onedev   文件: ApprovedByCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(PullRequest.PROP_REVIEWS, JoinType.LEFT);
	Path<?> userPath = EntityQuery.getPath(join, PullRequestReview.PROP_USER);
	Path<?> approvedPath = EntityQuery.getPath(join, PullRequestReview.PROP_RESULT + "." + ReviewResult.PROP_APPROVED);
	join.on(builder.and(
			builder.equal(userPath, user), 
			builder.equal(approvedPath, true)));
	return join.isNotNull();
}
 
源代码10 项目: onedev   文件: AssignedToCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(PullRequest.PROP_ASSIGNMENTS, JoinType.LEFT);
	Path<?> userPath = EntityQuery.getPath(join, PullRequestAssignment.PROP_USER);
	join.on(builder.equal(userPath, user));
	return join.isNotNull();
}
 
源代码11 项目: onedev   文件: ToBeVerifiedByBuildsCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	Join<?, ?> join = root
			.join(PullRequest.PROP_VERIFICATIONS, JoinType.LEFT)
			.join(PullRequestVerification.PROP_BUILD, JoinType.INNER);
	Path<?> status = join.get(Build.STATUS);
	join.on(builder.or(
			builder.equal(status, Build.Status.RUNNING), 
			builder.equal(status, Build.Status.PENDING), 
			builder.equal(status, Build.Status.WAITING)));
	
	return join.isNotNull();
}
 
源代码12 项目: onedev   文件: ParamCriteria.java
@Override
public Predicate getPredicate(Root<Build> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(Build.PROP_PARAMS, JoinType.LEFT);
	join.on(builder.and(
			builder.equal(join.get(BuildParam.PROP_NAME), name)),
			builder.equal(join.get(BuildParam.PROP_VALUE), value));
	return join.isNotNull();
}
 
源代码13 项目: onedev   文件: CommentCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(PullRequest.PROP_COMMENTS, JoinType.LEFT);
	Path<String> attribute = join.get(PullRequestComment.PROP_CONTENT);
	join.on(builder.like(builder.lower(attribute), "%" + value.toLowerCase() + "%"));
	return join.isNotNull();
}
 
源代码14 项目: onedev   文件: HasFailedBuildsCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	Join<?, ?> join = root
			.join(PullRequest.PROP_VERIFICATIONS, JoinType.LEFT)
			.join(PullRequestVerification.PROP_BUILD, JoinType.INNER);
	Path<?> status = join.get(Build.STATUS);
	
	join.on(builder.or(
			builder.equal(status, Build.Status.FAILED), 
			builder.equal(status, Build.Status.CANCELLED), 
			builder.equal(status, Build.Status.TIMED_OUT)));
	return join.isNotNull();
}
 
源代码15 项目: onedev   文件: ToBeReviewedByMeCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	if (User.get() != null) {
		Join<?, ?> join = root.join(PullRequest.PROP_REVIEWS, JoinType.LEFT);
		Path<?> userPath = EntityQuery.getPath(join, PullRequestReview.PROP_USER);
		Path<?> approvedPath = EntityQuery.getPath(join, PullRequestReview.PROP_RESULT + "." + ReviewResult.PROP_APPROVED);
		join.on(builder.and(
				builder.equal(userPath, User.get()), 
				builder.isNull(approvedPath)));
		return join.isNotNull();
	} else {
		throw new OneException("Please login to perform this query");
	}
}
 
源代码16 项目: onedev   文件: RequestedForChangesByMeCriteria.java
@Override
public Predicate getPredicate(Root<PullRequest> root, CriteriaBuilder builder) {
	if (User.get() != null) {
		Join<?, ?> join = root.join(PullRequest.PROP_REVIEWS, JoinType.LEFT);
		Path<?> userPath = EntityQuery.getPath(join, PullRequestReview.PROP_USER);
		Path<?> approvedPath = EntityQuery.getPath(join, PullRequestReview.PROP_RESULT + "." + ReviewResult.PROP_APPROVED);
		join.on(builder.and(
				builder.equal(userPath, User.get()), 
				builder.equal(approvedPath, false)));
		return join.isNotNull();
	} else {
		throw new OneException("Please login to perform this query");
	}
}
 
源代码17 项目: onedev   文件: CommentCriteria.java
@Override
public Predicate getPredicate(Root<Issue> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(Issue.PROP_COMMENTS, JoinType.LEFT);
	Path<String> attribute = join.get(IssueComment.PATH_CONTENT);
	join.on(builder.like(builder.lower(attribute), "%" + value.toLowerCase() + "%"));
	return join.isNotNull();
}
 
源代码18 项目: onedev   文件: DependenciesOfCriteria.java
@Override
public Predicate getPredicate(Root<Build> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(Build.PROP_DEPENDENTS, JoinType.LEFT);
	join.on(builder.equal(join.get(BuildDependence.PROP_DEPENDENT), build));
	return join.isNotNull();
}
 
源代码19 项目: onedev   文件: RequiredByPullRequestsCriteria.java
@Override
public Predicate getPredicate(Root<Build> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(Build.PROP_VERIFICATIONS, JoinType.LEFT);
	join.on(builder.equal(join.get(PullRequestVerification.PROP_REQUIRED), true)); 
	return join.isNotNull();
}
 
源代码20 项目: onedev   文件: DependsOnCriteria.java
@Override
public Predicate getPredicate(Root<Build> root, CriteriaBuilder builder) {
	Join<?, ?> join = root.join(Build.PROP_DEPENDENCIES, JoinType.LEFT);
	join.on(builder.equal(join.get(BuildDependence.PROP_DEPENDENCY), build));
	return join.isNotNull();
}