private void initText() { String[] cols = getColumns(); String text = String.join( ", ", cols ); boolean countDistinct = getWalker().isInCountDistinct() && getWalker().getSessionFactoryHelper().getFactory().getDialect().requiresParensForTupleDistinctCounts(); if ( cols.length > 1 && ( getWalker().isComparativeExpressionClause() || countDistinct ) ) { text = "(" + text + ")"; } setText( text ); }
private boolean canReuse(String classAlias, FromElement fromElement) { // if the from-clauses are the same, we can be a little more aggressive in terms of what we reuse if ( fromElement.getFromClause() == getWalker().getCurrentFromClause() && areSame( classAlias, fromElement.getClassAlias() )) { return true; } // otherwise (subquery case) dont reuse the fromElement if we are processing the from-clause of the subquery return getWalker().getCurrentClauseType() != SqlTokenTypes.FROM; }
joinIsNeeded = generateJoin && !isPropertyEmbeddedInJoinProperties( parentAsDotNode.propertyName ); else if ( !getWalker().isSelectStatement() ) { joinIsNeeded = getWalker().getCurrentStatementType() == SqlTokenTypes.SELECT && getWalker().isInFrom(); joinIsNeeded = generateJoin && ( !getWalker().isInSelect() || !getWalker().isShallowQuery() ); joinIsNeeded = generateJoin || ( getWalker().isInSelect() || getWalker().isInFrom() );
FromClause currentFromClause = getWalker().getCurrentFromClause(); if ( getWalker().getStatementType() != SqlTokenTypes.SELECT ) { if ( isFromElementUpdateOrDeleteRoot( lhsFromElement ) ) { if ( getWalker().getStatementType() != SqlTokenTypes.INSERT ) { final Queryable persister = lhsFromElement.getQueryable(); if ( persister.isMultiTable() ) { EntityPersister entityPersister = elem.getEntityPersister(); if ( entityPersister != null ) { getWalker().addQuerySpaces( entityPersister.getQuerySpaces() ); getWalker().addQuerySpaces( queryableCollection.getCollectionSpaces() ); // Always add the collection's query spaces.
String joinPath = getPath(); if ( impliedJoin && getWalker().isInFrom() ) { joinType = getWalker().getImpliedJoinType(); FromClause currentFromClause = getWalker().getCurrentFromClause(); FromElement elem = currentFromClause.findJoinByPath( joinPath ); joinSequence, fetch, getWalker().isInFrom(), propertyType, role, getWalker().addQuerySpaces( elem.getEntityPersister().getQuerySpaces() );
getWalker().getLiteralProcessor().lookupConstant( this );
@Override public String getDisplayText() { StringBuilder buf = new StringBuilder(); FromElement fromElement = getFromElement(); buf.append( "{propertyName=" ).append( propertyName ); buf.append( ",dereferenceType=" ).append( getWalker().getASTPrinter().getTokenTypeName( dereferenceType ) ); buf.append( ",propertyPath=" ).append( propertyPath ); buf.append( ",path=" ).append( getPath() ); if ( fromElement != null ) { buf.append( ",tableAlias=" ).append( fromElement.getTableAlias() ); buf.append( ",className=" ).append( fromElement.getClassName() ); buf.append( ",classAlias=" ).append( fromElement.getClassAlias() ); } else { buf.append( ",no from element" ); } buf.append( '}' ); return buf.toString(); }
@Override public String getDisplayText() { StringBuilder buf = new StringBuilder(); FromElement fromElement = getFromElement(); buf.append( "{propertyName=" ).append( propertyName ); buf.append( ",dereferenceType=" ).append( getWalker().getASTPrinter().getTokenTypeName( dereferenceType ) ); buf.append( ",propertyPath=" ).append( propertyPath ); buf.append( ",path=" ).append( getPath() ); if ( fromElement != null ) { buf.append( ",tableAlias=" ).append( fromElement.getTableAlias() ); buf.append( ",className=" ).append( fromElement.getClassName() ); buf.append( ",classAlias=" ).append( fromElement.getClassAlias() ); } else { buf.append( ",no from element" ); } buf.append( '}' ); return buf.toString(); }
joinIsNeeded = generateJoin && !isReferenceToPrimaryKey( parentAsDotNode.propertyName, entityType ); else if ( ! getWalker().isSelectStatement() ) { joinIsNeeded = getWalker().getCurrentStatementType() == SqlTokenTypes.SELECT && getWalker().isInFrom(); joinIsNeeded = generateJoin && ( !getWalker().isInSelect() || !getWalker().isShallowQuery() ); joinIsNeeded = generateJoin || ( getWalker().isInSelect() || getWalker().isInFrom() );
private void initText() { String[] cols = getColumns(); String text = StringHelper.join( ", ", cols ); if ( cols.length > 1 && getWalker().isComparativeExpressionClause() ) { text = "(" + text + ")"; } setText( text ); }
private void initText() { String[] cols = getColumns(); String text = StringHelper.join( ", ", cols ); if ( cols.length > 1 && getWalker().isComparativeExpressionClause() ) { text = "(" + text + ")"; } setText( text ); }
FromClause currentFromClause = getWalker().getCurrentFromClause(); if ( getWalker().getStatementType() != SqlTokenTypes.SELECT && indexed && classAlias == null ) { EntityPersister entityPersister = elem.getEntityPersister(); if ( entityPersister != null ) { getWalker().addQuerySpaces( entityPersister.getQuerySpaces() ); getWalker().addQuerySpaces( queryableCollection.getCollectionSpaces() ); // Always add the collection's query spaces.
getWalker().getLiteralProcessor().lookupConstant( this );
getWalker().getLiteralProcessor().lookupConstant( this );