1 package com.daffodilwoods.daffodildb.server.sql99.dml; 2 3 import com.daffodilwoods.database.resource.*; 4 import com.daffodilwoods.daffodildb.server.sql99.token.*; 5 import com.daffodilwoods.daffodildb.server.sql99.utils._Reference; 6 import com.daffodilwoods.daffodildb.server.serversystem._ServerSession; 7 import com.daffodilwoods.daffodildb.server.sql99.common.ParameterInfo; 8 import java.util.ArrayList ; 9 import com.daffodilwoods.daffodildb.server.sql99.expression.expressionprimary.*; 10 import com.daffodilwoods.daffodildb.server.sql99.common.*; 11 12 public class setclausewithsubquery 13 implements com.daffodilwoods.daffodildb.utils.parser.StatementExecuter, 14 setclause { 15 public subquery _subquery0; 16 public Sequalsoperator182046693 _Sequalsoperator1820466931; 17 public Srightparen_1874859514 _Srightparen_18748595142; 18 public updatetarget[] _OptRepScomma94843605updatetarget3; 19 public updatetarget _updatetarget4; 20 public Sleftparen653880241 _Sleftparen6538802415; 21 22 public Object run(Object object) throws DException { 23 ArrayList list = new ArrayList (); 24 list.add(_updatetarget4.run(object)); 25 if(_OptRepScomma94843605updatetarget3 !=null){ 26 for (int i = 0; i < _OptRepScomma94843605updatetarget3.length; i++) { 27 list.add(_OptRepScomma94843605updatetarget3[i].run(object)); 28 } 29 } 30 return new Object [] {list.toArray(), _subquery0}; } 31 32 public String toString() { 33 StringBuffer sb = new StringBuffer (); 34 sb.append(" "); 35 sb.append(_Sleftparen6538802415); 36 sb.append(" "); 37 sb.append(_updatetarget4); 38 sb.append(" "); 39 if (_OptRepScomma94843605updatetarget3 != null) { 40 for (int i = 0; i < _OptRepScomma94843605updatetarget3.length; i++) 41 sb.append(",").append(_OptRepScomma94843605updatetarget3[i]); 42 } 43 sb.append(" "); 44 sb.append(_Srightparen_18748595142); 45 sb.append(" "); 46 sb.append(_Sequalsoperator1820466931); 47 sb.append(" "); 48 sb.append(_subquery0); 49 return sb.toString(); 50 } 51 52 58 public Object [] getParameters(Object object) throws DException { 59 return _subquery0.getParameters(object); 60 } 61 62 68 public _Reference[] checkSemantic(_ServerSession parent) throws DException { 69 _Reference[] references = _subquery0.checkSemantic(parent); 70 ColumnDetails[] selectedCDs =_subquery0.getSelectedColumnDetails(); 71 int columnsInSetClause = 1; 72 if(_OptRepScomma94843605updatetarget3 != null) 73 columnsInSetClause += _OptRepScomma94843605updatetarget3.length; 74 if(selectedCDs.length != columnsInSetClause) 75 throw new DException("DSE214", null); 76 return references; 77 } 78 79 84 public ParameterInfo[] getParameterInfo() throws DException{ 85 ParameterInfo[] temp = _subquery0.getParameterInfo(); 86 if (temp[0].getQuestionMark()) { 87 if(temp[0].getName()==null) { 88 temp[0].setName( ( (ColumnDetails) _updatetarget4.run(null)).getColumn()); 89 } 90 } 91 if(_OptRepScomma94843605updatetarget3 != null){ 92 for (int i = 1,j=0; i < temp.length; i++,j++) { 93 if (temp[i].getQuestionMark()) { 94 if (temp[i].getName() == null) { 95 temp[i].setName( ( (ColumnDetails) _OptRepScomma94843605updatetarget3[j].run(null)). 96 getColumn()); 97 } 98 } 99 } 100 } 101 return temp; 102 } 103 104 109 public void getTablesIncluded(ArrayList arrayList) throws DException { 110 _subquery0.getTablesIncluded(arrayList); 111 112 } 113 114 119 public Object clone() throws CloneNotSupportedException { 120 return this; 121 } 122 } 123 | Popular Tags |