001package gudusoft.gsqlparser.stmt.postgresql;
002
003
004import gudusoft.gsqlparser.EDbVendor;
005import gudusoft.gsqlparser.ESqlStatementType;
006import gudusoft.gsqlparser.TCustomSqlStatement;
007import gudusoft.gsqlparser.nodes.*;
008
009/**
010 * @deprecated As of v2.0.1.0, replaced by {@link gudusoft.gsqlparser.stmt.TCreateTriggerStmt}
011 * Create trigger
012 */
013public class TPlsqlCreateTriggerSqlStatement extends TCustomSqlStatement {
014
015    public TPlsqlCreateTriggerSqlStatement(EDbVendor dbvendor) {
016        super(dbvendor);
017        sqlstatementtype = ESqlStatementType.sstpostgresqlCreateTrigger;
018    }
019
020    private TObjectName triggerName;
021    private TTable onTable = null;
022    private TFunctionCall functionCall;
023
024    public TFunctionCall getFunctionCall() {
025        return functionCall;
026    }
027
028    public TTable getOnTable() {
029        return onTable;
030    }
031
032    public TObjectName getTriggerName() {
033        return triggerName;
034    }
035
036    public int doParseStatement(TCustomSqlStatement psql) {
037        if (rootNode == null) return -1;
038        super.doParseStatement(psql);
039        TCreateTriggerSqlNode sqlNode = (TCreateTriggerSqlNode)rootNode;
040        triggerName = sqlNode.getTriggerName();
041        onTable = sqlNode.getOnTable();
042        functionCall = sqlNode.getFunctionCall();
043
044
045        return 0;
046    }
047    public void accept(TParseTreeVisitor v){
048        v.preVisit(this);
049        v.postVisit(this);
050    }
051
052    public void acceptChildren(TParseTreeVisitor v){
053        v.preVisit(this);
054        v.postVisit(this);
055    }
056
057    public void setTriggerName(TObjectName triggerName) {
058        this.triggerName = triggerName;
059    }
060
061    public void setOnTable(TTable onTable) {
062        this.onTable = onTable;
063    }
064
065    public void setFunctionCall(TFunctionCall functionCall) {
066        this.functionCall = functionCall;
067    }
068}