1 ${database.allClassCopyright}package ${glPackageBaseCQ};
\r
2 #set ($myClassName = "${myBaseConditionQueryClassName}")
\r
4 import java.util.Map;
\r
6 import ${glPackageBaseCommonCBean}.*;
\r
7 import ${glPackageBaseCommonCValue}.${glConditionValueName};
\r
8 import ${glPackageBaseCommonSqlClause}.${glSqlClauseName};
\r
9 import ${glPackageCIQ}.*;
\r
10 import ${glPackageCQ}.*;
\r
13 * The base condition-query of ${table.name}.
\r
14 * @author ${database.ClassAuthor}
\r
15 */${database.outputSuppressWarningsAfterLineSeparator()}
\r
16 public class ${myClassName} extends ${myAbstractBaseConditionQueryClassName} {
\r
18 // ===================================================================================
\r
21 protected ${myConditionInlineQueryClassName} _inlineQuery;
\r
23 // ===================================================================================
\r
26 public ${myClassName}(${glConditionQueryInterfaceName} childQuery, ${glSqlClauseName} sqlClause, String aliasName, int nestLevel) {
\r
27 super(childQuery, sqlClause, aliasName, nestLevel);
\r
30 // ===================================================================================
\r
34 * Prepare inline query. <br />
\r
35 * {select ... from ... left outer join (select * from ${table.name}) where abc = [abc] ...}
\r
36 * @return Inline query. (NotNull)
\r
38 public ${myConditionInlineQueryClassName} inline() {
\r
39 if (_inlineQuery == null) {
\r
40 _inlineQuery = new ${myConditionInlineQueryClassName}(getChildQuery(), getSqlClause(), getAliasName(), getNestLevel(), this);
\r
42 _inlineQuery.xsetOnClauseInline(false); return _inlineQuery;
\r
46 * Prepare on-clause query. <br />
\r
47 * {select ... from ... left outer join ${table.name} on ... and abc = [abc] ...}
\r
48 * @return On-clause query. (NotNull)
\r
50 public ${myConditionInlineQueryClassName} on() {
\r
51 if (isBaseQuery(this)) { throw new UnsupportedOperationException("Unsupported onClause of Base Table!"); }
\r
52 ${myConditionInlineQueryClassName} inlineQuery = inline(); inlineQuery.xsetOnClauseInline(true); return inlineQuery;
\r
55 // ===================================================================================
\r
58 #foreach ($col in $table.columns)
\r
59 #set ($tmpJavaName = "${col.JavaName}")
\r
60 #set ($tmpUncapitalisedJavaName = "${col.UncapitalisedJavaName}")
\r
62 protected ${glConditionValueName} _${tmpUncapitalisedJavaName};
\r
63 public ${glConditionValueName} get${tmpJavaName}() {
\r
64 if (_${tmpUncapitalisedJavaName} == null) { _${tmpUncapitalisedJavaName} = new ${glConditionValueName}(); }
\r
65 return _${tmpUncapitalisedJavaName};
\r
67 protected ${glConditionValueName} getCValue${tmpJavaName}() { return get${tmpJavaName}(); }
\r
68 #if (${col.isJavaNativeStringObject()})
\r
69 #if (${col.isSingleKeyForeignKey()})
\r
70 #set ($relatedCQClassName = "${col.foreignKey.foreignTableExtendedConditionQueryClassName}")
\r
71 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${col.foreignKey.foreignPropertyNameInitCap}")
\r
72 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${col.foreignKey.foreignPropertyNameInitCap}")
\r
73 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
75 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
76 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
77 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
78 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
79 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
80 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
83 #if (${col.hasSingleKeyReferrer()})
\r
84 #foreach ($referrer in $col.singleKeyReferrers)
\r
85 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
86 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
87 #if (${referrer.isOneToOne()})
\r
88 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
89 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${referrer.ReferrerPropertyNameInitCapAsOne}")
\r
91 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
92 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${referrer.ReferrerPropertyNameInitCap}")
\r
95 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
96 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
97 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
98 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
99 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
100 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
104 #if (${col.hasSingleKeyReferrer()})
\r
105 #foreach ($referrer in $col.singleKeyReferrers)
\r
106 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
107 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
108 #if (${referrer.isOneToOne()})
\r
109 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotInScopeSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
110 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotInScopeSubQuery_${referrer.ReferrerPropertyNameInitCapAsOne}")
\r
112 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotInScopeSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
113 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotInScopeSubQuery_${referrer.ReferrerPropertyNameInitCap}")
\r
116 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
117 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
118 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
119 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
120 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
121 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
125 #if (${col.hasSingleKeyReferrer()})
\r
126 #foreach ($referrer in $col.singleKeyReferrers)
\r
127 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
128 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
129 #if (${referrer.isOneToOne()})
\r
130 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
131 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
133 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
134 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
137 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
138 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
139 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
140 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
141 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
142 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
146 #if (${col.hasSingleKeyReferrer()})
\r
147 #foreach ($referrer in $col.singleKeyReferrers)
\r
148 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
149 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
150 #if (${referrer.isOneToOne()})
\r
151 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
152 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
154 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
155 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
158 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
159 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
160 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
161 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
162 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
163 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
167 #if (${col.hasSingleKeyReferrer()})
\r
168 #foreach ($referrer in $col.singleKeyReferrers)
\r
169 #if (!${referrer.isOneToOne()})
\r
170 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")
\r
171 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
172 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_DeriveSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
173 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_DeriveSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
174 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
176 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
177 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
178 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
179 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
180 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
181 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
187 #if (${col.isJavaNativeNumberObject()})
\r
188 #if (${col.isSingleKeyForeignKey()})
\r
189 #set ($relatedCQClassName = "${col.foreignKey.foreignTableExtendedConditionQueryClassName}")
\r
190 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${col.foreignKey.foreignPropertyNameInitCap}")
\r
191 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${col.foreignKey.foreignPropertyNameInitCap}")
\r
192 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
194 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
195 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
196 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
197 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
198 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
199 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
202 #if (${col.hasSingleKeyReferrer()})
\r
203 #foreach ($referrer in $col.singleKeyReferrers)
\r
204 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
205 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
206 #if (${referrer.isOneToOne()})
\r
207 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
208 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${referrer.ReferrerPropertyNameInitCapAsOne}")
\r
210 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_InScopeSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
211 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_InScopeSubQuery_${referrer.ReferrerPropertyNameInitCap}")
\r
214 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
215 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
216 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
217 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
218 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
219 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
223 #if (${col.hasSingleKeyReferrer()})
\r
224 #foreach ($referrer in $col.singleKeyReferrers)
\r
225 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
226 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
227 #if (${referrer.isOneToOne()})
\r
228 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotInScopeSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
229 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotInScopeSubQuery_${referrer.ReferrerPropertyNameInitCapAsOne}")
\r
231 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotInScopeSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
232 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotInScopeSubQuery_${referrer.ReferrerPropertyNameInitCap}")
\r
235 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
236 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
237 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
238 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
239 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
240 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
244 #if (${col.hasSingleKeyReferrer()})
\r
245 #foreach ($referrer in $col.singleKeyReferrers)
\r
246 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
247 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
248 #if (${referrer.isOneToOne()})
\r
249 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
250 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
252 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
253 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_ExistsSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
256 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
257 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
258 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
259 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
260 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
261 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
265 #if (${col.hasSingleKeyReferrer()})
\r
266 #foreach ($referrer in $col.singleKeyReferrers)
\r
267 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
268 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
269 #if (${referrer.isOneToOne()})
\r
270 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
271 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCapAsOne}")
\r
273 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
274 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_NotExistsSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
277 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
278 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
279 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
280 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
281 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
282 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
286 #if (${col.hasSingleKeyReferrer()})
\r
287 #foreach ($referrer in $col.singleKeyReferrers)
\r
288 #if (!${referrer.isOneToOne()})
\r
289 #set ($relatedCBClassName = "${referrer.referrerTableExtendedConditionBeanClassName}")
\r
290 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
291 #set ($subQueryPropertyNameInitCap = "${tmpJavaName}_DeriveSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
292 #set ($subQueryPropertyName = "${tmpUncapitalisedJavaName}_DeriveSubQuery_${referrer.referrerPropertyNameInitCap}")
\r
293 #set ($subQueryKeepMapGeneric = "String, ${relatedCQClassName}")
\r
295 protected Map<${subQueryKeepMapGeneric}> _${subQueryPropertyName}Map;
\r
296 public Map<${subQueryKeepMapGeneric}> get${subQueryPropertyNameInitCap}() { return _${subQueryPropertyName}Map; }
\r
297 public String keep${subQueryPropertyNameInitCap}(${relatedCQClassName} subQuery) {
\r
298 if (_${subQueryPropertyName}Map == null) { _${subQueryPropertyName}Map = newLinkedHashMap(); }
\r
299 String key = "subQueryMapKey" + (_${subQueryPropertyName}Map.size() + 1);
\r
300 _${subQueryPropertyName}Map.put(key, subQuery); return "${subQueryPropertyName}." + key;
\r
307 public ${myClassName} addOrderBy_${tmpJavaName}_Asc() { regOBA("${col.name}"); return this; }
\r
308 public ${myClassName} addOrderBy_${tmpJavaName}_Desc() { regOBD("${col.name}"); return this; }
\r
311 // ===================================================================================
\r
312 // Specified Derived OrderBy
\r
313 // =========================
\r
314 public ${myClassName} addSpecifiedDerivedOrderBy_Asc(String aliasName) { registerSpecifiedDerivedOrderBy_Asc(aliasName); return this; }
\r
315 public ${myClassName} addSpecifiedDerivedOrderBy_Desc(String aliasName) { registerSpecifiedDerivedOrderBy_Desc(aliasName); return this; }
\r
317 // ===================================================================================
\r
320 protected void reflectRelationOnUnionQuery(${glConditionQueryInterfaceName} baseQueryAsSuper, ${glConditionQueryInterfaceName} unionQueryAsSuper) {
\r
321 #if ($table.hasForeignKeyOrRefererAsOne())
\r
322 ${myConditionQueryClassName} baseQuery = (${myConditionQueryClassName})baseQueryAsSuper;
\r
323 ${myConditionQueryClassName} unionQuery = (${myConditionQueryClassName})unionQueryAsSuper;
\r
325 #foreach ($foreignKeys in $table.foreignKeys)
\r
326 if (baseQuery.hasConditionQuery${foreignKeys.foreignPropertyNameInitCap}()) {
\r
327 unionQuery.query${foreignKeys.foreignPropertyNameInitCap}().reflectRelationOnUnionQuery(baseQuery.query${foreignKeys.foreignPropertyNameInitCap}(), unionQuery.query${foreignKeys.foreignPropertyNameInitCap}());
\r
330 #foreach ($refferer in $table.referrers)
\r
331 #if (${refferer.isOneToOne()})
\r
332 if (baseQuery.hasConditionQuery${refferer.reffererPropertyNameInitCapAsOne}()) {
\r
333 unionQuery.query${refferer.reffererPropertyNameInitCapAsOne}().reflectRelationOnUnionQuery(baseQuery.query${refferer.reffererPropertyNameInitCapAsOne}(), unionQuery.query${refferer.reffererPropertyNameInitCapAsOne}());
\r
339 // ===================================================================================
\r
342 #foreach ($foreignKeys in $table.foreignKeys)
\r
343 #set ($foreignCQClassName = "${foreignKeys.foreignTableExtendedConditionQueryClassName}")
\r
345 public ${foreignCQClassName} query${foreignKeys.ForeignPropertyNameInitCap}() {
\r
346 return getConditionQuery${foreignKeys.ForeignPropertyNameInitCap}();
\r
348 protected ${foreignCQClassName} _conditionQuery${foreignKeys.ForeignPropertyNameInitCap};
\r
349 public ${foreignCQClassName} getConditionQuery${foreignKeys.ForeignPropertyNameInitCap}() {
\r
350 if (_conditionQuery${foreignKeys.foreignPropertyNameInitCap} == null) {
\r
351 _conditionQuery${foreignKeys.foreignPropertyNameInitCap} = createQuery${foreignKeys.foreignPropertyNameInitCap}();
\r
352 setupOuterJoin_${foreignKeys.foreignPropertyNameInitCap}();
\r
354 return _conditionQuery${foreignKeys.foreignPropertyNameInitCap};
\r
356 protected void setupOuterJoin_${foreignKeys.foreignPropertyNameInitCap}() {
\r
357 Map<String, String> joinOnMap = newLinkedHashMap();
\r
358 #foreach ($columnName in $foreignKeys.LocalColumns)
\r
359 #set ($localColumn = $table.getColumn($columnName))
\r
360 #set ($foreignColumnName = $foreignKeys.getLocalForeignMapping().get($columnName))
\r
361 joinOnMap.put(getRealColumnName("${localColumn.name}"), getConditionQuery${foreignKeys.foreignPropertyNameInitCap}().getRealColumnName("${foreignColumnName}"));
\r
363 #if ($foreignKeys.hasFixedCondition())
\r
364 joinOnMap.put("$$fixedCondition$$", prepareFixedCondition("${foreignKeys.fixedCondition}", getRealAliasName(), getConditionQuery${foreignKeys.foreignPropertyNameInitCap}().getRealAliasName()));
\r
366 registerOuterJoin(getConditionQuery${foreignKeys.foreignPropertyNameInitCap}(), joinOnMap);
\r
368 protected ${foreignCQClassName} createQuery${foreignKeys.foreignPropertyNameInitCap}() {
\r
369 String nrp = resolveNextRelationPath("${table.name}", "${foreignKeys.foreignPropertyName}");
\r
370 String jan = resolveJoinAliasName(nrp, getNextNestLevel());
\r
371 ${foreignCQClassName} cq = new ${foreignCQClassName}(this, getSqlClause(), jan, getNextNestLevel());
\r
372 cq.xsetForeignPropertyName("${foreignKeys.foreignPropertyName}"); cq.xsetRelationPath(nrp); return cq;
\r
374 public boolean hasConditionQuery${foreignKeys.ForeignPropertyNameInitCap}() {
\r
375 return _conditionQuery${foreignKeys.ForeignPropertyNameInitCap} != null;
\r
379 #foreach ($referrer in $table.referrers)
\r
380 #set ($relatedCQClassName = "${referrer.referrerTableExtendedConditionQueryClassName}")
\r
381 #if (${referrer.isOneToOne()})
\r
383 public ${relatedCQClassName} query${referrer.referrerPropertyNameInitCapAsOne}() {
\r
384 return getConditionQuery${referrer.referrerPropertyNameInitCapAsOne}();
\r
386 protected ${relatedCQClassName} _conditionQuery${referrer.referrerPropertyNameInitCapAsOne};
\r
387 public ${relatedCQClassName} getConditionQuery${referrer.referrerPropertyNameInitCapAsOne}() {
\r
388 if (_conditionQuery${referrer.referrerPropertyNameInitCapAsOne} == null) {
\r
389 _conditionQuery${referrer.referrerPropertyNameInitCapAsOne} = createQuery${referrer.referrerPropertyNameInitCapAsOne}();
\r
390 setupOuterJoin_${referrer.referrerPropertyNameInitCapAsOne}();
\r
392 return _conditionQuery${referrer.referrerPropertyNameInitCapAsOne};
\r
394 protected void setupOuterJoin_${referrer.referrerPropertyNameInitCapAsOne}() {
\r
395 Map<String, String> joinOnMap = newLinkedHashMap();
\r
396 #foreach ($columnName in $referrer.foreignColumns)
\r
397 #set ($foreignColumn = $table.getColumn($columnName))
\r
398 #set ($referrerColumnName = $referrer.getForeignLocalMapping().get($columnName))
\r
399 joinOnMap.put(getRealColumnName("${foreignColumn.name}"), getConditionQuery${referrer.referrerPropertyNameInitCapAsOne}().getRealColumnName("${referrerColumnName}"));
\r
401 #if ($referrer.hasFixedCondition())
\r
402 joinOnMap.put("$$fixedCondition$$", prepareFixedCondition("${referrer.fixedCondition}", getRealAliasName(), getConditionQuery${referrer.referrerPropertyNameInitCapAsOne}().getRealAliasName()));
\r
404 registerOuterJoin(getConditionQuery${referrer.referrerPropertyNameInitCapAsOne}(), joinOnMap);
\r
406 protected ${relatedCQClassName} createQuery${referrer.referrerPropertyNameInitCapAsOne}() {
\r
407 String nrp = resolveNextRelationPath("${table.name}", "${referrer.referrerPropertyNameAsOne}");
\r
408 String jan = resolveJoinAliasName(nrp, getNextNestLevel());
\r
409 ${relatedCQClassName} cq = new ${relatedCQClassName}(this, getSqlClause(), jan, getNextNestLevel());
\r
410 cq.xsetForeignPropertyName("${referrer.referrerPropertyNameAsOne}"); cq.xsetRelationPath(nrp); return cq;
\r
412 public boolean hasConditionQuery${referrer.referrerPropertyNameInitCapAsOne}() {
\r
413 return _conditionQuery${referrer.referrerPropertyNameInitCapAsOne} != null;
\r
418 protected String getConditionQueryClassNameInternally() { return ${myConditionQueryClassName}.class.getName(); }
\r
419 protected String getMapClassNameInternally() { return Map.class.getName(); }
\r