private TableReference unwrap(TableReference table) { if (table instanceof DerivedTable) { return table; } else if (table instanceof NamedProcedureCall) { NamedProcedureCall npc = (NamedProcedureCall) table; return npc.getCall(); } return null; }
@Override public void visit(NamedProcedureCall namedProcedureCall) { if (visitSubcommands) { visitNode(namedProcedureCall.getCall()); } }
@Override public void visit(NamedProcedureCall obj) { buffer.append(Tokens.LPAREN); append(obj.getCall()); buffer.append(Tokens.RPAREN); buffer.append(Tokens.SPACE); if(useAsInGroupAlias()) { buffer.append(AS); buffer.append(Tokens.SPACE); } buffer.append(obj.getCorrelationName()); }
public void visit(NamedProcedureCall obj) { if (obj.isLateral()) { appendLateralKeyword(); buffer.append(Tokens.SPACE); } buffer.append(Tokens.LPAREN); append(obj.getCall()); buffer.append(Tokens.RPAREN); buffer.append(Tokens.SPACE); if(useAsInGroupAlias()) { buffer.append(AS); buffer.append(Tokens.SPACE); } buffer.append(obj.getCorrelationName()); }
private boolean isTVF(TableReference table) { if (table instanceof NamedTable) { String value = ((NamedTable)table).getMetadataObject().getProperty(PIMetadataProcessor.TVF, false); return Boolean.parseBoolean(value); } else if (table instanceof NamedProcedureCall) { String value = ((NamedProcedureCall)table).getCall().getMetadataObject().getProperty(PIMetadataProcessor.TVF, false); return Boolean.parseBoolean(value); } return false; }
TableReference translate(SubqueryFromClause clause) { if (clause.getCommand() instanceof StoredProcedure) { NamedProcedureCall result = new NamedProcedureCall(translate((StoredProcedure)clause.getCommand()), clause.getOutputName()); result.setLateral(clause.isLateral()); result.getCall().setTableReference(true); return result; } DerivedTable result = new DerivedTable(translate((QueryCommand)clause.getCommand()), clause.getOutputName()); result.setLateral(clause.isLateral()); return result; }
TableReference translate(SubqueryFromClause clause) { if (clause.getCommand() instanceof StoredProcedure) { NamedProcedureCall result = new NamedProcedureCall(translate((StoredProcedure)clause.getCommand()), clause.getOutputName()); result.setLateral(clause.isLateral()); result.getCall().setTableReference(true); return result; } DerivedTable result = new DerivedTable(translate((QueryCommand)clause.getCommand()), clause.getOutputName()); result.setLateral(clause.isLateral()); return result; }
TableReference translate(SubqueryFromClause clause) { if (clause.getCommand() instanceof StoredProcedure) { NamedProcedureCall result = new NamedProcedureCall(translate((StoredProcedure)clause.getCommand()), clause.getOutputName()); result.setLateral(clause.isLateral()); result.getCall().setTableReference(true); return result; } DerivedTable result = new DerivedTable(translate((QueryCommand)clause.getCommand()), clause.getOutputName()); result.setLateral(clause.isLateral()); return result; }