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 private boolean ifNotExists; 018 private TObjectName directoryObject; 019 private TObjectName credential; 020 021 022 public TOracleCreateLibraryStmt(EDbVendor dbvendor) { 023 super(dbvendor); 024 sqlstatementtype = ESqlStatementType.sstoraclecreatelibrary; 025 } 026 027 public TObjectName getDbLink() { 028 return dbLink; 029 } 030 031 public TObjectName getFileName() { 032 return fileName; 033 } 034 035 public TObjectName getLibraryName() { 036 return libraryName; 037 } 038 039 public boolean isIfNotExists() { 040 return ifNotExists; 041 } 042 043 public TObjectName getDirectoryObject() { 044 return directoryObject; 045 } 046 047 public TObjectName getCredential() { 048 return credential; 049 } 050 051 public int doParseStatement(TCustomSqlStatement psql) { 052 if (rootNode == null) return -1; 053 super.doParseStatement(psql); 054 TOracleCreateLibrarySqlNode node = (TOracleCreateLibrarySqlNode)rootNode; 055 libraryName = node.getLibraryName(); 056 //libraryName.setObjectType(TObjectName.ttObjLibrary); 057 libraryName.setDbObjectType(EDbObjectType.library); 058 fileName = node.getFileName(); 059 dbLink = node.getDbLink(); 060 ifNotExists = node.isIfNotExists(); 061 directoryObject = node.getDirectoryObject(); 062 credential = node.getCredential(); 063 064 return 0; 065 } 066 067 public void accept(TParseTreeVisitor v){ 068 v.preVisit(this); 069 v.postVisit(this); 070 } 071 072 public void acceptChildren(TParseTreeVisitor v){ 073 v.preVisit(this); 074 v.postVisit(this); 075 } 076 077 public void setLibraryName(TObjectName libraryName) { 078 this.libraryName = libraryName; 079 } 080 081 public void setFileName(TObjectName fileName) { 082 this.fileName = fileName; 083 } 084 085 public void setDbLink(TObjectName dbLink) { 086 this.dbLink = dbLink; 087 } 088 089 public void setIfNotExists(boolean ifNotExists) { 090 this.ifNotExists = ifNotExists; 091 } 092 093 public void setDirectoryObject(TObjectName directoryObject) { 094 this.directoryObject = directoryObject; 095 } 096 097 public void setCredential(TObjectName credential) { 098 this.credential = credential; 099 } 100}