KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > daffodilwoods > daffodildb > server > sql99 > dcl > sqlcontrolstatement > searchedcasestatement


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 searchedcasestatement implements casestatement {
12    public SRESERVEDWORD1206543922 _SRESERVEDWORD12065439220;
13    public SRESERVEDWORD1206543922 _SRESERVEDWORD12065439221;
14    public casestatementelseclause _Optcasestatementelseclause2;
15    public searchedcasestatementwhenclause[] _Repsearchedcasestatementwhenclause3;
16    public SRESERVEDWORD1206543922 _SRESERVEDWORD12065439224;
17
18    private SQLcontrolstatement outerControlStatement;
19
20    public void setOuterControlStatement(SQLcontrolstatement outerst) {
21       outerControlStatement = outerst;
22    }
23
24    public Object JavaDoc run(Object JavaDoc object) throws DException {
25       if (_Optcasestatementelseclause2 != null) {
26          _Optcasestatementelseclause2.run(object);
27       }
28       for (int i = 0; i < _Repsearchedcasestatementwhenclause3.length; i++) {
29          _Repsearchedcasestatementwhenclause3[i].run(object);
30       }
31       return this;
32    }
33
34    public Object JavaDoc[] getParameters(Object JavaDoc object) throws DException {
35       ArrayList list = new ArrayList();
36       if (_Optcasestatementelseclause2 != null) {
37          Object JavaDoc[] par1 = _Optcasestatementelseclause2.getParameters(object);
38          if (par1 != null) {
39             list.addAll(Arrays.asList(par1));
40          }
41       }
42       for (int i = 0; i < _Repsearchedcasestatementwhenclause3.length; i++) {
43          Object JavaDoc[] par2 = _Repsearchedcasestatementwhenclause3[i].getParameters(object);
44          if (par2 != null) {
45             list.addAll(Arrays.asList(par2));
46          }
47       }
48       return list.toArray();
49    }
50
51    /* public _Reference[] checkSemantic(_ServerSession object) throws DException {
52          TreeSet set = new TreeSet(ReferenceComparator.comparator);
53          if (_Optcasestatementelseclause2 != null) {
54             _Reference[] par1 = _Optcasestatementelseclause2.checkSemantic(object);
55             if (par1 != null) {
56                set.addAll(Arrays.asList(par1));
57             }
58          }
59          for (int i = 0; i < _Repsearchedcasestatementwhenclause3.length; i++) {
60             _Reference[] par2 = _Repsearchedcasestatementwhenclause3[i].checkSemantic(object);
61             if (par2 != null) {
62                set.addAll(Arrays.asList(par2));
63             }
64          }
65          return (_Reference[]) set.toArray(new _Reference[0]);
66       }*/

67
68    public Object JavaDoc execute(_VariableValues variableValues) throws DException {
69       Object JavaDoc result = null;
70       SQLstatementlist ssl = getSqlStatementListToExecuteWhenClause(variableValues);
71       if (ssl != null) {
72          ssl.setOuterControlStatement(this);
73          result = ssl.execute(variableValues);
74       } else if (_Optcasestatementelseclause2 != null) {
75          ssl = _Optcasestatementelseclause2.getSQLStatementList();
76          ssl.setOuterControlStatement(this);
77          result = ssl.execute(variableValues);
78       }
79       if (result instanceof SqlStatementListResult) {
80          SqlStatementListResult temp = (SqlStatementListResult) result;
81          if (outerControlStatement == null && temp.hasIterateLeaveResult()) {
82             throw new DException("DSE8038", null);
83          }
84       }
85       return result;
86    }
87
88    private SQLstatementlist getSqlStatementListToExecuteWhenClause(
89        _VariableValues variableValues) throws DException {
90       for (int i = 0, size = _Repsearchedcasestatementwhenclause3.length;
91            i < size; i++) {
92          SQLstatementlist temp = _Repsearchedcasestatementwhenclause3[i].
93              checkCondition(variableValues);
94          if (temp != null) {
95             return temp;
96          }
97       }
98       return null;
99    }
100
101    public Object JavaDoc execute(Object JavaDoc[] values) throws DException {
102       throw new UnsupportedOperationException JavaDoc();
103    }
104
105    public Object JavaDoc executeForFresh(Object JavaDoc[] values) throws DException {
106       throw new UnsupportedOperationException JavaDoc();
107    }
108
109    public ParameterInfo[] getParameterInfo() throws DException {
110       throw new UnsupportedOperationException JavaDoc();
111    }
112
113    public String JavaDoc toString() {
114       StringBuffer JavaDoc sb = new StringBuffer JavaDoc();
115       sb.append(" ");
116       sb.append(_SRESERVEDWORD12065439224);
117       sb.append(" ");
118       for (int i = 0; i < _Repsearchedcasestatementwhenclause3.length; i++) {
119          sb.append(_Repsearchedcasestatementwhenclause3[i]);
120       }
121       sb.append(" ");
122       if (_Optcasestatementelseclause2 != null) {
123          sb.append(_Optcasestatementelseclause2);
124       }
125       sb.append(" ");
126       sb.append(_SRESERVEDWORD12065439221);
127       sb.append(" ");
128       sb.append(_SRESERVEDWORD12065439220);
129       return sb.toString().trim();
130    }
131
132    public Object JavaDoc clone() throws CloneNotSupportedException JavaDoc {
133       return this;
134    }
135
136    public ColumnDetails[] getColumnDetails() throws DException {
137       ColumnDetails[] searchedCaseStatementWhenClauseCD = null, caseStatementElseClauseCD = null;
138       ArrayList listOfSearchedCaseStatementWhenClauseCD = new ArrayList();
139       if (_Optcasestatementelseclause2 != null) {
140          caseStatementElseClauseCD = _Optcasestatementelseclause2.getColumnDetails();
141       }
142       if (_Repsearchedcasestatementwhenclause3 != null) {
143          for (int i = 0; i < _Repsearchedcasestatementwhenclause3.length; i++) {
144             listOfSearchedCaseStatementWhenClauseCD.addAll(Arrays.asList(_Repsearchedcasestatementwhenclause3[i].getColumnDetails()));
145          }
146          searchedCaseStatementWhenClauseCD = (ColumnDetails[]) listOfSearchedCaseStatementWhenClauseCD.toArray(new ColumnDetails[0]);
147       }
148       return GeneralPurposeStaticClass.getJointColumnDetails(caseStatementElseClauseCD, searchedCaseStatementWhenClauseCD);
149    }
150
151    public _Reference[] checkSemantic(_ServerSession object) throws DException {
152       ArrayList set = new ArrayList();
153       if (_Optcasestatementelseclause2 != null) {
154          _Reference[] par1 = _Optcasestatementelseclause2.checkSemantic(object);
155          if (par1 != null) {
156             set.addAll(Arrays.asList(par1));
157          }
158       }
159       for (int i = 0; i < _Repsearchedcasestatementwhenclause3.length; i++) {
160          _Reference[] par2 = _Repsearchedcasestatementwhenclause3[i].checkSemantic(object);
161          if (par2 != null) {
162             set.addAll(Arrays.asList(par2));
163          }
164       }
165       return (_Reference[]) set.toArray(new _Reference[0]);
166    }
167
168    public void getTableIncluded(ArrayList aList) throws DException {
169       for (int i = 0; i < _Repsearchedcasestatementwhenclause3.length; i++) {
170          _Repsearchedcasestatementwhenclause3[i].getTableIncluded(aList);
171       }
172    }
173
174    public void getColumnsIncluded(ArrayList aList) throws DException {
175       for (int i = 0; i < _Repsearchedcasestatementwhenclause3.length; i++) {
176          _Repsearchedcasestatementwhenclause3[i].getColumnsIncluded(aList);
177       }
178    }
179 }
180
Popular Tags