OSDN Git Service

DBFlute-0.9.3に更新
[ea2ddl/ea2ddl.git] / ea2ddl-gen / dbflute-0.9.3 / templates / om / java / cbean / AbstractBsConditionQuery.vm
1 ${database.allClassCopyright}package ${glPackageBaseCQ};\r
2 \r
3 #set ($myClassName = "${myAbstractBaseConditionQueryClassName}")\r
4 import java.util.Collection;\r
5 \r
6 import org.seasar.dbflute.cbean.*;\r
7 import org.seasar.dbflute.cbean.ckey.*;\r
8 import org.seasar.dbflute.cbean.coption.*;\r
9 import org.seasar.dbflute.cbean.cvalue.ConditionValue;\r
10 import org.seasar.dbflute.cbean.sqlclause.SqlClause;\r
11 import org.seasar.dbflute.dbmeta.DBMetaProvider;\r
12 #if ($table.hasClassification())\r
13 import ${glPackageBaseCommon}.${glDBMetaInstanceHandler};\r
14 #end\r
15 import ${glPackageBaseCommon}.*;\r
16 import ${glPackageCB}.*;\r
17 import ${glPackageCQ}.*;\r
18 \r
19 /**\r
20  * The abstract condition-query of ${table.name}.\r
21  * @author ${database.ClassAuthor}\r
22  */\r
23 public abstract class ${myClassName} extends AbstractConditionQuery {\r
24 \r
25     // ===================================================================================\r
26     //                                                                           Attribute\r
27     //                                                                           =========\r
28     protected final DBMetaProvider _dbmetaProvider = new ${glDBMetaInstanceHandler}();\r
29 \r
30     // ===================================================================================\r
31     //                                                                         Constructor\r
32     //                                                                         ===========\r
33     public ${myClassName}(ConditionQuery childQuery, SqlClause sqlClause, String aliasName, int nestLevel) {\r
34         super(childQuery, sqlClause, aliasName, nestLevel);\r
35     }\r
36 \r
37     // ===================================================================================\r
38     //                                                                     DBMeta Provider\r
39     //                                                                     ===============\r
40     @Override\r
41     protected DBMetaProvider getDBMetaProvider() {\r
42         return _dbmetaProvider;\r
43     }\r
44 \r
45     // ===================================================================================\r
46     //                                                                          Table Name\r
47     //                                                                          ==========\r
48     public String getTableDbName() {\r
49         return "${table.Name}";\r
50     }\r
51     \r
52     public String getTableSqlName() {\r
53         return "${table.tableSqlName}";\r
54     }\r
55 \r
56     // ===================================================================================\r
57     //                                                                               Query\r
58     //                                                                               =====\r
59 #foreach ($col in $table.columns)\r
60 #set ($tmpJavaName = "${col.javaName}")\r
61 #set ($tmpUncapitalisedJavaName = "${col.uncapitalisedJavaName}")\r
62 #if (${col.isJavaNativeStringObject()})\r
63 \r
64     /**\r
65      * Equal(=). And NullOrEmptyIgnored, OnlyOnceRegistered. {${col.columnDefinitionLineDisp}}\r
66      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as equal.\r
67      */\r
68     public void set${tmpJavaName}_Equal(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
69         reg${tmpJavaName}(CK_EQ, fRES(${tmpUncapitalisedJavaName}));\r
70     }\r
71 #if ($database.isMakeConditionQueryEqualEmptyString())\r
72 \r
73     /**\r
74      * Equal(=). As the empty-string. And NullOrEmptyIgnored, OnlyOnceRegistered.\r
75      */\r
76     public void set${tmpJavaName}_Equal_EmptyString() {\r
77         reg${tmpJavaName}(CK_EQ, "");\r
78     }\r
79 #end\r
80 #if (${col.hasClassification()})\r
81 #foreach ($classificationMap in $col.classificationMapList)\r
82 \r
83     /**\r
84      * Equal(=). As ${classificationMap.get('name')}. And OnlyOnceRegistered. <br />\r
85      * $database.buildClassificationApplicationComment($classificationMap)\r
86      */\r
87     public void set${tmpJavaName}_Equal_${classificationMap.get('name')}() {\r
88         reg${tmpJavaName}(CK_EQ, ${glCDef}.${col.classificationName}.${classificationMap.get('name')}.code());\r
89     }\r
90 #end\r
91 #end\r
92 #if (${col.isAvailableStringNotEqual()})\r
93 \r
94     /**\r
95      * NotEqual(!=). And NullOrEmptyIgnored, OnlyOnceRegistered.\r
96      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as notEqual.\r
97      */\r
98     public void set${tmpJavaName}_NotEqual(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
99         reg${tmpJavaName}(CK_NE, fRES(${tmpUncapitalisedJavaName}));\r
100     }\r
101 #if (${col.hasClassification()})\r
102 #foreach ($classificationMap in $col.ClassificationMapList)\r
103 \r
104     /**\r
105      * NotEqual(=). As ${classificationMap.get('name')}. And OnlyOnceRegistered. <br />\r
106      * $database.buildClassificationApplicationComment($classificationMap)\r
107      */\r
108     public void set${tmpJavaName}_NotEqual_${classificationMap.get('name')}() {\r
109         reg${tmpJavaName}(CK_NE, ${glCDef}.${col.classificationName}.${classificationMap.get('name')}.code());\r
110     }\r
111 #end\r
112 #end\r
113 #end\r
114 #if (${col.isAvailableStringGreaterThan()})\r
115 \r
116     /**\r
117      * GreaterThan(&gt;). And NullOrEmptyIgnored, OnlyOnceRegistered.\r
118      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as greaterThan.\r
119      */\r
120     public void set${tmpJavaName}_GreaterThan(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
121         reg${tmpJavaName}(CK_GT, fRES(${tmpUncapitalisedJavaName}));\r
122     }\r
123 #end\r
124 #if (${col.isAvailableStringLessThan()})\r
125 \r
126     /**\r
127      * LessThan(&lt;). And NullOrEmptyIgnored, OnlyOnceRegistered.\r
128      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as lessThan.\r
129      */\r
130     public void set${tmpJavaName}_LessThan($col.javaNative ${tmpUncapitalisedJavaName}) {\r
131         reg${tmpJavaName}(CK_LT, fRES(${tmpUncapitalisedJavaName}));\r
132     }\r
133 #end\r
134 #if (${col.isAvailableStringGreaterEqual()})\r
135 \r
136     /**\r
137      * GreaterEqual(&gt;=). And NullOrEmptyIgnored, OnlyOnceRegistered.\r
138      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as greaterEqual.\r
139      */\r
140     public void set${tmpJavaName}_GreaterEqual(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
141         reg${tmpJavaName}(CK_GE, fRES(${tmpUncapitalisedJavaName}));\r
142     }\r
143 #end\r
144 #if (${col.isAvailableStringLessEqual()})\r
145 \r
146     /**\r
147      * LessEqual(&lt;=). And NullOrEmptyIgnored, OnlyOnceRegistered.\r
148      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as lessEqual.\r
149      */\r
150     public void set${tmpJavaName}_LessEqual(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
151         reg${tmpJavaName}(CK_LE, fRES(${tmpUncapitalisedJavaName}));\r
152     }\r
153 #end\r
154 #if (${col.isAvailableStringPrefixSearch()})\r
155 \r
156     /**\r
157      * PrefixSearch(like 'xxx%'). And NullOrEmptyIgnored, OnlyOnceRegistered.\r
158      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as prefixSearch.\r
159      */\r
160     public void set${tmpJavaName}_PrefixSearch(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
161         reg${tmpJavaName}(CK_PS, fRES(${tmpUncapitalisedJavaName}));\r
162     }\r
163 #end\r
164 #if (${col.isAvailableStringInScope()})\r
165 \r
166     /**\r
167      * InScope(in ('a', 'b')). And NullOrEmptyIgnored, NullOrEmptyElementIgnored, SeveralRegistered.\r
168      * @param ${tmpUncapitalisedJavaName}List The collection of ${col.uncapitalisedJavaName} as inScope.\r
169      */\r
170     public void set${tmpJavaName}_InScope(Collection<${col.javaNative}> ${tmpUncapitalisedJavaName}List) {\r
171         reg${tmpJavaName}(CK_INS, cTL(${tmpUncapitalisedJavaName}List));\r
172     }\r
173 #end\r
174 #if (${col.isAvailableStringNotInScope()})\r
175 \r
176     /**\r
177      * NotInScope(not in ('a', 'b')). And NullOrEmptyIgnored, NullOrEmptyElementIgnored, SeveralRegistered.\r
178      * @param ${tmpUncapitalisedJavaName}List The collection of ${col.uncapitalisedJavaName} as notInScope.\r
179      */\r
180     public void set${tmpJavaName}_NotInScope(Collection<${col.javaNative}> ${tmpUncapitalisedJavaName}List) {\r
181         reg${tmpJavaName}(CK_NINS, cTL(${tmpUncapitalisedJavaName}List));\r
182     }\r
183 #end\r
184 #if (${col.isAvailableStringLikeSearch()})\r
185 \r
186     /**\r
187      * LikeSearch(like 'xxx%' escape ...). And NullOrEmptyIgnored, SeveralRegistered.\r
188      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as likeSearch.\r
189      * @param likeSearchOption The option of like-search. (NotNull)\r
190      */\r
191     public void set${tmpJavaName}_LikeSearch(${col.javaNative} ${tmpUncapitalisedJavaName}, LikeSearchOption likeSearchOption) {\r
192         regLSQ(CK_LS, fRES(${tmpUncapitalisedJavaName}), getCValue${tmpJavaName}(), "${col.name}", likeSearchOption);\r
193     }\r
194 #end\r
195 #if (${col.isAvailableStringNotLikeSearch()})\r
196 \r
197     /**\r
198      * NotLikeSearch(not like 'xxx%' escape ...). And NullOrEmptyIgnored, SeveralRegistered.\r
199      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as notLikeSearch.\r
200      * @param likeSearchOption The option of not-like-search. (NotNull)\r
201      */\r
202     public void set${tmpJavaName}_NotLikeSearch(${col.javaNative} ${tmpUncapitalisedJavaName}, LikeSearchOption likeSearchOption) {\r
203         regLSQ(CK_NLS, fRES(${tmpUncapitalisedJavaName}), getCValue${tmpJavaName}(), "${col.name}", likeSearchOption);\r
204     }\r
205 #end\r
206 #if (${col.isSingleKeyForeignKey()} && !${col.foreignKey.hasFixedCondition()})\r
207 #set ($relatedCBClassName = "${col.foreignKey.foreignTableExtendedConditionBeanClassName}")\r
208 #set ($relatedCQClassName = "${col.foreignKey.foreignTableExtendedConditionQueryClassName}")\r
209 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${col.foreignKey.foreignPropertyNameInitCap}")\r
210 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${col.foreignKey.foreignPropertyNameInitCap}")\r
211 \r
212     public void inScope${col.foreignKey.foreignPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
213         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
214         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForInScopeSubQuery(); subQuery.query(cb);\r
215         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
216         registerInScopeSubQuery(cb.query(), "${col.name}", "${col.foreignKey.firstForeignColumnName}", subQueryPropertyName);\r
217     }\r
218     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
219 #end\r
220 #if (${col.hasSingleKeyReferrer()})\r
221 #foreach ($referrer in $col.singleKeyReferrers)\r
222 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
223 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
224 #if (${referrer.isOneToOne()})\r
225 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCapAsOne}")\r
226 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
227 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${referrer.ReferrerPropertyNameInitCapAsOne}")\r
228 #else\r
229 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCap}")\r
230 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${referrer.referrerPropertyNameInitCap}")\r
231 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${referrer.ReferrerPropertyNameInitCap}")\r
232 #end\r
233 \r
234     public void inScope${relationPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
235         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
236         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForInScopeSubQuery(); subQuery.query(cb);\r
237         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
238         registerInScopeSubQuery(cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName);\r
239     }\r
240     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
241 #end\r
242 #end\r
243 #if (${col.hasSingleKeyReferrer()})\r
244 #foreach ($referrer in $col.singleKeyReferrers)\r
245 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
246 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
247 #if (${referrer.isOneToOne()})\r
248 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCapAsOne}")\r
249 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotInScopeSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
250 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotInScopeSubQuery_${referrer.ReferrerPropertyNameInitCapAsOne}")\r
251 #else\r
252 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCap}")\r
253 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotInScopeSubQuery_${referrer.referrerPropertyNameInitCap}")\r
254 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotInScopeSubQuery_${referrer.ReferrerPropertyNameInitCap}")\r
255 #end\r
256 \r
257     public void notInScope${relationPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
258         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
259         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForInScopeSubQuery(); subQuery.query(cb);\r
260         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
261         registerNotInScopeSubQuery(cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName);\r
262     }\r
263     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
264 #end\r
265 #end\r
266 #if (${col.hasSingleKeyReferrer()})\r
267 #foreach ($referrer in $col.singleKeyReferrers)\r
268 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
269 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
270 #if (${referrer.isOneToOne()})\r
271 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCapAsOne}")\r
272 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
273 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
274 #else\r
275 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCap}")\r
276 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCap}")\r
277 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCap}")\r
278 #end\r
279 \r
280     /**\r
281      * Set up 'exists' sub-query. {exists (select ${referrer.firstLocalColumnName} from ${referrer.table.name} where ...)}\r
282      * @param subQuery The sub-query of ${subQueryPropertyNameInitCap} for 'exists'. (NotNull)\r
283      */\r
284     public void exists${relationPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
285         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
286         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForExistsSubQuery(); subQuery.query(cb);\r
287         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
288         registerExistsSubQuery(cb.query(), "${col.name}", "${referrer.FirstLocalColumnName}", subQueryPropertyName);\r
289     }\r
290     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
291 #end\r
292 #end\r
293 #if (${col.hasSingleKeyReferrer()})\r
294 #foreach ($referrer in $col.singleKeyReferrers)\r
295 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
296 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
297 #if (${referrer.isOneToOne()})\r
298 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCapAsOne}")\r
299 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
300 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
301 #else\r
302 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCap}")\r
303 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCap}")\r
304 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCap}")\r
305 #end\r
306 \r
307     /**\r
308      * Set up 'not exists' sub-query. {not exists (select ${referrer.firstLocalColumnName} from ${referrer.table.name} where ...)}\r
309      * @param subQuery The sub-query of ${subQueryPropertyNameInitCap} for 'not exists'. (NotNull)\r
310      */\r
311     public void notExists${relationPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
312         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
313         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForExistsSubQuery(); subQuery.query(cb);\r
314         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
315         registerNotExistsSubQuery(cb.query(), "${col.name}", "${referrer.FirstLocalColumnName}", subQueryPropertyName);\r
316     }\r
317     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
318 #end\r
319 #end\r
320 #if (${col.hasSingleKeyReferrer()})\r
321 #foreach ($referrer in $col.singleKeyReferrers)\r
322 #if (!${referrer.isOneToOne()})\r
323 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
324 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
325 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_SpecifyDerivedReferrer_${referrer.referrerPropertyNameInitCap}")\r
326 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_SpecifyDerivedReferrer_${referrer.referrerPropertyNameInitCap}")\r
327 \r
328     public void xsderive${referrer.referrerPropertyNameInitCap}(String function, SubQuery<${relatedCBClassName}> subQuery, String aliasName) {\r
329         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
330         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForDerivedReferrer(); subQuery.query(cb);\r
331         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
332         registerSpecifyDerivedReferrer(function, cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName, aliasName);\r
333     }\r
334     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
335 #end\r
336 #end\r
337 #end\r
338 #if (${col.hasSingleKeyReferrer()})\r
339 #foreach ($referrer in $col.singleKeyReferrers)\r
340 #if (!${referrer.isOneToOne()})\r
341 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
342 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
343 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_QueryDerivedReferrer_${referrer.referrerPropertyNameInitCap}")\r
344 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_QueryDerivedReferrer_${referrer.referrerPropertyNameInitCap}")\r
345 \r
346     public QDRFunction<${relatedCBClassName}> derived${referrer.referrerPropertyNameInitCap}() {\r
347         return xcreateQDRFunction${referrer.referrerPropertyNameInitCap}();\r
348     }\r
349     protected QDRFunction<${relatedCBClassName}> xcreateQDRFunction${referrer.referrerPropertyNameInitCap}() {\r
350         return new QDRFunction<${relatedCBClassName}>(new QDRSetupper<${relatedCBClassName}>() {\r
351             public void setup(String function, SubQuery<${relatedCBClassName}> subQuery, String operand, Object value) {\r
352                 xqderive${referrer.referrerPropertyNameInitCap}(function, subQuery, operand, value);\r
353             }\r
354         });\r
355     }\r
356     public void xqderive${referrer.referrerPropertyNameInitCap}(String function, SubQuery<${relatedCBClassName}> subQuery, String operand, Object value) {\r
357         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
358         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForDerivedReferrer(); subQuery.query(cb);\r
359         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
360         String parameterPropertyName = keep${subQueryPropertyNameInitCap}Parameter(value);\r
361         registerQueryDerivedReferrer(function, cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName, operand, value, parameterPropertyName);\r
362     }\r
363     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
364     public abstract String keep${subQueryPropertyNameInitCap}Parameter(Object parameterValue);\r
365 #end\r
366 #end\r
367 #end\r
368 #end\r
369 #if (${col.isJavaNativeNumberObject()})\r
370     \r
371     /**\r
372      * Equal(=). And NullIgnored, OnlyOnceRegistered. {${col.columnDefinitionLineDisp}}\r
373      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as equal.\r
374      */\r
375     public void set${tmpJavaName}_Equal(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
376         reg${tmpJavaName}(CK_EQ, ${tmpUncapitalisedJavaName});\r
377     }\r
378 #if (${col.hasClassification()})\r
379 #foreach ($classificationMap in $col.ClassificationMapList)\r
380 \r
381     /**\r
382      * Equal(=). As ${classificationMap.get('name')}. And NullIgnored, OnlyOnceRegistered. <br />\r
383      * $database.buildClassificationApplicationComment($classificationMap)\r
384      */\r
385     public void set${tmpJavaName}_Equal_${classificationMap.get('name')}() {\r
386         reg${tmpJavaName}(CK_EQ, new ${col.javaNative}(${glCDef}.${col.classificationName}.${classificationMap.get('name')}.code()));\r
387     }\r
388 #end\r
389 #end\r
390 #if (${col.isAvailableNumberNotEqual()})\r
391 \r
392     /**\r
393      * NotEqual(!=). And NullIgnored, OnlyOnceRegistered.\r
394      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as notEqual.\r
395      */\r
396     public void set${tmpJavaName}_NotEqual(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
397         reg${tmpJavaName}(CK_NE, ${tmpUncapitalisedJavaName});\r
398     }\r
399 #if (${col.hasClassification()})\r
400 #foreach ($classificationMap in $col.ClassificationMapList)\r
401 \r
402     /**\r
403      * NotEqual(!=). As ${classificationMap.get('name')}. And NullIgnored, OnlyOnceRegistered. <br />\r
404      * $database.buildClassificationApplicationComment($classificationMap)\r
405      */\r
406     public void set${tmpJavaName}_NotEqual_${classificationMap.get('name')}() {\r
407         reg${tmpJavaName}(CK_NE, new ${col.javaNative}(${glCDef}.${col.classificationName}.${classificationMap.get('name')}.code()));\r
408     }\r
409 #end\r
410 #end\r
411 #end\r
412 #if (${col.isAvailableNumberGreaterThan()})\r
413 \r
414     /**\r
415      * GreaterThan(&gt;). And NullIgnored, OnlyOnceRegistered.\r
416      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as greaterThan.\r
417      */\r
418     public void set${tmpJavaName}_GreaterThan(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
419         reg${tmpJavaName}(CK_GT, ${tmpUncapitalisedJavaName});\r
420     }\r
421 #end\r
422 #if (${col.isAvailableNumberLessThan()})\r
423 \r
424     /**\r
425      * LessThan(&lt;). And NullIgnored, OnlyOnceRegistered.\r
426      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as lessThan.\r
427      */\r
428     public void set${tmpJavaName}_LessThan(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
429         reg${tmpJavaName}(CK_LT, ${tmpUncapitalisedJavaName});\r
430     }\r
431 #end\r
432 #if (${col.isAvailableNumberGreaterEqual()})\r
433 \r
434     /**\r
435      * GreaterEqual(&gt;=). And NullIgnored, OnlyOnceRegistered.\r
436      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as greaterEqual.\r
437      */\r
438     public void set${tmpJavaName}_GreaterEqual(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
439         reg${tmpJavaName}(CK_GE, ${tmpUncapitalisedJavaName});\r
440     }\r
441 #end\r
442 #if (${col.isAvailableNumberLessEqual()})\r
443 \r
444     /**\r
445      * LessEqual(&lt;=). And NullIgnored, OnlyOnceRegistered.\r
446      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as lessEqual.\r
447      */\r
448     public void set${tmpJavaName}_LessEqual(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
449         reg${tmpJavaName}(CK_LE, ${tmpUncapitalisedJavaName});\r
450     }\r
451 #end\r
452 #if (${col.isAvailableNumberInScope()})\r
453 \r
454     /**\r
455      * InScope(in (1, 2)). And NullIgnored, NullElementIgnored, SeveralRegistered.\r
456      * @param ${tmpUncapitalisedJavaName}List The collection of ${col.uncapitalisedJavaName} as inScope.\r
457      */\r
458     public void set${tmpJavaName}_InScope(Collection<${col.javaNative}> ${tmpUncapitalisedJavaName}List) {\r
459         reg${tmpJavaName}(CK_INS, cTL(${tmpUncapitalisedJavaName}List));\r
460     }\r
461 #end\r
462 #if (${col.isAvailableNumberNotInScope()})\r
463 \r
464     /**\r
465      * NotInScope(not in (1, 2)). And NullIgnored, NullElementIgnored, SeveralRegistered.\r
466      * @param ${tmpUncapitalisedJavaName}List The collection of ${col.uncapitalisedJavaName} as notInScope.\r
467      */\r
468     public void set${tmpJavaName}_NotInScope(Collection<${col.javaNative}> ${tmpUncapitalisedJavaName}List) {\r
469         reg${tmpJavaName}(CK_NINS, cTL(${tmpUncapitalisedJavaName}List));\r
470     }\r
471 #end\r
472 #if (${col.isSingleKeyForeignKey()} && !${col.foreignKey.hasFixedCondition()})\r
473 #set ($relatedCBClassName = "${col.foreignKey.foreignTableExtendedConditionBeanClassName}")\r
474 #set ($relatedCQClassName = "${col.foreignKey.foreignTableExtendedConditionQueryClassName}")\r
475 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${col.foreignKey.foreignPropertyNameInitCap}")\r
476 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${col.foreignKey.foreignPropertyNameInitCap}")\r
477 \r
478     public void inScope${col.foreignKey.foreignPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
479         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
480         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForInScopeSubQuery(); subQuery.query(cb);\r
481         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
482         registerInScopeSubQuery(cb.query(), "${col.name}", "${col.foreignKey.firstForeignColumnName}", subQueryPropertyName);\r
483     }\r
484     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
485 #end\r
486 #if (${col.hasSingleKeyReferrer()})\r
487 #foreach ($referrer in $col.singleKeyReferrers)\r
488 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
489 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
490 #if (${referrer.isOneToOne()})\r
491 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCapAsOne}")\r
492 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
493 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${referrer.ReferrerPropertyNameInitCapAsOne}")\r
494 #else\r
495 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCap}")\r
496 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${referrer.referrerPropertyNameInitCap}")\r
497 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${referrer.ReferrerPropertyNameInitCap}")\r
498 #end\r
499 \r
500     public void inScope${relationPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
501         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
502         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForInScopeSubQuery(); subQuery.query(cb);\r
503         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
504         registerInScopeSubQuery(cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName);\r
505     }\r
506     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
507 #end\r
508 #end\r
509 #if (${col.hasSingleKeyReferrer()})\r
510 #foreach ($referrer in $col.singleKeyReferrers)\r
511 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
512 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
513 #if (${referrer.isOneToOne()})\r
514 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCapAsOne}")\r
515 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotInScopeSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
516 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotInScopeSubQuery_${referrer.ReferrerPropertyNameInitCapAsOne}")\r
517 #else\r
518 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCap}")\r
519 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotInScopeSubQuery_${referrer.referrerPropertyNameInitCap}")\r
520 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotInScopeSubQuery_${referrer.ReferrerPropertyNameInitCap}")\r
521 #end\r
522 \r
523     public void notInScope${relationPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
524         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
525         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForInScopeSubQuery(); subQuery.query(cb);\r
526         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
527         registerNotInScopeSubQuery(cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName);\r
528     }\r
529     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
530 #end\r
531 #end\r
532 #if (${col.hasSingleKeyReferrer()})\r
533 #foreach ($referrer in $col.singleKeyReferrers)\r
534 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
535 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
536 #if (${referrer.isOneToOne()})\r
537 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCapAsOne}")\r
538 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
539 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
540 #else\r
541 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCap}")\r
542 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCap}")\r
543 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCap}")\r
544 #end\r
545 \r
546     /**\r
547      * Set up 'exists' sub-query. {exists (select ${referrer.firstLocalColumnName} from ${referrer.table.name} where ...)}\r
548      * @param subQuery The sub-query of ${subQueryPropertyNameInitCap} for 'exists'. (NotNull)\r
549      */\r
550     public void exists${relationPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
551         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
552         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForExistsSubQuery(); subQuery.query(cb);\r
553         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
554         registerExistsSubQuery(cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName);\r
555     }\r
556     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
557 #end\r
558 #end\r
559 #if (${col.hasSingleKeyReferrer()})\r
560 #foreach ($referrer in $col.singleKeyReferrers)\r
561 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
562 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
563 #if (${referrer.isOneToOne()})\r
564 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCapAsOne}")\r
565 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
566 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")\r
567 #else\r
568 #set ($relationPropertyNameInitCap = "${referrer.referrerPropertyNameInitCap}")\r
569 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCap}")\r
570 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCap}")\r
571 #end\r
572 \r
573     /**\r
574      * Set up 'not exists' sub-query. {not exists (select ${referrer.firstLocalColumnName} from ${referrer.table.name} where ...)}\r
575      * @param subQuery The sub-query of ${subQueryPropertyNameInitCap} for 'not exists'. (NotNull)\r
576      */\r
577     public void notExists${relationPropertyNameInitCap}(SubQuery<${relatedCBClassName}> subQuery) {\r
578         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
579         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForExistsSubQuery(); subQuery.query(cb);\r
580         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
581         registerNotExistsSubQuery(cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName);\r
582     }\r
583     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
584 #end\r
585 #end\r
586 #if (${col.hasSingleKeyReferrer()})\r
587 #foreach ($referrer in $col.singleKeyReferrers)\r
588 #if (!${referrer.isOneToOne()})\r
589 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
590 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
591 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_SpecifyDerivedReferrer_${referrer.referrerPropertyNameInitCap}")\r
592 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_SpecifyDerivedReferrer_${referrer.referrerPropertyNameInitCap}")\r
593 \r
594     public void xsderive${referrer.referrerPropertyNameInitCap}(String function, SubQuery<${relatedCBClassName}> subQuery, String aliasName) {\r
595         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
596         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForDerivedReferrer(); subQuery.query(cb);\r
597         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
598         registerSpecifyDerivedReferrer(function, cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName, aliasName);\r
599     }\r
600     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
601 #end\r
602 #end\r
603 #end\r
604 #if (${col.hasSingleKeyReferrer()})\r
605 #foreach ($referrer in $col.singleKeyReferrers)\r
606 #if (!${referrer.isOneToOne()})\r
607 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")\r
608 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")\r
609 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_QueryDerivedReferrer_${referrer.referrerPropertyNameInitCap}")\r
610 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_QueryDerivedReferrer_${referrer.referrerPropertyNameInitCap}")\r
611 \r
612     public QDRFunction<${relatedCBClassName}> derived${referrer.referrerPropertyNameInitCap}() {\r
613         return xcreateQDRFunction${referrer.referrerPropertyNameInitCap}();\r
614     }\r
615     protected QDRFunction<${relatedCBClassName}> xcreateQDRFunction${referrer.referrerPropertyNameInitCap}() {\r
616         return new QDRFunction<${relatedCBClassName}>(new QDRSetupper<${relatedCBClassName}>() {\r
617             public void setup(String function, SubQuery<${relatedCBClassName}> subQuery, String operand, Object value) {\r
618                 xqderive${referrer.referrerPropertyNameInitCap}(function, subQuery, operand, value);\r
619             }\r
620         });\r
621     }\r
622     public void xqderive${referrer.referrerPropertyNameInitCap}(String function, SubQuery<${relatedCBClassName}> subQuery, String operand, Object value) {\r
623         assertObjectNotNull("subQuery<${relatedCBClassName}>", subQuery);\r
624         ${relatedCBClassName} cb = new ${relatedCBClassName}(); cb.xsetupForDerivedReferrer(); subQuery.query(cb);\r
625         String subQueryPropertyName = keep${subQueryPropertyNameInitCap}(cb.query()); // for saving query-value.\r
626         String parameterPropertyName = keep${subQueryPropertyNameInitCap}Parameter(value);\r
627         registerQueryDerivedReferrer(function, cb.query(), "${col.name}", "${referrer.firstLocalColumnName}", subQueryPropertyName, operand, value, parameterPropertyName);\r
628     }\r
629     public abstract String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery);\r
630     public abstract String keep${subQueryPropertyNameInitCap}Parameter(Object parameterValue);\r
631 #end\r
632 #end\r
633 #end\r
634 #end\r
635 #if (${col.isJavaNativeDateObject()})\r
636     \r
637     /**\r
638      * Equal(=). And NullIgnored, OnlyOnceRegistered. {${col.columnDefinitionLineDisp}}\r
639      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as equal.\r
640      */\r
641     public void set${tmpJavaName}_Equal($col.javaNative ${tmpUncapitalisedJavaName}) {\r
642         reg${tmpJavaName}(CK_EQ, ${tmpUncapitalisedJavaName});\r
643     }\r
644 #if (${col.isAvailableDateNotEqual()})\r
645 \r
646     /**\r
647      * NotEqual(!=). And NullIgnored, OnlyOnceRegistered.\r
648      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as notEqual.\r
649      */\r
650     public void set${tmpJavaName}_NotEqual($col.javaNative ${tmpUncapitalisedJavaName}) {\r
651         reg${tmpJavaName}(CK_NE, ${tmpUncapitalisedJavaName});\r
652     }\r
653 #end\r
654 #if (${col.isAvailableDateGreaterThan()})\r
655 \r
656     /**\r
657      * GreaterThan(&gt;). And NullIgnored, OnlyOnceRegistered.\r
658      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as greaterThan.\r
659      */\r
660     public void set${tmpJavaName}_GreaterThan($col.javaNative ${tmpUncapitalisedJavaName}) {\r
661         reg${tmpJavaName}(CK_GT, ${tmpUncapitalisedJavaName});\r
662     }\r
663 #end\r
664 #if (${col.isAvailableDateLessThan()})\r
665 \r
666     /**\r
667      * LessThan(&gt;). And NullIgnored, OnlyOnceRegistered.\r
668      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as lessThan.\r
669      */\r
670     public void set${tmpJavaName}_LessThan($col.javaNative ${tmpUncapitalisedJavaName}) {\r
671         reg${tmpJavaName}(CK_LT, ${tmpUncapitalisedJavaName});\r
672     }\r
673 #end\r
674 #if (${col.isAvailableDateGreaterEqual()})\r
675 \r
676     /**\r
677      * GreaterEqual(&gt;). And NullIgnored, OnlyOnceRegistered.\r
678      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as greaterEqual.\r
679      */\r
680     public void set${tmpJavaName}_GreaterEqual($col.javaNative ${tmpUncapitalisedJavaName}) {\r
681         reg${tmpJavaName}(CK_GE, ${tmpUncapitalisedJavaName});\r
682     }\r
683 #end\r
684 #if (${col.isAvailableDateLessEqual()})\r
685 \r
686     /**\r
687      * LessEqual(&gt;). And NullIgnored, OnlyOnceRegistered.\r
688      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as lessEqual.\r
689      */\r
690     public void set${tmpJavaName}_LessEqual($col.javaNative ${tmpUncapitalisedJavaName}) {\r
691         reg${tmpJavaName}(CK_LE, ${tmpUncapitalisedJavaName});\r
692     }\r
693 #end\r
694 #if (${col.isAvailableDateFromTo()} && !${col.isTorqueTypeTime()})\r
695 \r
696     /**\r
697      * FromTo($fromDate &lt;= COLUMN_NAME &lt;= $toDate). And NullIgnored, OnlyOnceRegistered. {${col.columnDefinitionLineDisp}}\r
698      * @param fromDate The from-date of ${col.uncapitalisedJavaName}. (Nullable)\r
699      * @param toDate The to-date of ${col.uncapitalisedJavaName}. (Nullable)\r
700      * @param fromToOption The option of from-to. (NotNull)\r
701      */\r
702     public void set${tmpJavaName}_FromTo(java.util.Date fromDate, java.util.Date toDate, FromToOption fromToOption) {\r
703 #if ($col.javaNative == "java.util.Date")\r
704         regFTQ(fromDate, toDate, getCValue${tmpJavaName}(), "${col.name}", fromToOption);\r
705 #else\r
706         regFTQ((fromDate != null ? new ${col.javaNative}(fromDate.getTime()) : null), (toDate != null ? new ${col.javaNative}(toDate.getTime()) : null), getCValue${tmpJavaName}(), "${col.name}", fromToOption);\r
707 #end\r
708     }\r
709 \r
710     /**\r
711      * FromTo($fromDate &lt;= COLUMN_NAME &lt; $toDate + 1). And NullIgnored, OnlyOnceRegistered. {${col.columnDefinitionLineDisp}}\r
712      * @param fromDate The from-date of ${col.uncapitalisedJavaName}. (Nullable)\r
713      * @param toDate The to-date of ${col.uncapitalisedJavaName}. (Nullable)\r
714      */\r
715     public void set${tmpJavaName}_DateFromTo(java.util.Date fromDate, java.util.Date toDate) {\r
716         set${tmpJavaName}_FromTo(fromDate, toDate, new DateFromToOption());\r
717     }\r
718 #end\r
719 #end\r
720 #if (${col.isJavaNativeBooleanObject()})\r
721 \r
722     /**\r
723      * Equal(=). And NullIgnored, OnlyOnceRegistered. {${col.columnDefinitionLineDisp}}\r
724      * @param ${tmpUncapitalisedJavaName} The value of ${col.uncapitalisedJavaName} as equal.\r
725      */\r
726     public void set${tmpJavaName}_Equal(${col.javaNative} ${tmpUncapitalisedJavaName}) {\r
727         reg${tmpJavaName}(CK_EQ, ${tmpUncapitalisedJavaName});\r
728     }\r
729 #if (${col.hasClassification()})\r
730 #foreach ($classificationMap in $col.classificationMapList)\r
731 \r
732     /**\r
733      * Equal(=). As ${classificationMap.get('name')}. And OnlyOnceRegistered. <br />\r
734      * $database.buildClassificationApplicationComment($classificationMap)\r
735      */\r
736     public void set${tmpJavaName}_Equal_${classificationMap.get('name')}() {\r
737         reg${tmpJavaName}(CK_EQ, new ${col.javaNative}(${glCDef}.${col.classificationName}.${classificationMap.get('name')}.code()));\r
738     }\r
739 #end\r
740 #end\r
741 #end\r
742 #if (!${col.isNotNull()} || ${col.isPrimaryKey()})\r
743 \r
744     /**\r
745      * IsNull(is null). And OnlyOnceRegistered.\r
746      */\r
747     public void set${tmpJavaName}_IsNull() { reg${tmpJavaName}(CK_ISN, DOBJ); }\r
748 \r
749     /**\r
750      * IsNotNull(is not null). And OnlyOnceRegistered.\r
751      */\r
752     public void set${tmpJavaName}_IsNotNull() { reg${tmpJavaName}(CK_ISNN, DOBJ); }\r
753 #end\r
754 \r
755     protected void reg${tmpJavaName}(ConditionKey k, Object v) { regQ(k, v, getCValue${tmpJavaName}(), "${col.name}"); }\r
756     abstract protected ConditionValue getCValue${tmpJavaName}();\r
757 #end\r
758 #if ($table.hasOnlyOnePrimaryKey())\r
759 \r
760     // ===================================================================================\r
761     //                                                                     Scalar SubQuery\r
762     //                                                                     ===============\r
763     public SSQFunction<${myConditionBeanClassName}> scalar_Equal() {\r
764         return xcreateSSQFunction("=");\r
765     }\r
766 \r
767     public SSQFunction<${myConditionBeanClassName}> scalar_GreaterEqual() {\r
768         return xcreateSSQFunction(">=");\r
769     }\r
770 \r
771     public SSQFunction<${myConditionBeanClassName}> scalar_GreaterThan() {\r
772         return xcreateSSQFunction(">");\r
773     }\r
774 \r
775     public SSQFunction<${myConditionBeanClassName}> scalar_LessEqual() {\r
776         return xcreateSSQFunction("<=");\r
777     }\r
778     \r
779     public SSQFunction<${myConditionBeanClassName}> scalar_LessThan() {\r
780         return xcreateSSQFunction("<");\r
781     }\r
782     \r
783     protected SSQFunction<${myConditionBeanClassName}> xcreateSSQFunction(final String operand) {\r
784         return new SSQFunction<${myConditionBeanClassName}>(new SSQSetupper<${myConditionBeanClassName}>() {\r
785             public void setup(String function, SubQuery<${myConditionBeanClassName}> subQuery) {\r
786                 xscalarSubQuery(function, subQuery, operand);\r
787             }\r
788         });\r
789     }\r
790 \r
791     protected void xscalarSubQuery(String function, SubQuery<${myConditionBeanClassName}> subQuery, String operand) {\r
792         assertObjectNotNull("subQuery<${myConditionBeanClassName}>", subQuery);\r
793         ${myConditionBeanClassName} cb = new ${myConditionBeanClassName}(); cb.xsetupForScalarSubQuery(); subQuery.query(cb);\r
794         String subQueryPropertyName = keepScalarSubQuery(cb.query()); // for saving query-value.\r
795         registerScalarSubQuery(function, cb.query(), subQueryPropertyName, operand);\r
796     }\r
797     public abstract String keepScalarSubQuery(${myConditionQueryClassName} subQuery);\r
798 \r
799     // ===================================================================================\r
800     //                                                             MySelf InScope SubQuery\r
801     //                                                             =======================\r
802     /**\r
803      * Myself InScope SubQuery. {mainly for CLOB and Union}\r
804      * @param subQuery The implementation of sub query. (NotNull)\r
805      */\r
806     public void myselfInScope(SubQuery<${myConditionBeanClassName}> subQuery) {\r
807         assertObjectNotNull("subQuery<${myConditionBeanClassName}>", subQuery);\r
808         ${myConditionBeanClassName} cb = new ${myConditionBeanClassName}(); cb.xsetupForInScopeSubQuery(); subQuery.query(cb);\r
809         String subQueryPropertyName = keepMyselfInScopeSubQuery(cb.query()); // for saving query-value.\r
810         registerInScopeSubQuery(cb.query(), "${table.primaryKeyAsOne.name}", "${table.primaryKeyAsOne.name}", subQueryPropertyName);\r
811     }\r
812     public abstract String keepMyselfInScopeSubQuery(${myConditionQueryClassName} subQuery);\r
813 #end\r
814 \r
815     // ===================================================================================\r
816     //                                                                       Very Internal\r
817     //                                                                       =============\r
818     // Very Internal (for Suppressing Warn about 'Not Use Import')\r
819     String xCB() { return ${myConditionBeanClassName}.class.getName(); }\r
820     String xCQ() { return ${myConditionQueryClassName}.class.getName(); }\r
821     String xLSO() { return LikeSearchOption.class.getName(); }\r
822 }\r