001package gudusoft.gsqlparser.stmt.oracle;
002
003
004import gudusoft.gsqlparser.EDbObjectType;
005import gudusoft.gsqlparser.EDbVendor;
006import gudusoft.gsqlparser.ESqlStatementType;
007import gudusoft.gsqlparser.TCustomSqlStatement;
008import gudusoft.gsqlparser.nodes.TObjectName;
009import gudusoft.gsqlparser.nodes.TParseTreeVisitor;
010import gudusoft.gsqlparser.nodes.oracle.TOracleCreateLibrarySqlNode;
011
012public class TOracleCreateLibraryStmt extends TCustomSqlStatement {
013
014    private TObjectName libraryName;
015    private TObjectName fileName;
016    private TObjectName dbLink;
017
018
019    public TOracleCreateLibraryStmt(EDbVendor dbvendor) {
020        super(dbvendor);
021        sqlstatementtype = ESqlStatementType.sstoraclecreatelibrary;
022    }
023
024    public TObjectName getDbLink() {
025        return dbLink;
026    }
027
028    public TObjectName getFileName() {
029        return fileName;
030    }
031
032    public TObjectName getLibraryName() {
033        return libraryName;
034    }
035
036    public int doParseStatement(TCustomSqlStatement psql) {
037        if (rootNode == null) return -1;
038        super.doParseStatement(psql);
039        TOracleCreateLibrarySqlNode node = (TOracleCreateLibrarySqlNode)rootNode;
040        libraryName = node.getLibraryName();
041        //libraryName.setObjectType(TObjectName.ttObjLibrary);
042        libraryName.setDbObjectType(EDbObjectType.library);
043        fileName = node.getFileName();
044        dbLink = node.getDbLink();
045
046        return 0;
047    }
048
049    public void accept(TParseTreeVisitor v){
050        v.preVisit(this);
051        v.postVisit(this);
052    }
053
054    public void acceptChildren(TParseTreeVisitor v){
055        v.preVisit(this);
056        v.postVisit(this);
057    }
058
059    public void setLibraryName(TObjectName libraryName) {
060        this.libraryName = libraryName;
061    }
062
063    public void setFileName(TObjectName fileName) {
064        this.fileName = fileName;
065    }
066
067    public void setDbLink(TObjectName dbLink) {
068        this.dbLink = dbLink;
069    }
070}