org.hibernate.sql.JoinFragment#addJoins ( )源码实例Demo

下面列出了org.hibernate.sql.JoinFragment#addJoins ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: lams   文件: OuterJoinableAssociation.java
public void addManyToManyJoin(JoinFragment outerjoin, QueryableCollection collection) throws MappingException {
	String manyToManyFilter = collection.getManyToManyFilterFragment( rhsAlias, enabledFilters );
	String condition = "".equals( manyToManyFilter )
			? on
			: "".equals( on )
			? manyToManyFilter
			: on + " and " + manyToManyFilter;
	outerjoin.addJoin(
			joinable.getTableName(),
			rhsAlias,
			lhsColumns,
			rhsColumns,
			joinType,
			condition
	);
	outerjoin.addJoins(
			joinable.fromJoinFragment( rhsAlias, false, true ),
			joinable.whereJoinFragment( rhsAlias, false, true )
	);
}
 
源代码2 项目: cacheonix-core   文件: OuterJoinableAssociation.java
public void addManyToManyJoin(JoinFragment outerjoin, QueryableCollection collection) throws MappingException {
	String manyToManyFilter = collection.getManyToManyFilterFragment( rhsAlias, enabledFilters );
	String condition = "".equals( manyToManyFilter )
			? on
			: "".equals( on )
					? manyToManyFilter
					: on + " and " + manyToManyFilter;
	outerjoin.addJoin(
	        joinable.getTableName(),
	        rhsAlias,
	        lhsColumns,
	        rhsColumns,
	        joinType,
	        condition
	);
	outerjoin.addJoins(
		joinable.fromJoinFragment(rhsAlias, false, true),
		joinable.whereJoinFragment(rhsAlias, false, true)
	);
}
 
源代码3 项目: lams   文件: OuterJoinableAssociation.java
public void addJoins(JoinFragment outerjoin) throws MappingException {
	outerjoin.addJoin(
			joinable.getTableName(),
			rhsAlias,
			lhsColumns,
			rhsColumns,
			joinType,
			on
	);
	outerjoin.addJoins(
			joinable.fromJoinFragment( rhsAlias, false, true ),
			joinable.whereJoinFragment( rhsAlias, false, true )
	);
}
 
源代码4 项目: lams   文件: JoinSequence.java
private void addSubclassJoins(
		JoinFragment joinFragment,
		String alias,
		Joinable joinable,
		boolean innerJoin,
		boolean includeSubclassJoins,
		Set<String> treatAsDeclarations) {
	final boolean include = includeSubclassJoins && isIncluded( alias );
	joinFragment.addJoins(
			joinable.fromJoinFragment( alias, innerJoin, include, treatAsDeclarations ),
			joinable.whereJoinFragment( alias, innerJoin, include, treatAsDeclarations )
	);
}
 
源代码5 项目: cacheonix-core   文件: OuterJoinableAssociation.java
public void addJoins(JoinFragment outerjoin) throws MappingException {
	outerjoin.addJoin(
		joinable.getTableName(),
		rhsAlias,
		lhsColumns,
		rhsColumns,
		joinType,
		on
	);
	outerjoin.addJoins(
		joinable.fromJoinFragment(rhsAlias, false, true),
		joinable.whereJoinFragment(rhsAlias, false, true)
	);
}
 
源代码6 项目: lams   文件: LoadQueryJoinAndFetchProcessor.java
private void addJoins(
		Join join,
		JoinFragment joinFragment,
		Joinable joinable,
		String joinConditions) {
	final String rhsTableAlias = aliasResolutionContext.resolveSqlTableAliasFromQuerySpaceUid(
			join.getRightHandSide().getUid()
	);
	if ( StringHelper.isEmpty( rhsTableAlias ) ) {
		throw new IllegalStateException( "Join's RHS table alias cannot be empty" );
	}

	final String lhsTableAlias = aliasResolutionContext.resolveSqlTableAliasFromQuerySpaceUid(
			join.getLeftHandSide().getUid()
	);
	if ( lhsTableAlias == null ) {
		throw new IllegalStateException( "QuerySpace with that UID was not yet registered in the AliasResolutionContext" );
	}

	String otherConditions = join.getAnyAdditionalJoinConditions( rhsTableAlias );
	if ( !StringHelper.isEmpty( otherConditions ) && !StringHelper.isEmpty( joinConditions ) ) {
		otherConditions += " and " + joinConditions;
	}
	else if ( !StringHelper.isEmpty( joinConditions ) ) {
		otherConditions = joinConditions;
	}

	// add join fragments from the collection table -> element entity table ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	final String additionalJoinConditions = resolveAdditionalJoinCondition(
			rhsTableAlias,
			otherConditions,
			joinable,
			getJoinedAssociationTypeOrNull( join )
	);

	String[] joinColumns = join.resolveAliasedLeftHandSideJoinConditionColumns( lhsTableAlias );
	if ( joinColumns.length == 0 ) {
		// When no columns are available, this is a special join that involves multiple subtypes
		AbstractEntityPersister persister = (AbstractEntityPersister) ( (EntityQuerySpace) join.getLeftHandSide() ).getEntityPersister();

		String[][] polyJoinColumns = persister.getPolymorphicJoinColumns(
				lhsTableAlias,
				( (JoinDefinedByMetadata) join ).getJoinedPropertyName()
		);

		joinFragment.addJoin(
				joinable.getTableName(),
				rhsTableAlias,
				polyJoinColumns,
				join.resolveNonAliasedRightHandSideJoinConditionColumns(),
				join.isRightHandSideRequired() ? JoinType.INNER_JOIN : JoinType.LEFT_OUTER_JOIN,
				additionalJoinConditions
		);
	}
	else {
		joinFragment.addJoin(
				joinable.getTableName(),
				rhsTableAlias,
				joinColumns,
				join.resolveNonAliasedRightHandSideJoinConditionColumns(),
				join.isRightHandSideRequired() ? JoinType.INNER_JOIN : JoinType.LEFT_OUTER_JOIN,
				additionalJoinConditions
		);
	}
	joinFragment.addJoins(
			joinable.fromJoinFragment( rhsTableAlias, false, true ),
			joinable.whereJoinFragment( rhsTableAlias, false, true )
	);
}
 
源代码7 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码8 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码9 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码10 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码11 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码12 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码13 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码14 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码15 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码16 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码17 项目: Knowage-Server   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}
 
源代码18 项目: cacheonix-core   文件: JoinSequence.java
private void addExtraJoins(JoinFragment joinFragment, String alias, Joinable joinable, boolean innerJoin) {
	boolean include = isIncluded( alias );
	joinFragment.addJoins( joinable.fromJoinFragment( alias, innerJoin, include ),
			joinable.whereJoinFragment( alias, innerJoin, include ) );
}