1 package com.daffodilwoods.daffodildb.server.sql99.dcl.sqlcontrolstatement; 2 3 import java.util.*; 4 5 import com.daffodilwoods.daffodildb.server.serversystem.*; 6 import com.daffodilwoods.daffodildb.server.sql99.common.*; 7 import com.daffodilwoods.daffodildb.server.sql99.token.*; 8 import com.daffodilwoods.daffodildb.server.sql99.utils.*; 9 import com.daffodilwoods.database.resource.*; 10 11 public class simplecasestatement implements casestatement { 12 public SRESERVEDWORD1206543922 _SRESERVEDWORD12065439220; 13 public SRESERVEDWORD1206543922 _SRESERVEDWORD12065439221; 14 public casestatementelseclause _Optcasestatementelseclause2; 15 public simplecasestatementwhenclause[] _Repsimplecasestatementwhenclause3; 16 public simplecaseoperand1 _simplecaseoperand14; 17 public SRESERVEDWORD1206543922 _SRESERVEDWORD12065439225; 18 19 private SQLcontrolstatement outerControlStatement; 20 21 public void setOuterControlStatement(SQLcontrolstatement outerst) { 22 outerControlStatement = outerst; 23 } 24 25 public Object run(Object object) throws DException { 26 for (int i = 0; i < _Repsimplecasestatementwhenclause3.length; i++) { 27 _Repsimplecasestatementwhenclause3[i].run(object); 28 } 29 if (_Optcasestatementelseclause2 != null) { 30 _Optcasestatementelseclause2.run(object); 31 } 32 return this; 33 } 34 35 public Object [] getParameters(Object object) throws DException { 36 ArrayList list = new ArrayList(); 37 if (_Optcasestatementelseclause2 != null) { 38 Object [] par1 = _Optcasestatementelseclause2.getParameters(object); 39 if (par1 != null) { 40 list.addAll(Arrays.asList(par1)); 41 } 42 } 43 for (int i = 0; i < _Repsimplecasestatementwhenclause3.length; i++) { 44 Object [] par2 = _Repsimplecasestatementwhenclause3[i].getParameters(object); 45 if (par2 != null) { 46 list.addAll(Arrays.asList(par2)); 47 } 48 } 49 Object [] par3 = _simplecaseoperand14.getParameters(object); 50 if (par3 != null) { 51 list.addAll(Arrays.asList(par3)); 52 } 53 return list.toArray(); 54 } 55 56 76 77 public Object execute(_VariableValues variableValues) throws DException { 78 Object result = null; 79 Object switchValue = _simplecaseoperand14.run(variableValues); 80 81 SQLstatementlist ssl = 82 getSqlStatementListToExecuteWhenClause(switchValue, variableValues); 83 84 if (ssl != null) { 85 ssl.setOuterControlStatement(this); 86 result = ssl.execute(variableValues); 87 } else if (_Optcasestatementelseclause2 != null) { 88 ssl = _Optcasestatementelseclause2.getSQLStatementList(); 89 ssl.setOuterControlStatement(this); 90 result = ssl.execute(variableValues); 91 } 92 if (result instanceof SqlStatementListResult) { 93 SqlStatementListResult temp = (SqlStatementListResult) result; 94 if (outerControlStatement == null && temp.hasIterateLeaveResult()) { 95 throw new DException("DSE8038", null); 96 } 97 return temp.getResult(); 98 } 99 return result; 100 } 101 102 public SQLstatementlist getSqlStatementListToExecuteWhenClause( 103 Object switchValue, _VariableValues vv) throws DException { 104 for (int i = 0, size = _Repsimplecasestatementwhenclause3.length; i < size; 105 i++) { 106 SQLstatementlist temp = _Repsimplecasestatementwhenclause3[i]. 107 checkWithSwitchValue(switchValue, vv); 108 if (temp != null) { 109 return temp; 110 } 111 } 112 return null; 113 } 114 115 public Object execute(Object [] values) throws DException { 116 throw new UnsupportedOperationException (); 117 } 118 119 public Object executeForFresh(Object [] values) throws DException { 120 throw new UnsupportedOperationException (); 121 } 122 123 public ParameterInfo[] getParameterInfo() throws DException { 124 throw new UnsupportedOperationException (); 125 } 126 127 public String toString() { 128 StringBuffer sb = new StringBuffer (); 129 sb.append(" "); 130 sb.append(_SRESERVEDWORD12065439225); 131 sb.append(" "); 132 sb.append(_simplecaseoperand14); 133 sb.append(" "); 134 for (int i = 0; i < _Repsimplecasestatementwhenclause3.length; i++) { 135 sb.append(_Repsimplecasestatementwhenclause3[i]); 136 } 137 sb.append(" "); 138 if (_Optcasestatementelseclause2 != null) { 139 sb.append(_Optcasestatementelseclause2); 140 } 141 sb.append(" "); 142 sb.append(_SRESERVEDWORD12065439221); 143 sb.append(" "); 144 sb.append(_SRESERVEDWORD12065439220); 145 return sb.toString().trim(); 146 } 147 148 public Object clone() throws CloneNotSupportedException { 149 return this; 150 } 151 152 public ColumnDetails[] getColumnDetails() throws DException { 153 ColumnDetails[] simpleCaseStatementWhenClauseCD = null, caseStatementElseClauseCD = null; 154 ArrayList listOfSimpleCaseStatementWhenClauseCD = new ArrayList(); 155 if (_Optcasestatementelseclause2 != null) { 156 caseStatementElseClauseCD = _Optcasestatementelseclause2.getColumnDetails(); 157 } 158 if (_Repsimplecasestatementwhenclause3 != null) { 159 for (int i = 0; i < _Repsimplecasestatementwhenclause3.length; i++) { 160 listOfSimpleCaseStatementWhenClauseCD.addAll(Arrays.asList(_Repsimplecasestatementwhenclause3[i].getColumnDetails())); 161 } 162 simpleCaseStatementWhenClauseCD = (ColumnDetails[]) listOfSimpleCaseStatementWhenClauseCD.toArray(new ColumnDetails[0]); 163 } 164 return GeneralPurposeStaticClass.getJointColumnDetails(caseStatementElseClauseCD, simpleCaseStatementWhenClauseCD); 165 } 166 167 public _Reference[] checkSemantic(_ServerSession object) throws DException { 168 ArrayList set = new ArrayList(); 169 if (_Optcasestatementelseclause2 != null) { 170 _Reference[] par1 = _Optcasestatementelseclause2.checkSemantic(object); 171 if (par1 != null) { 172 set.addAll(Arrays.asList(par1)); 173 } 174 } 175 for (int i = 0; i < _Repsimplecasestatementwhenclause3.length; i++) { 176 _Reference[] par2 = _Repsimplecasestatementwhenclause3[i].checkSemantic(object); 177 if (par2 != null) { 178 set.addAll(Arrays.asList(par2)); 179 } 180 } 181 _Reference[] par3 = _simplecaseoperand14.checkSemantic(object); 182 if (par3 != null) { 183 set.addAll(Arrays.asList(par3)); 184 } 185 return (_Reference[]) set.toArray(new _Reference[0]); 186 } 187 188 public void getTableIncluded(ArrayList aList) throws DException { 189 } 190 191 public void getColumnsIncluded(ArrayList aList) throws DException { 192 } 193 } 194 | Popular Tags |