001package gudusoft.gsqlparser.nodes; 002/* 003 * Date: 12-2-6 004 */ 005 006import gudusoft.gsqlparser.TSourceToken; 007 008public class TMySQLCreateTableOption extends TParseTreeNode { 009 010 private String optionName; 011 private String optionValue; 012 private TSourceToken optionNameToken;//,optionValueToken; 013 private TConstant optionValueConstant; 014 private TObjectNameList valueList; 015 016 public void accept(TParseTreeVisitor v){ 017 v.preVisit(this); 018 v.postVisit(this); 019 } 020 021 public void acceptChildren(TParseTreeVisitor v){ 022 v.preVisit(this); 023 v.postVisit(this); 024 } 025 026 public String getOptionValue() { 027 return optionValue; 028 } 029 030 public String getOptionName() { 031 032 return optionName; 033 } 034 035 public TObjectNameList getValueList() { 036 return valueList; 037 } 038 039 public void init(Object arg1, Object arg2){ 040 if (arg1 instanceof String){ 041 optionName = (String)arg1; 042 }else if (arg1 instanceof TSourceToken){ 043 optionNameToken = (TSourceToken)arg1; 044 optionName = optionNameToken.toString(); 045 } 046 047 if (arg2 instanceof String){ 048 optionValue = (String)arg2; 049 }else if (arg2 instanceof TSourceToken){ 050 //optionValueToken = (TSourceToken)arg2; 051 optionValue = ((TSourceToken)arg2).toString(); 052 }else if (arg2 instanceof TObjectName){ 053 optionValue = ((TObjectName)arg2).toString(); 054 }else if(arg2 instanceof TConstant){ 055 optionValueConstant = (TConstant)arg2; 056 optionValue = optionValueConstant.toString(); 057 }else if (arg2 instanceof TObjectNameList){ 058 valueList = (TObjectNameList)arg2; 059 for(int i=0;i<valueList.size();i++){ 060 optionValue += valueList.getObjectName(i).toString(); 061 if (i != valueList.size() -1){ 062 optionValue += ","; 063 } 064 } 065 } 066 } 067 068 public void setOptionName(String optionName) { 069 this.optionName = optionName; 070 } 071 072 public void setOptionValue(String optionValue) { 073 this.optionValue = optionValue; 074 } 075 076 public void setOptionValueConstant(TConstant optionValueConstant) { 077 this.optionValueConstant = optionValueConstant; 078 } 079 080 public void setValueList(TObjectNameList valueList) { 081 this.valueList = valueList; 082 } 083}