001package gudusoft.gsqlparser.nodes; 002 003 004import gudusoft.gsqlparser.stmt.TAlterSchemaStmt; 005 006public class TAlterSchemaSqlNode extends TParseTreeNode { 007 008 public TAlterSchemaStmt.AlterType getAlterType() { 009 return alterType; 010 } 011 012 private TAlterSchemaStmt.AlterType alterType; 013 private TObjectName schemaName; 014 015 public TObjectName getSchemaName() { 016 if (schemaName != null){ 017 return schemaName; 018 }else { 019 return schemaNameList.getObjectName(0); 020 } 021 } 022 023 private TObjectName ownerName; 024 025 public void setOwnerName(TObjectName ownerName) { 026 this.ownerName = ownerName; 027 } 028 029 public TObjectName getOwnerName() { 030 return ownerName; 031 } 032 033 private TObjectName newSchemaName; 034 035 public void setNewSchemaName(TObjectName newSchemaName) { 036 this.newSchemaName = newSchemaName; 037 } 038 039 public TObjectName getNewSchemaName() { 040 041 return newSchemaName; 042 } 043 044 private TObjectNameList schemaNameList; 045 046 public TObjectNameList getNewSchemaNameList() { 047 return newSchemaNameList; 048 } 049 050 public TObjectNameList getSchemaNameList() { 051 return schemaNameList; 052 } 053 054 private TObjectNameList newSchemaNameList; 055 056 057 public void init(Object arg1){ 058 if (arg1 instanceof TObjectName){ 059 schemaName = (TObjectName)arg1; 060 }else 061 schemaNameList = (TObjectNameList)arg1; 062 } 063 064 public void init(Object arg1,Object arg2){ 065 alterType = (TAlterSchemaStmt.AlterType)arg1; 066 if (arg2 instanceof TObjectNameList) 067 { // vertica 068 this.schemaNameList = (TObjectNameList)arg2; 069 }else{ 070 this.schemaName = (TObjectName)arg2; 071 } 072 } 073 074 public void init(Object arg1,Object arg2,Object arg3){ 075 init(arg1,arg2); 076 switch (alterType){ 077 case renameTo: 078 if (arg3 instanceof TObjectNameList) 079 { // vertica 080 this.newSchemaNameList = (TObjectNameList)arg3; 081 }else{ 082 this.newSchemaName = (TObjectName)arg3; 083 } 084 085 break; 086 case authoriaztionTo: 087 case swapWith: 088 this.newSchemaName = (TObjectName)arg3; 089 break; 090 case ownerTo: 091 this.ownerName = (TObjectName)arg3; 092 break; 093 } 094 } 095 096 097}