boolean renderSubclassJoins, String withClauseFragment) throws MappingException { final QueryJoinFragment joinFragment = new QueryJoinFragment( factory.getDialect(), useThetaStyle ); Iterator<Join> iter; Join first; Joinable last; if ( rootJoinable != null ) { joinFragment.addCrossJoin( rootJoinable.getTableName(), rootAlias ); final String filterCondition = rootJoinable.filterFragment( rootAlias, enabledFilters, treatAsDeclarations ); joinFragment.setHasFilterCondition( joinFragment.addCondition( filterCondition ) ); addSubclassJoins( joinFragment, rootAlias, rootJoinable, true, includeAllSubclassJoins, treatAsDeclarations ); joinFragment.addFromFragmentString( joinString ); joinFragment.addFromFragmentString( " (" ); joinFragment.addFromFragmentString( first.joinable.getTableName() ); joinFragment.addFromFragmentString( " " ); joinFragment.addFromFragmentString( first.getAlias() ); joinFragment.addJoin( join.getJoinable().getTableName(), join.getAlias(), joinFragment.addFromFragmentString( ")" ); joinFragment.addFromFragmentString( " on " ); final String[] rhsColumns = JoinHelper.getRHSColumnNames( first.getAssociationType(), factory ); if ( lhsColumns.length > 1 ) { joinFragment.addFromFragmentString( "(" );
private void addJoin(String tableName, String alias, String concreteAlias, String[] fkColumns, String[] pkColumns, JoinType joinType, String on) { if ( !useThetaStyleInnerJoins || joinType != JoinType.INNER_JOIN ) { JoinFragment jf = dialect.createOuterJoinFragment(); jf.addJoin( tableName, alias, fkColumns, pkColumns, joinType, on ); addFragment( jf ); } else { addCrossJoin( tableName, alias ); addCondition( concreteAlias, fkColumns, pkColumns ); addCondition( on ); } }
public void addJoin(String tableName, String alias, String[][] fkColumns, String[] pkColumns, JoinType joinType) { addJoin( tableName, alias, alias, fkColumns, pkColumns, joinType, null ); }
public QuerySelect(Dialect dialect) { this.dialect = dialect; joins = new QueryJoinFragment( dialect, false ); }
private void addJoin(String tableName, String alias, String concreteAlias, String[][] fkColumns, String[] pkColumns, JoinType joinType, String on) { if ( !useThetaStyleInnerJoins || joinType != JoinType.INNER_JOIN ) { JoinFragment jf = dialect.createOuterJoinFragment(); jf.addJoin( tableName, alias, fkColumns, pkColumns, joinType, on ); addFragment( jf ); } else { addCrossJoin( tableName, alias ); addCondition( concreteAlias, fkColumns, pkColumns ); addCondition( on ); } }
public void addJoin(String tableName, String alias, String[] fkColumns, String[] pkColumns, JoinType joinType, String on) { addJoin( tableName, alias, alias, fkColumns, pkColumns, joinType, on ); }
public JoinFragment copy() { QueryJoinFragment copy = new QueryJoinFragment( dialect, useThetaStyleInnerJoins ); copy.afterFrom = new StringBuilder( afterFrom.toString() ); copy.afterWhere = new StringBuilder( afterWhere.toString() ); return copy; }
public JoinFragment toJoinFragment(Map enabledFilters, boolean includeExtraJoins) throws MappingException { QueryJoinFragment joinFragment = new QueryJoinFragment( factory.getDialect(), useThetaStyle ); if ( rootJoinable != null ) { joinFragment.addCrossJoin( rootJoinable.getTableName(), rootAlias ); String filterCondition = rootJoinable.filterFragment( rootAlias, enabledFilters ); joinFragment.setHasFilterCondition( joinFragment.addCondition( filterCondition ) ); if (includeExtraJoins) { //TODO: not quite sure about the full implications of this! addExtraJoins( joinFragment, rootAlias, rootJoinable, true ); condition = on; joinFragment.addJoin( join.getJoinable().getTableName(), join.getAlias(), joinFragment.addFragment( next.toJoinFragment( enabledFilters, includeExtraJoins ) ); joinFragment.addCondition( conditions.toString() ); if ( isFromPart ) joinFragment.clearWherePart(); return joinFragment;
private void addJoin(String tableName, String alias, String concreteAlias, String[] fkColumns, String[] pkColumns, int joinType, String on) { if ( !useThetaStyleInnerJoins || joinType != INNER_JOIN ) { JoinFragment jf = dialect.createOuterJoinFragment(); jf.addJoin( tableName, alias, fkColumns, pkColumns, joinType, on ); addFragment( jf ); } else { addCrossJoin( tableName, alias ); addCondition( concreteAlias, fkColumns, pkColumns ); addCondition( on ); } }
public void addJoin(String tableName, String alias, String[][] fkColumns, String[] pkColumns, JoinType joinType, String on) { addJoin( tableName, alias, alias, fkColumns, pkColumns, joinType, on ); }
public QuerySelect(Dialect dialect) { this.dialect = dialect; joins = new QueryJoinFragment(dialect, false); }
String withClauseFragment, String withClauseJoinAlias) throws MappingException { QueryJoinFragment joinFragment = new QueryJoinFragment( factory.getDialect(), useThetaStyle ); if ( rootJoinable != null ) { joinFragment.addCrossJoin( rootJoinable.getTableName(), rootAlias ); String filterCondition = rootJoinable.filterFragment( rootAlias, enabledFilters ); joinFragment.setHasFilterCondition( joinFragment.addCondition( filterCondition ) ); if (includeExtraJoins) { //TODO: not quite sure about the full implications of this! addExtraJoins( joinFragment, rootAlias, rootJoinable, true ); joinFragment.addJoin( join.getJoinable().getTableName(), join.getAlias(), joinFragment.addFragment( next.toJoinFragment( enabledFilters, includeExtraJoins ) ); joinFragment.addCondition( conditions.toString() ); if ( isFromPart ) joinFragment.clearWherePart(); return joinFragment;
private void addJoin(String tableName, String alias, String concreteAlias, String[] fkColumns, String[] pkColumns, int joinType, String on) { if ( !useThetaStyleInnerJoins || joinType != INNER_JOIN ) { JoinFragment jf = dialect.createOuterJoinFragment(); jf.addJoin( tableName, alias, fkColumns, pkColumns, joinType, on ); addFragment( jf ); } else { addCrossJoin( tableName, alias ); addCondition( concreteAlias, fkColumns, pkColumns ); addCondition( on ); } }
public void addJoin(String tableName, String alias, String[] fkColumns, String[] pkColumns, JoinType joinType) { addJoin( tableName, alias, alias, fkColumns, pkColumns, joinType, null ); }
public QuerySelect(Dialect dialect) { this.dialect = dialect; joins = new QueryJoinFragment(dialect, false); }
String withClauseFragment, String withClauseJoinAlias) throws MappingException { QueryJoinFragment joinFragment = new QueryJoinFragment( factory.getDialect(), useThetaStyle ); if ( rootJoinable != null ) { joinFragment.addCrossJoin( rootJoinable.getTableName(), rootAlias ); String filterCondition = rootJoinable.filterFragment( rootAlias, enabledFilters ); joinFragment.setHasFilterCondition( joinFragment.addCondition( filterCondition ) ); if (includeExtraJoins) { //TODO: not quite sure about the full implications of this! addExtraJoins( joinFragment, rootAlias, rootJoinable, true ); joinFragment.addJoin( join.getJoinable().getTableName(), join.getAlias(), joinFragment.addFragment( next.toJoinFragment( enabledFilters, includeExtraJoins ) ); joinFragment.addCondition( conditions.toString() ); if ( isFromPart ) joinFragment.clearWherePart(); return joinFragment;
private void addJoin(String tableName, String alias, String concreteAlias, String[][] fkColumns, String[] pkColumns, JoinType joinType, String on) { if ( !useThetaStyleInnerJoins || joinType != JoinType.INNER_JOIN ) { JoinFragment jf = dialect.createOuterJoinFragment(); jf.addJoin( tableName, alias, fkColumns, pkColumns, joinType, on ); addFragment( jf ); } else { addCrossJoin( tableName, alias ); addCondition( concreteAlias, fkColumns, pkColumns ); addCondition( on ); } }
public void addJoin(String tableName, String alias, String[] fkColumns, String[] pkColumns, int joinType) { addJoin( tableName, alias, alias, fkColumns, pkColumns, joinType, null ); }
public QuerySelect(Dialect dialect) { this.dialect = dialect; joins = new QueryJoinFragment( dialect, false ); }
String withClauseFragment, String withClauseJoinAlias) throws MappingException { QueryJoinFragment joinFragment = new QueryJoinFragment( factory.getDialect(), useThetaStyle ); if ( rootJoinable != null ) { joinFragment.addCrossJoin( rootJoinable.getTableName(), rootAlias ); String filterCondition = rootJoinable.filterFragment( rootAlias, enabledFilters ); joinFragment.setHasFilterCondition( joinFragment.addCondition( filterCondition ) ); if (includeExtraJoins) { //TODO: not quite sure about the full implications of this! addExtraJoins( joinFragment, rootAlias, rootJoinable, true ); joinFragment.addJoin( join.getJoinable().getTableName(), join.getAlias(), joinFragment.addFragment( next.toJoinFragment( enabledFilters, includeExtraJoins ) ); joinFragment.addCondition( conditions.toString() ); if ( isFromPart ) joinFragment.clearWherePart(); return joinFragment;