package jef.database.jsqlparser; import jef.database.dialect.DatabaseDialect; import jef.database.jsqlparser.expression.Column; import jef.database.jsqlparser.visitor.VisitorAdapter; import jef.database.query.SqlContext; import jef.tools.StringUtils; public class ColumnAliasApplier extends VisitorAdapter{ @SuppressWarnings("unused") private DatabaseDialect profile; private SqlContext context; public ColumnAliasApplier(String alias, DatabaseDialect profile,SqlContext context) { this.context = context; this.profile = profile; } public void visit(Column tableColumn) { String name=tableColumn.getTableAlias(); if (name != null && name.charAt(0)=='$') { int i=StringUtils.toInt(name.substring(1), 0); if(i>0 && i<=context.size()){ String alias=context.getAliasOf(i-1); tableColumn.setTableAlias(alias); } } } }