001package gudusoft.gsqlparser.nodes;
002/*
003 * Date: 13-1-22
004 */
005
006import gudusoft.gsqlparser.ESqlClause;
007import gudusoft.gsqlparser.TCustomSqlStatement;
008
009public class TInformixOuterClause extends TParseTreeNode {
010    private TFromTable fromTable = null;
011    private TFromTableList fromTableList = null;
012    private TTableList tableList;
013
014    public TTableList getTableList() {
015        return tableList;
016    }
017
018    public void init(Object arg1){
019        tableList = new TTableList();
020        if (arg1 instanceof TFromTable){
021            fromTable = (TFromTable)arg1;
022
023        }else if (arg1 instanceof TFromTableList){
024            fromTableList = (TFromTableList)arg1;
025        }
026    }
027
028    public void doParse(TCustomSqlStatement psql, ESqlClause plocation){
029        if (fromTable != null){
030            tableList.addTable(psql.analyzeFromTable(fromTable,true));
031        }else if (fromTableList != null){
032            for (int i=0;i<fromTableList.size();i++){
033                tableList.addTable(psql.analyzeFromTable(fromTableList.getFromTable(i),true));
034            }
035        }
036    }
037
038    public void setFromTable(TFromTable fromTable) {
039        this.fromTable = fromTable;
040    }
041
042    public void setFromTableList(TFromTableList fromTableList) {
043        this.fromTableList = fromTableList;
044    }
045
046    public void setTableList(TTableList tableList) {
047        this.tableList = tableList;
048    }
049}