rapture.repo.jdbc.SelectConverter Maven / Gradle / Ivy
/**
* Copyright (C) 2011-2015 Incapture Technologies LLC
*
* This is an autogenerated license statement. When copyright notices appear below
* this one that copyright supercedes this statement.
*
* Unless required by applicable law or agreed to in writing, software is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied.
*
* Unless explicit permission obtained in writing this software cannot be distributed.
*/
package rapture.repo.jdbc;
import org.apache.log4j.Logger;
import net.sf.jsqlparser.schema.Table;
import net.sf.jsqlparser.statement.select.SubSelect;
import net.sf.jsqlparser.util.deparser.SelectDeParser;
import rapture.repo.jdbc.context.ConverterContext;
import rapture.repo.jdbc.context.StatementType;
/**
* Created by yanwang on 5/1/15.
*/
public class SelectConverter extends SelectDeParser {
private static Logger log = Logger.getLogger(SelectConverter.class);
private ConverterContext context;
public SelectConverter() {
super();
setBuffer(new StringBuilder());
context = new ConverterContext(StatementType.SELECT);
}
public ConverterContext getContext() {
return context;
}
public PreparedExpressionConverter getExpressionConverter() {
return (PreparedExpressionConverter) getExpressionVisitor();
}
@Override
public void visit(Table tableName) {
super.visit(tableName);
context.addTable(tableName);
}
@Override
public void visit(SubSelect subSelect) {
context.increaseContextLevel(StatementType.SELECT);
super.visit(subSelect);
context.decreaseContextLevel();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy