001
014
015 package com.liferay.portlet.wiki.service.persistence;
016
017 import com.liferay.portal.NoSuchModelException;
018 import com.liferay.portal.kernel.annotation.BeanReference;
019 import com.liferay.portal.kernel.cache.CacheRegistryUtil;
020 import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
021 import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
022 import com.liferay.portal.kernel.dao.orm.FinderPath;
023 import com.liferay.portal.kernel.dao.orm.Query;
024 import com.liferay.portal.kernel.dao.orm.QueryPos;
025 import com.liferay.portal.kernel.dao.orm.QueryUtil;
026 import com.liferay.portal.kernel.dao.orm.Session;
027 import com.liferay.portal.kernel.exception.SystemException;
028 import com.liferay.portal.kernel.log.Log;
029 import com.liferay.portal.kernel.log.LogFactoryUtil;
030 import com.liferay.portal.kernel.util.GetterUtil;
031 import com.liferay.portal.kernel.util.InstanceFactory;
032 import com.liferay.portal.kernel.util.OrderByComparator;
033 import com.liferay.portal.kernel.util.StringBundler;
034 import com.liferay.portal.kernel.util.StringPool;
035 import com.liferay.portal.kernel.util.StringUtil;
036 import com.liferay.portal.kernel.util.Validator;
037 import com.liferay.portal.kernel.uuid.PortalUUIDUtil;
038 import com.liferay.portal.model.ModelListener;
039 import com.liferay.portal.service.persistence.BatchSessionUtil;
040 import com.liferay.portal.service.persistence.CompanyPersistence;
041 import com.liferay.portal.service.persistence.GroupPersistence;
042 import com.liferay.portal.service.persistence.PortletPreferencesPersistence;
043 import com.liferay.portal.service.persistence.ResourcePersistence;
044 import com.liferay.portal.service.persistence.SubscriptionPersistence;
045 import com.liferay.portal.service.persistence.UserPersistence;
046 import com.liferay.portal.service.persistence.WorkflowInstanceLinkPersistence;
047 import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
048
049 import com.liferay.portlet.asset.service.persistence.AssetCategoryPersistence;
050 import com.liferay.portlet.asset.service.persistence.AssetEntryPersistence;
051 import com.liferay.portlet.asset.service.persistence.AssetTagPersistence;
052 import com.liferay.portlet.expando.service.persistence.ExpandoValuePersistence;
053 import com.liferay.portlet.messageboards.service.persistence.MBMessagePersistence;
054 import com.liferay.portlet.social.service.persistence.SocialActivityPersistence;
055 import com.liferay.portlet.social.service.persistence.SocialEquityLogPersistence;
056 import com.liferay.portlet.wiki.NoSuchPageException;
057 import com.liferay.portlet.wiki.model.WikiPage;
058 import com.liferay.portlet.wiki.model.impl.WikiPageImpl;
059 import com.liferay.portlet.wiki.model.impl.WikiPageModelImpl;
060
061 import java.io.Serializable;
062
063 import java.util.ArrayList;
064 import java.util.Collections;
065 import java.util.List;
066
067
073 public class WikiPagePersistenceImpl extends BasePersistenceImpl<WikiPage>
074 implements WikiPagePersistence {
075 public static final String FINDER_CLASS_NAME_ENTITY = WikiPageImpl.class.getName();
076 public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
077 ".List";
078 public static final FinderPath FINDER_PATH_FIND_BY_UUID = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
079 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
080 "findByUuid",
081 new String[] {
082 String.class.getName(),
083
084 "java.lang.Integer", "java.lang.Integer",
085 "com.liferay.portal.kernel.util.OrderByComparator"
086 });
087 public static final FinderPath FINDER_PATH_COUNT_BY_UUID = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
088 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
089 "countByUuid", new String[] { String.class.getName() });
090 public static final FinderPath FINDER_PATH_FETCH_BY_UUID_G = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
091 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_ENTITY,
092 "fetchByUUID_G",
093 new String[] { String.class.getName(), Long.class.getName() });
094 public static final FinderPath FINDER_PATH_COUNT_BY_UUID_G = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
095 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
096 "countByUUID_G",
097 new String[] { String.class.getName(), Long.class.getName() });
098 public static final FinderPath FINDER_PATH_FIND_BY_NODEID = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
099 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
100 "findByNodeId",
101 new String[] {
102 Long.class.getName(),
103
104 "java.lang.Integer", "java.lang.Integer",
105 "com.liferay.portal.kernel.util.OrderByComparator"
106 });
107 public static final FinderPath FINDER_PATH_COUNT_BY_NODEID = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
108 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
109 "countByNodeId", new String[] { Long.class.getName() });
110 public static final FinderPath FINDER_PATH_FIND_BY_FORMAT = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
111 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
112 "findByFormat",
113 new String[] {
114 String.class.getName(),
115
116 "java.lang.Integer", "java.lang.Integer",
117 "com.liferay.portal.kernel.util.OrderByComparator"
118 });
119 public static final FinderPath FINDER_PATH_COUNT_BY_FORMAT = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
120 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
121 "countByFormat", new String[] { String.class.getName() });
122 public static final FinderPath FINDER_PATH_FIND_BY_R_N = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
123 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
124 "findByR_N",
125 new String[] {
126 Long.class.getName(), Long.class.getName(),
127
128 "java.lang.Integer", "java.lang.Integer",
129 "com.liferay.portal.kernel.util.OrderByComparator"
130 });
131 public static final FinderPath FINDER_PATH_COUNT_BY_R_N = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
132 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
133 "countByR_N",
134 new String[] { Long.class.getName(), Long.class.getName() });
135 public static final FinderPath FINDER_PATH_FIND_BY_N_T = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
136 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
137 "findByN_T",
138 new String[] {
139 Long.class.getName(), String.class.getName(),
140
141 "java.lang.Integer", "java.lang.Integer",
142 "com.liferay.portal.kernel.util.OrderByComparator"
143 });
144 public static final FinderPath FINDER_PATH_COUNT_BY_N_T = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
145 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
146 "countByN_T",
147 new String[] { Long.class.getName(), String.class.getName() });
148 public static final FinderPath FINDER_PATH_FIND_BY_N_H = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
149 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
150 "findByN_H",
151 new String[] {
152 Long.class.getName(), Boolean.class.getName(),
153
154 "java.lang.Integer", "java.lang.Integer",
155 "com.liferay.portal.kernel.util.OrderByComparator"
156 });
157 public static final FinderPath FINDER_PATH_COUNT_BY_N_H = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
158 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
159 "countByN_H",
160 new String[] { Long.class.getName(), Boolean.class.getName() });
161 public static final FinderPath FINDER_PATH_FIND_BY_N_P = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
162 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
163 "findByN_P",
164 new String[] {
165 Long.class.getName(), String.class.getName(),
166
167 "java.lang.Integer", "java.lang.Integer",
168 "com.liferay.portal.kernel.util.OrderByComparator"
169 });
170 public static final FinderPath FINDER_PATH_COUNT_BY_N_P = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
171 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
172 "countByN_P",
173 new String[] { Long.class.getName(), String.class.getName() });
174 public static final FinderPath FINDER_PATH_FIND_BY_N_R = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
175 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
176 "findByN_R",
177 new String[] {
178 Long.class.getName(), String.class.getName(),
179
180 "java.lang.Integer", "java.lang.Integer",
181 "com.liferay.portal.kernel.util.OrderByComparator"
182 });
183 public static final FinderPath FINDER_PATH_COUNT_BY_N_R = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
184 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
185 "countByN_R",
186 new String[] { Long.class.getName(), String.class.getName() });
187 public static final FinderPath FINDER_PATH_FIND_BY_N_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
188 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
189 "findByN_S",
190 new String[] {
191 Long.class.getName(), Integer.class.getName(),
192
193 "java.lang.Integer", "java.lang.Integer",
194 "com.liferay.portal.kernel.util.OrderByComparator"
195 });
196 public static final FinderPath FINDER_PATH_COUNT_BY_N_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
197 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
198 "countByN_S",
199 new String[] { Long.class.getName(), Integer.class.getName() });
200 public static final FinderPath FINDER_PATH_FETCH_BY_R_N_V = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
201 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_ENTITY,
202 "fetchByR_N_V",
203 new String[] {
204 Long.class.getName(), Long.class.getName(),
205 Double.class.getName()
206 });
207 public static final FinderPath FINDER_PATH_COUNT_BY_R_N_V = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
208 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
209 "countByR_N_V",
210 new String[] {
211 Long.class.getName(), Long.class.getName(),
212 Double.class.getName()
213 });
214 public static final FinderPath FINDER_PATH_FIND_BY_R_N_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
215 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
216 "findByR_N_S",
217 new String[] {
218 Long.class.getName(), Long.class.getName(),
219 Integer.class.getName(),
220
221 "java.lang.Integer", "java.lang.Integer",
222 "com.liferay.portal.kernel.util.OrderByComparator"
223 });
224 public static final FinderPath FINDER_PATH_COUNT_BY_R_N_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
225 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
226 "countByR_N_S",
227 new String[] {
228 Long.class.getName(), Long.class.getName(),
229 Integer.class.getName()
230 });
231 public static final FinderPath FINDER_PATH_FIND_BY_U_N_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
232 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
233 "findByU_N_S",
234 new String[] {
235 Long.class.getName(), Long.class.getName(),
236 Integer.class.getName(),
237
238 "java.lang.Integer", "java.lang.Integer",
239 "com.liferay.portal.kernel.util.OrderByComparator"
240 });
241 public static final FinderPath FINDER_PATH_COUNT_BY_U_N_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
242 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
243 "countByU_N_S",
244 new String[] {
245 Long.class.getName(), Long.class.getName(),
246 Integer.class.getName()
247 });
248 public static final FinderPath FINDER_PATH_FETCH_BY_N_T_V = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
249 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_ENTITY,
250 "fetchByN_T_V",
251 new String[] {
252 Long.class.getName(), String.class.getName(),
253 Double.class.getName()
254 });
255 public static final FinderPath FINDER_PATH_COUNT_BY_N_T_V = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
256 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
257 "countByN_T_V",
258 new String[] {
259 Long.class.getName(), String.class.getName(),
260 Double.class.getName()
261 });
262 public static final FinderPath FINDER_PATH_FIND_BY_N_T_H = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
263 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
264 "findByN_T_H",
265 new String[] {
266 Long.class.getName(), String.class.getName(),
267 Boolean.class.getName(),
268
269 "java.lang.Integer", "java.lang.Integer",
270 "com.liferay.portal.kernel.util.OrderByComparator"
271 });
272 public static final FinderPath FINDER_PATH_COUNT_BY_N_T_H = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
273 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
274 "countByN_T_H",
275 new String[] {
276 Long.class.getName(), String.class.getName(),
277 Boolean.class.getName()
278 });
279 public static final FinderPath FINDER_PATH_FIND_BY_N_T_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
280 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
281 "findByN_T_S",
282 new String[] {
283 Long.class.getName(), String.class.getName(),
284 Integer.class.getName(),
285
286 "java.lang.Integer", "java.lang.Integer",
287 "com.liferay.portal.kernel.util.OrderByComparator"
288 });
289 public static final FinderPath FINDER_PATH_COUNT_BY_N_T_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
290 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
291 "countByN_T_S",
292 new String[] {
293 Long.class.getName(), String.class.getName(),
294 Integer.class.getName()
295 });
296 public static final FinderPath FINDER_PATH_FIND_BY_N_H_P = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
297 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
298 "findByN_H_P",
299 new String[] {
300 Long.class.getName(), Boolean.class.getName(),
301 String.class.getName(),
302
303 "java.lang.Integer", "java.lang.Integer",
304 "com.liferay.portal.kernel.util.OrderByComparator"
305 });
306 public static final FinderPath FINDER_PATH_COUNT_BY_N_H_P = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
307 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
308 "countByN_H_P",
309 new String[] {
310 Long.class.getName(), Boolean.class.getName(),
311 String.class.getName()
312 });
313 public static final FinderPath FINDER_PATH_FIND_BY_N_H_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
314 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
315 "findByN_H_S",
316 new String[] {
317 Long.class.getName(), Boolean.class.getName(),
318 Integer.class.getName(),
319
320 "java.lang.Integer", "java.lang.Integer",
321 "com.liferay.portal.kernel.util.OrderByComparator"
322 });
323 public static final FinderPath FINDER_PATH_COUNT_BY_N_H_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
324 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
325 "countByN_H_S",
326 new String[] {
327 Long.class.getName(), Boolean.class.getName(),
328 Integer.class.getName()
329 });
330 public static final FinderPath FINDER_PATH_FIND_BY_N_H_P_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
331 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
332 "findByN_H_P_S",
333 new String[] {
334 Long.class.getName(), Boolean.class.getName(),
335 String.class.getName(), Integer.class.getName(),
336
337 "java.lang.Integer", "java.lang.Integer",
338 "com.liferay.portal.kernel.util.OrderByComparator"
339 });
340 public static final FinderPath FINDER_PATH_COUNT_BY_N_H_P_S = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
341 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
342 "countByN_H_P_S",
343 new String[] {
344 Long.class.getName(), Boolean.class.getName(),
345 String.class.getName(), Integer.class.getName()
346 });
347 public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
348 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
349 "findAll", new String[0]);
350 public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
351 WikiPageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
352 "countAll", new String[0]);
353
354 public void cacheResult(WikiPage wikiPage) {
355 EntityCacheUtil.putResult(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
356 WikiPageImpl.class, wikiPage.getPrimaryKey(), wikiPage);
357
358 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_UUID_G,
359 new Object[] { wikiPage.getUuid(), new Long(wikiPage.getGroupId()) },
360 wikiPage);
361
362 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_R_N_V,
363 new Object[] {
364 new Long(wikiPage.getResourcePrimKey()),
365 new Long(wikiPage.getNodeId()),
366 new Double(wikiPage.getVersion())
367 }, wikiPage);
368
369 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_T_V,
370 new Object[] {
371 new Long(wikiPage.getNodeId()),
372
373 wikiPage.getTitle(), new Double(wikiPage.getVersion())
374 }, wikiPage);
375 }
376
377 public void cacheResult(List<WikiPage> wikiPages) {
378 for (WikiPage wikiPage : wikiPages) {
379 if (EntityCacheUtil.getResult(
380 WikiPageModelImpl.ENTITY_CACHE_ENABLED,
381 WikiPageImpl.class, wikiPage.getPrimaryKey(), this) == null) {
382 cacheResult(wikiPage);
383 }
384 }
385 }
386
387 public void clearCache() {
388 CacheRegistryUtil.clear(WikiPageImpl.class.getName());
389 EntityCacheUtil.clearCache(WikiPageImpl.class.getName());
390 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
391 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
392 }
393
394 public void clearCache(WikiPage wikiPage) {
395 EntityCacheUtil.removeResult(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
396 WikiPageImpl.class, wikiPage.getPrimaryKey());
397
398 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_UUID_G,
399 new Object[] { wikiPage.getUuid(), new Long(wikiPage.getGroupId()) });
400
401 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_R_N_V,
402 new Object[] {
403 new Long(wikiPage.getResourcePrimKey()),
404 new Long(wikiPage.getNodeId()),
405 new Double(wikiPage.getVersion())
406 });
407
408 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_N_T_V,
409 new Object[] {
410 new Long(wikiPage.getNodeId()),
411
412 wikiPage.getTitle(), new Double(wikiPage.getVersion())
413 });
414 }
415
416 public WikiPage create(long pageId) {
417 WikiPage wikiPage = new WikiPageImpl();
418
419 wikiPage.setNew(true);
420 wikiPage.setPrimaryKey(pageId);
421
422 String uuid = PortalUUIDUtil.generate();
423
424 wikiPage.setUuid(uuid);
425
426 return wikiPage;
427 }
428
429 public WikiPage remove(Serializable primaryKey)
430 throws NoSuchModelException, SystemException {
431 return remove(((Long)primaryKey).longValue());
432 }
433
434 public WikiPage remove(long pageId)
435 throws NoSuchPageException, SystemException {
436 Session session = null;
437
438 try {
439 session = openSession();
440
441 WikiPage wikiPage = (WikiPage)session.get(WikiPageImpl.class,
442 new Long(pageId));
443
444 if (wikiPage == null) {
445 if (_log.isWarnEnabled()) {
446 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + pageId);
447 }
448
449 throw new NoSuchPageException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
450 pageId);
451 }
452
453 return remove(wikiPage);
454 }
455 catch (NoSuchPageException nsee) {
456 throw nsee;
457 }
458 catch (Exception e) {
459 throw processException(e);
460 }
461 finally {
462 closeSession(session);
463 }
464 }
465
466 protected WikiPage removeImpl(WikiPage wikiPage) throws SystemException {
467 wikiPage = toUnwrappedModel(wikiPage);
468
469 Session session = null;
470
471 try {
472 session = openSession();
473
474 if (wikiPage.isCachedModel() || BatchSessionUtil.isEnabled()) {
475 Object staleObject = session.get(WikiPageImpl.class,
476 wikiPage.getPrimaryKeyObj());
477
478 if (staleObject != null) {
479 session.evict(staleObject);
480 }
481 }
482
483 session.delete(wikiPage);
484
485 session.flush();
486 }
487 catch (Exception e) {
488 throw processException(e);
489 }
490 finally {
491 closeSession(session);
492 }
493
494 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
495
496 WikiPageModelImpl wikiPageModelImpl = (WikiPageModelImpl)wikiPage;
497
498 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_UUID_G,
499 new Object[] {
500 wikiPageModelImpl.getOriginalUuid(),
501 new Long(wikiPageModelImpl.getOriginalGroupId())
502 });
503
504 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_R_N_V,
505 new Object[] {
506 new Long(wikiPageModelImpl.getOriginalResourcePrimKey()),
507 new Long(wikiPageModelImpl.getOriginalNodeId()),
508 new Double(wikiPageModelImpl.getOriginalVersion())
509 });
510
511 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_N_T_V,
512 new Object[] {
513 new Long(wikiPageModelImpl.getOriginalNodeId()),
514
515 wikiPageModelImpl.getOriginalTitle(),
516 new Double(wikiPageModelImpl.getOriginalVersion())
517 });
518
519 EntityCacheUtil.removeResult(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
520 WikiPageImpl.class, wikiPage.getPrimaryKey());
521
522 return wikiPage;
523 }
524
525 public WikiPage updateImpl(
526 com.liferay.portlet.wiki.model.WikiPage wikiPage, boolean merge)
527 throws SystemException {
528 wikiPage = toUnwrappedModel(wikiPage);
529
530 boolean isNew = wikiPage.isNew();
531
532 WikiPageModelImpl wikiPageModelImpl = (WikiPageModelImpl)wikiPage;
533
534 if (Validator.isNull(wikiPage.getUuid())) {
535 String uuid = PortalUUIDUtil.generate();
536
537 wikiPage.setUuid(uuid);
538 }
539
540 Session session = null;
541
542 try {
543 session = openSession();
544
545 BatchSessionUtil.update(session, wikiPage, merge);
546
547 wikiPage.setNew(false);
548 }
549 catch (Exception e) {
550 throw processException(e);
551 }
552 finally {
553 closeSession(session);
554 }
555
556 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
557
558 EntityCacheUtil.putResult(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
559 WikiPageImpl.class, wikiPage.getPrimaryKey(), wikiPage);
560
561 if (!isNew &&
562 (!Validator.equals(wikiPage.getUuid(),
563 wikiPageModelImpl.getOriginalUuid()) ||
564 (wikiPage.getGroupId() != wikiPageModelImpl.getOriginalGroupId()))) {
565 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_UUID_G,
566 new Object[] {
567 wikiPageModelImpl.getOriginalUuid(),
568 new Long(wikiPageModelImpl.getOriginalGroupId())
569 });
570 }
571
572 if (isNew ||
573 (!Validator.equals(wikiPage.getUuid(),
574 wikiPageModelImpl.getOriginalUuid()) ||
575 (wikiPage.getGroupId() != wikiPageModelImpl.getOriginalGroupId()))) {
576 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_UUID_G,
577 new Object[] { wikiPage.getUuid(), new Long(
578 wikiPage.getGroupId()) }, wikiPage);
579 }
580
581 if (!isNew &&
582 ((wikiPage.getResourcePrimKey() != wikiPageModelImpl.getOriginalResourcePrimKey()) ||
583 (wikiPage.getNodeId() != wikiPageModelImpl.getOriginalNodeId()) ||
584 (wikiPage.getVersion() != wikiPageModelImpl.getOriginalVersion()))) {
585 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_R_N_V,
586 new Object[] {
587 new Long(wikiPageModelImpl.getOriginalResourcePrimKey()),
588 new Long(wikiPageModelImpl.getOriginalNodeId()),
589 new Double(wikiPageModelImpl.getOriginalVersion())
590 });
591 }
592
593 if (isNew ||
594 ((wikiPage.getResourcePrimKey() != wikiPageModelImpl.getOriginalResourcePrimKey()) ||
595 (wikiPage.getNodeId() != wikiPageModelImpl.getOriginalNodeId()) ||
596 (wikiPage.getVersion() != wikiPageModelImpl.getOriginalVersion()))) {
597 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_R_N_V,
598 new Object[] {
599 new Long(wikiPage.getResourcePrimKey()),
600 new Long(wikiPage.getNodeId()),
601 new Double(wikiPage.getVersion())
602 }, wikiPage);
603 }
604
605 if (!isNew &&
606 ((wikiPage.getNodeId() != wikiPageModelImpl.getOriginalNodeId()) ||
607 !Validator.equals(wikiPage.getTitle(),
608 wikiPageModelImpl.getOriginalTitle()) ||
609 (wikiPage.getVersion() != wikiPageModelImpl.getOriginalVersion()))) {
610 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_N_T_V,
611 new Object[] {
612 new Long(wikiPageModelImpl.getOriginalNodeId()),
613
614 wikiPageModelImpl.getOriginalTitle(),
615 new Double(wikiPageModelImpl.getOriginalVersion())
616 });
617 }
618
619 if (isNew ||
620 ((wikiPage.getNodeId() != wikiPageModelImpl.getOriginalNodeId()) ||
621 !Validator.equals(wikiPage.getTitle(),
622 wikiPageModelImpl.getOriginalTitle()) ||
623 (wikiPage.getVersion() != wikiPageModelImpl.getOriginalVersion()))) {
624 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_T_V,
625 new Object[] {
626 new Long(wikiPage.getNodeId()),
627
628 wikiPage.getTitle(), new Double(wikiPage.getVersion())
629 }, wikiPage);
630 }
631
632 return wikiPage;
633 }
634
635 protected WikiPage toUnwrappedModel(WikiPage wikiPage) {
636 if (wikiPage instanceof WikiPageImpl) {
637 return wikiPage;
638 }
639
640 WikiPageImpl wikiPageImpl = new WikiPageImpl();
641
642 wikiPageImpl.setNew(wikiPage.isNew());
643 wikiPageImpl.setPrimaryKey(wikiPage.getPrimaryKey());
644
645 wikiPageImpl.setUuid(wikiPage.getUuid());
646 wikiPageImpl.setPageId(wikiPage.getPageId());
647 wikiPageImpl.setResourcePrimKey(wikiPage.getResourcePrimKey());
648 wikiPageImpl.setGroupId(wikiPage.getGroupId());
649 wikiPageImpl.setCompanyId(wikiPage.getCompanyId());
650 wikiPageImpl.setUserId(wikiPage.getUserId());
651 wikiPageImpl.setUserName(wikiPage.getUserName());
652 wikiPageImpl.setCreateDate(wikiPage.getCreateDate());
653 wikiPageImpl.setModifiedDate(wikiPage.getModifiedDate());
654 wikiPageImpl.setNodeId(wikiPage.getNodeId());
655 wikiPageImpl.setTitle(wikiPage.getTitle());
656 wikiPageImpl.setVersion(wikiPage.getVersion());
657 wikiPageImpl.setMinorEdit(wikiPage.isMinorEdit());
658 wikiPageImpl.setContent(wikiPage.getContent());
659 wikiPageImpl.setSummary(wikiPage.getSummary());
660 wikiPageImpl.setFormat(wikiPage.getFormat());
661 wikiPageImpl.setHead(wikiPage.isHead());
662 wikiPageImpl.setParentTitle(wikiPage.getParentTitle());
663 wikiPageImpl.setRedirectTitle(wikiPage.getRedirectTitle());
664 wikiPageImpl.setStatus(wikiPage.getStatus());
665 wikiPageImpl.setStatusByUserId(wikiPage.getStatusByUserId());
666 wikiPageImpl.setStatusByUserName(wikiPage.getStatusByUserName());
667 wikiPageImpl.setStatusDate(wikiPage.getStatusDate());
668
669 return wikiPageImpl;
670 }
671
672 public WikiPage findByPrimaryKey(Serializable primaryKey)
673 throws NoSuchModelException, SystemException {
674 return findByPrimaryKey(((Long)primaryKey).longValue());
675 }
676
677 public WikiPage findByPrimaryKey(long pageId)
678 throws NoSuchPageException, SystemException {
679 WikiPage wikiPage = fetchByPrimaryKey(pageId);
680
681 if (wikiPage == null) {
682 if (_log.isWarnEnabled()) {
683 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + pageId);
684 }
685
686 throw new NoSuchPageException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
687 pageId);
688 }
689
690 return wikiPage;
691 }
692
693 public WikiPage fetchByPrimaryKey(Serializable primaryKey)
694 throws SystemException {
695 return fetchByPrimaryKey(((Long)primaryKey).longValue());
696 }
697
698 public WikiPage fetchByPrimaryKey(long pageId) throws SystemException {
699 WikiPage wikiPage = (WikiPage)EntityCacheUtil.getResult(WikiPageModelImpl.ENTITY_CACHE_ENABLED,
700 WikiPageImpl.class, pageId, this);
701
702 if (wikiPage == null) {
703 Session session = null;
704
705 try {
706 session = openSession();
707
708 wikiPage = (WikiPage)session.get(WikiPageImpl.class,
709 new Long(pageId));
710 }
711 catch (Exception e) {
712 throw processException(e);
713 }
714 finally {
715 if (wikiPage != null) {
716 cacheResult(wikiPage);
717 }
718
719 closeSession(session);
720 }
721 }
722
723 return wikiPage;
724 }
725
726 public List<WikiPage> findByUuid(String uuid) throws SystemException {
727 return findByUuid(uuid, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
728 }
729
730 public List<WikiPage> findByUuid(String uuid, int start, int end)
731 throws SystemException {
732 return findByUuid(uuid, start, end, null);
733 }
734
735 public List<WikiPage> findByUuid(String uuid, int start, int end,
736 OrderByComparator orderByComparator) throws SystemException {
737 Object[] finderArgs = new Object[] {
738 uuid,
739
740 String.valueOf(start), String.valueOf(end),
741 String.valueOf(orderByComparator)
742 };
743
744 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_UUID,
745 finderArgs, this);
746
747 if (list == null) {
748 Session session = null;
749
750 try {
751 session = openSession();
752
753 StringBundler query = null;
754
755 if (orderByComparator != null) {
756 query = new StringBundler(3 +
757 (orderByComparator.getOrderByFields().length * 3));
758 }
759 else {
760 query = new StringBundler(3);
761 }
762
763 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
764
765 if (uuid == null) {
766 query.append(_FINDER_COLUMN_UUID_UUID_1);
767 }
768 else {
769 if (uuid.equals(StringPool.BLANK)) {
770 query.append(_FINDER_COLUMN_UUID_UUID_3);
771 }
772 else {
773 query.append(_FINDER_COLUMN_UUID_UUID_2);
774 }
775 }
776
777 if (orderByComparator != null) {
778 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
779 orderByComparator);
780 }
781
782 else {
783 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
784 }
785
786 String sql = query.toString();
787
788 Query q = session.createQuery(sql);
789
790 QueryPos qPos = QueryPos.getInstance(q);
791
792 if (uuid != null) {
793 qPos.add(uuid);
794 }
795
796 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
797 end);
798 }
799 catch (Exception e) {
800 throw processException(e);
801 }
802 finally {
803 if (list == null) {
804 list = new ArrayList<WikiPage>();
805 }
806
807 cacheResult(list);
808
809 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_UUID, finderArgs,
810 list);
811
812 closeSession(session);
813 }
814 }
815
816 return list;
817 }
818
819 public WikiPage findByUuid_First(String uuid,
820 OrderByComparator orderByComparator)
821 throws NoSuchPageException, SystemException {
822 List<WikiPage> list = findByUuid(uuid, 0, 1, orderByComparator);
823
824 if (list.isEmpty()) {
825 StringBundler msg = new StringBundler(4);
826
827 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
828
829 msg.append("uuid=");
830 msg.append(uuid);
831
832 msg.append(StringPool.CLOSE_CURLY_BRACE);
833
834 throw new NoSuchPageException(msg.toString());
835 }
836 else {
837 return list.get(0);
838 }
839 }
840
841 public WikiPage findByUuid_Last(String uuid,
842 OrderByComparator orderByComparator)
843 throws NoSuchPageException, SystemException {
844 int count = countByUuid(uuid);
845
846 List<WikiPage> list = findByUuid(uuid, count - 1, count,
847 orderByComparator);
848
849 if (list.isEmpty()) {
850 StringBundler msg = new StringBundler(4);
851
852 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
853
854 msg.append("uuid=");
855 msg.append(uuid);
856
857 msg.append(StringPool.CLOSE_CURLY_BRACE);
858
859 throw new NoSuchPageException(msg.toString());
860 }
861 else {
862 return list.get(0);
863 }
864 }
865
866 public WikiPage[] findByUuid_PrevAndNext(long pageId, String uuid,
867 OrderByComparator orderByComparator)
868 throws NoSuchPageException, SystemException {
869 WikiPage wikiPage = findByPrimaryKey(pageId);
870
871 Session session = null;
872
873 try {
874 session = openSession();
875
876 WikiPage[] array = new WikiPageImpl[3];
877
878 array[0] = getByUuid_PrevAndNext(session, wikiPage, uuid,
879 orderByComparator, true);
880
881 array[1] = wikiPage;
882
883 array[2] = getByUuid_PrevAndNext(session, wikiPage, uuid,
884 orderByComparator, false);
885
886 return array;
887 }
888 catch (Exception e) {
889 throw processException(e);
890 }
891 finally {
892 closeSession(session);
893 }
894 }
895
896 protected WikiPage getByUuid_PrevAndNext(Session session,
897 WikiPage wikiPage, String uuid, OrderByComparator orderByComparator,
898 boolean previous) {
899 StringBundler query = null;
900
901 if (orderByComparator != null) {
902 query = new StringBundler(6 +
903 (orderByComparator.getOrderByFields().length * 6));
904 }
905 else {
906 query = new StringBundler(3);
907 }
908
909 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
910
911 if (uuid == null) {
912 query.append(_FINDER_COLUMN_UUID_UUID_1);
913 }
914 else {
915 if (uuid.equals(StringPool.BLANK)) {
916 query.append(_FINDER_COLUMN_UUID_UUID_3);
917 }
918 else {
919 query.append(_FINDER_COLUMN_UUID_UUID_2);
920 }
921 }
922
923 if (orderByComparator != null) {
924 String[] orderByFields = orderByComparator.getOrderByFields();
925
926 if (orderByFields.length > 0) {
927 query.append(WHERE_AND);
928 }
929
930 for (int i = 0; i < orderByFields.length; i++) {
931 query.append(_ORDER_BY_ENTITY_ALIAS);
932 query.append(orderByFields[i]);
933
934 if ((i + 1) < orderByFields.length) {
935 if (orderByComparator.isAscending() ^ previous) {
936 query.append(WHERE_GREATER_THAN_HAS_NEXT);
937 }
938 else {
939 query.append(WHERE_LESSER_THAN_HAS_NEXT);
940 }
941 }
942 else {
943 if (orderByComparator.isAscending() ^ previous) {
944 query.append(WHERE_GREATER_THAN);
945 }
946 else {
947 query.append(WHERE_LESSER_THAN);
948 }
949 }
950 }
951
952 query.append(ORDER_BY_CLAUSE);
953
954 for (int i = 0; i < orderByFields.length; i++) {
955 query.append(_ORDER_BY_ENTITY_ALIAS);
956 query.append(orderByFields[i]);
957
958 if ((i + 1) < orderByFields.length) {
959 if (orderByComparator.isAscending() ^ previous) {
960 query.append(ORDER_BY_ASC_HAS_NEXT);
961 }
962 else {
963 query.append(ORDER_BY_DESC_HAS_NEXT);
964 }
965 }
966 else {
967 if (orderByComparator.isAscending() ^ previous) {
968 query.append(ORDER_BY_ASC);
969 }
970 else {
971 query.append(ORDER_BY_DESC);
972 }
973 }
974 }
975 }
976
977 else {
978 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
979 }
980
981 String sql = query.toString();
982
983 Query q = session.createQuery(sql);
984
985 q.setFirstResult(0);
986 q.setMaxResults(2);
987
988 QueryPos qPos = QueryPos.getInstance(q);
989
990 if (uuid != null) {
991 qPos.add(uuid);
992 }
993
994 if (orderByComparator != null) {
995 Object[] values = orderByComparator.getOrderByValues(wikiPage);
996
997 for (Object value : values) {
998 qPos.add(value);
999 }
1000 }
1001
1002 List<WikiPage> list = q.list();
1003
1004 if (list.size() == 2) {
1005 return list.get(1);
1006 }
1007 else {
1008 return null;
1009 }
1010 }
1011
1012 public WikiPage findByUUID_G(String uuid, long groupId)
1013 throws NoSuchPageException, SystemException {
1014 WikiPage wikiPage = fetchByUUID_G(uuid, groupId);
1015
1016 if (wikiPage == null) {
1017 StringBundler msg = new StringBundler(6);
1018
1019 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1020
1021 msg.append("uuid=");
1022 msg.append(uuid);
1023
1024 msg.append(", groupId=");
1025 msg.append(groupId);
1026
1027 msg.append(StringPool.CLOSE_CURLY_BRACE);
1028
1029 if (_log.isWarnEnabled()) {
1030 _log.warn(msg.toString());
1031 }
1032
1033 throw new NoSuchPageException(msg.toString());
1034 }
1035
1036 return wikiPage;
1037 }
1038
1039 public WikiPage fetchByUUID_G(String uuid, long groupId)
1040 throws SystemException {
1041 return fetchByUUID_G(uuid, groupId, true);
1042 }
1043
1044 public WikiPage fetchByUUID_G(String uuid, long groupId,
1045 boolean retrieveFromCache) throws SystemException {
1046 Object[] finderArgs = new Object[] { uuid, groupId };
1047
1048 Object result = null;
1049
1050 if (retrieveFromCache) {
1051 result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_UUID_G,
1052 finderArgs, this);
1053 }
1054
1055 if (result == null) {
1056 Session session = null;
1057
1058 try {
1059 session = openSession();
1060
1061 StringBundler query = new StringBundler(4);
1062
1063 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
1064
1065 if (uuid == null) {
1066 query.append(_FINDER_COLUMN_UUID_G_UUID_1);
1067 }
1068 else {
1069 if (uuid.equals(StringPool.BLANK)) {
1070 query.append(_FINDER_COLUMN_UUID_G_UUID_3);
1071 }
1072 else {
1073 query.append(_FINDER_COLUMN_UUID_G_UUID_2);
1074 }
1075 }
1076
1077 query.append(_FINDER_COLUMN_UUID_G_GROUPID_2);
1078
1079 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
1080
1081 String sql = query.toString();
1082
1083 Query q = session.createQuery(sql);
1084
1085 QueryPos qPos = QueryPos.getInstance(q);
1086
1087 if (uuid != null) {
1088 qPos.add(uuid);
1089 }
1090
1091 qPos.add(groupId);
1092
1093 List<WikiPage> list = q.list();
1094
1095 result = list;
1096
1097 WikiPage wikiPage = null;
1098
1099 if (list.isEmpty()) {
1100 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_UUID_G,
1101 finderArgs, list);
1102 }
1103 else {
1104 wikiPage = list.get(0);
1105
1106 cacheResult(wikiPage);
1107
1108 if ((wikiPage.getUuid() == null) ||
1109 !wikiPage.getUuid().equals(uuid) ||
1110 (wikiPage.getGroupId() != groupId)) {
1111 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_UUID_G,
1112 finderArgs, wikiPage);
1113 }
1114 }
1115
1116 return wikiPage;
1117 }
1118 catch (Exception e) {
1119 throw processException(e);
1120 }
1121 finally {
1122 if (result == null) {
1123 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_UUID_G,
1124 finderArgs, new ArrayList<WikiPage>());
1125 }
1126
1127 closeSession(session);
1128 }
1129 }
1130 else {
1131 if (result instanceof List<?>) {
1132 return null;
1133 }
1134 else {
1135 return (WikiPage)result;
1136 }
1137 }
1138 }
1139
1140 public List<WikiPage> findByNodeId(long nodeId) throws SystemException {
1141 return findByNodeId(nodeId, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
1142 }
1143
1144 public List<WikiPage> findByNodeId(long nodeId, int start, int end)
1145 throws SystemException {
1146 return findByNodeId(nodeId, start, end, null);
1147 }
1148
1149 public List<WikiPage> findByNodeId(long nodeId, int start, int end,
1150 OrderByComparator orderByComparator) throws SystemException {
1151 Object[] finderArgs = new Object[] {
1152 nodeId,
1153
1154 String.valueOf(start), String.valueOf(end),
1155 String.valueOf(orderByComparator)
1156 };
1157
1158 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_NODEID,
1159 finderArgs, this);
1160
1161 if (list == null) {
1162 Session session = null;
1163
1164 try {
1165 session = openSession();
1166
1167 StringBundler query = null;
1168
1169 if (orderByComparator != null) {
1170 query = new StringBundler(3 +
1171 (orderByComparator.getOrderByFields().length * 3));
1172 }
1173 else {
1174 query = new StringBundler(3);
1175 }
1176
1177 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
1178
1179 query.append(_FINDER_COLUMN_NODEID_NODEID_2);
1180
1181 if (orderByComparator != null) {
1182 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1183 orderByComparator);
1184 }
1185
1186 else {
1187 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
1188 }
1189
1190 String sql = query.toString();
1191
1192 Query q = session.createQuery(sql);
1193
1194 QueryPos qPos = QueryPos.getInstance(q);
1195
1196 qPos.add(nodeId);
1197
1198 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
1199 end);
1200 }
1201 catch (Exception e) {
1202 throw processException(e);
1203 }
1204 finally {
1205 if (list == null) {
1206 list = new ArrayList<WikiPage>();
1207 }
1208
1209 cacheResult(list);
1210
1211 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_NODEID,
1212 finderArgs, list);
1213
1214 closeSession(session);
1215 }
1216 }
1217
1218 return list;
1219 }
1220
1221 public WikiPage findByNodeId_First(long nodeId,
1222 OrderByComparator orderByComparator)
1223 throws NoSuchPageException, SystemException {
1224 List<WikiPage> list = findByNodeId(nodeId, 0, 1, orderByComparator);
1225
1226 if (list.isEmpty()) {
1227 StringBundler msg = new StringBundler(4);
1228
1229 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1230
1231 msg.append("nodeId=");
1232 msg.append(nodeId);
1233
1234 msg.append(StringPool.CLOSE_CURLY_BRACE);
1235
1236 throw new NoSuchPageException(msg.toString());
1237 }
1238 else {
1239 return list.get(0);
1240 }
1241 }
1242
1243 public WikiPage findByNodeId_Last(long nodeId,
1244 OrderByComparator orderByComparator)
1245 throws NoSuchPageException, SystemException {
1246 int count = countByNodeId(nodeId);
1247
1248 List<WikiPage> list = findByNodeId(nodeId, count - 1, count,
1249 orderByComparator);
1250
1251 if (list.isEmpty()) {
1252 StringBundler msg = new StringBundler(4);
1253
1254 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1255
1256 msg.append("nodeId=");
1257 msg.append(nodeId);
1258
1259 msg.append(StringPool.CLOSE_CURLY_BRACE);
1260
1261 throw new NoSuchPageException(msg.toString());
1262 }
1263 else {
1264 return list.get(0);
1265 }
1266 }
1267
1268 public WikiPage[] findByNodeId_PrevAndNext(long pageId, long nodeId,
1269 OrderByComparator orderByComparator)
1270 throws NoSuchPageException, SystemException {
1271 WikiPage wikiPage = findByPrimaryKey(pageId);
1272
1273 Session session = null;
1274
1275 try {
1276 session = openSession();
1277
1278 WikiPage[] array = new WikiPageImpl[3];
1279
1280 array[0] = getByNodeId_PrevAndNext(session, wikiPage, nodeId,
1281 orderByComparator, true);
1282
1283 array[1] = wikiPage;
1284
1285 array[2] = getByNodeId_PrevAndNext(session, wikiPage, nodeId,
1286 orderByComparator, false);
1287
1288 return array;
1289 }
1290 catch (Exception e) {
1291 throw processException(e);
1292 }
1293 finally {
1294 closeSession(session);
1295 }
1296 }
1297
1298 protected WikiPage getByNodeId_PrevAndNext(Session session,
1299 WikiPage wikiPage, long nodeId, OrderByComparator orderByComparator,
1300 boolean previous) {
1301 StringBundler query = null;
1302
1303 if (orderByComparator != null) {
1304 query = new StringBundler(6 +
1305 (orderByComparator.getOrderByFields().length * 6));
1306 }
1307 else {
1308 query = new StringBundler(3);
1309 }
1310
1311 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
1312
1313 query.append(_FINDER_COLUMN_NODEID_NODEID_2);
1314
1315 if (orderByComparator != null) {
1316 String[] orderByFields = orderByComparator.getOrderByFields();
1317
1318 if (orderByFields.length > 0) {
1319 query.append(WHERE_AND);
1320 }
1321
1322 for (int i = 0; i < orderByFields.length; i++) {
1323 query.append(_ORDER_BY_ENTITY_ALIAS);
1324 query.append(orderByFields[i]);
1325
1326 if ((i + 1) < orderByFields.length) {
1327 if (orderByComparator.isAscending() ^ previous) {
1328 query.append(WHERE_GREATER_THAN_HAS_NEXT);
1329 }
1330 else {
1331 query.append(WHERE_LESSER_THAN_HAS_NEXT);
1332 }
1333 }
1334 else {
1335 if (orderByComparator.isAscending() ^ previous) {
1336 query.append(WHERE_GREATER_THAN);
1337 }
1338 else {
1339 query.append(WHERE_LESSER_THAN);
1340 }
1341 }
1342 }
1343
1344 query.append(ORDER_BY_CLAUSE);
1345
1346 for (int i = 0; i < orderByFields.length; i++) {
1347 query.append(_ORDER_BY_ENTITY_ALIAS);
1348 query.append(orderByFields[i]);
1349
1350 if ((i + 1) < orderByFields.length) {
1351 if (orderByComparator.isAscending() ^ previous) {
1352 query.append(ORDER_BY_ASC_HAS_NEXT);
1353 }
1354 else {
1355 query.append(ORDER_BY_DESC_HAS_NEXT);
1356 }
1357 }
1358 else {
1359 if (orderByComparator.isAscending() ^ previous) {
1360 query.append(ORDER_BY_ASC);
1361 }
1362 else {
1363 query.append(ORDER_BY_DESC);
1364 }
1365 }
1366 }
1367 }
1368
1369 else {
1370 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
1371 }
1372
1373 String sql = query.toString();
1374
1375 Query q = session.createQuery(sql);
1376
1377 q.setFirstResult(0);
1378 q.setMaxResults(2);
1379
1380 QueryPos qPos = QueryPos.getInstance(q);
1381
1382 qPos.add(nodeId);
1383
1384 if (orderByComparator != null) {
1385 Object[] values = orderByComparator.getOrderByValues(wikiPage);
1386
1387 for (Object value : values) {
1388 qPos.add(value);
1389 }
1390 }
1391
1392 List<WikiPage> list = q.list();
1393
1394 if (list.size() == 2) {
1395 return list.get(1);
1396 }
1397 else {
1398 return null;
1399 }
1400 }
1401
1402 public List<WikiPage> findByFormat(String format) throws SystemException {
1403 return findByFormat(format, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
1404 }
1405
1406 public List<WikiPage> findByFormat(String format, int start, int end)
1407 throws SystemException {
1408 return findByFormat(format, start, end, null);
1409 }
1410
1411 public List<WikiPage> findByFormat(String format, int start, int end,
1412 OrderByComparator orderByComparator) throws SystemException {
1413 Object[] finderArgs = new Object[] {
1414 format,
1415
1416 String.valueOf(start), String.valueOf(end),
1417 String.valueOf(orderByComparator)
1418 };
1419
1420 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_FORMAT,
1421 finderArgs, this);
1422
1423 if (list == null) {
1424 Session session = null;
1425
1426 try {
1427 session = openSession();
1428
1429 StringBundler query = null;
1430
1431 if (orderByComparator != null) {
1432 query = new StringBundler(3 +
1433 (orderByComparator.getOrderByFields().length * 3));
1434 }
1435 else {
1436 query = new StringBundler(3);
1437 }
1438
1439 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
1440
1441 if (format == null) {
1442 query.append(_FINDER_COLUMN_FORMAT_FORMAT_1);
1443 }
1444 else {
1445 if (format.equals(StringPool.BLANK)) {
1446 query.append(_FINDER_COLUMN_FORMAT_FORMAT_3);
1447 }
1448 else {
1449 query.append(_FINDER_COLUMN_FORMAT_FORMAT_2);
1450 }
1451 }
1452
1453 if (orderByComparator != null) {
1454 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1455 orderByComparator);
1456 }
1457
1458 else {
1459 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
1460 }
1461
1462 String sql = query.toString();
1463
1464 Query q = session.createQuery(sql);
1465
1466 QueryPos qPos = QueryPos.getInstance(q);
1467
1468 if (format != null) {
1469 qPos.add(format);
1470 }
1471
1472 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
1473 end);
1474 }
1475 catch (Exception e) {
1476 throw processException(e);
1477 }
1478 finally {
1479 if (list == null) {
1480 list = new ArrayList<WikiPage>();
1481 }
1482
1483 cacheResult(list);
1484
1485 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_FORMAT,
1486 finderArgs, list);
1487
1488 closeSession(session);
1489 }
1490 }
1491
1492 return list;
1493 }
1494
1495 public WikiPage findByFormat_First(String format,
1496 OrderByComparator orderByComparator)
1497 throws NoSuchPageException, SystemException {
1498 List<WikiPage> list = findByFormat(format, 0, 1, orderByComparator);
1499
1500 if (list.isEmpty()) {
1501 StringBundler msg = new StringBundler(4);
1502
1503 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1504
1505 msg.append("format=");
1506 msg.append(format);
1507
1508 msg.append(StringPool.CLOSE_CURLY_BRACE);
1509
1510 throw new NoSuchPageException(msg.toString());
1511 }
1512 else {
1513 return list.get(0);
1514 }
1515 }
1516
1517 public WikiPage findByFormat_Last(String format,
1518 OrderByComparator orderByComparator)
1519 throws NoSuchPageException, SystemException {
1520 int count = countByFormat(format);
1521
1522 List<WikiPage> list = findByFormat(format, count - 1, count,
1523 orderByComparator);
1524
1525 if (list.isEmpty()) {
1526 StringBundler msg = new StringBundler(4);
1527
1528 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1529
1530 msg.append("format=");
1531 msg.append(format);
1532
1533 msg.append(StringPool.CLOSE_CURLY_BRACE);
1534
1535 throw new NoSuchPageException(msg.toString());
1536 }
1537 else {
1538 return list.get(0);
1539 }
1540 }
1541
1542 public WikiPage[] findByFormat_PrevAndNext(long pageId, String format,
1543 OrderByComparator orderByComparator)
1544 throws NoSuchPageException, SystemException {
1545 WikiPage wikiPage = findByPrimaryKey(pageId);
1546
1547 Session session = null;
1548
1549 try {
1550 session = openSession();
1551
1552 WikiPage[] array = new WikiPageImpl[3];
1553
1554 array[0] = getByFormat_PrevAndNext(session, wikiPage, format,
1555 orderByComparator, true);
1556
1557 array[1] = wikiPage;
1558
1559 array[2] = getByFormat_PrevAndNext(session, wikiPage, format,
1560 orderByComparator, false);
1561
1562 return array;
1563 }
1564 catch (Exception e) {
1565 throw processException(e);
1566 }
1567 finally {
1568 closeSession(session);
1569 }
1570 }
1571
1572 protected WikiPage getByFormat_PrevAndNext(Session session,
1573 WikiPage wikiPage, String format, OrderByComparator orderByComparator,
1574 boolean previous) {
1575 StringBundler query = null;
1576
1577 if (orderByComparator != null) {
1578 query = new StringBundler(6 +
1579 (orderByComparator.getOrderByFields().length * 6));
1580 }
1581 else {
1582 query = new StringBundler(3);
1583 }
1584
1585 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
1586
1587 if (format == null) {
1588 query.append(_FINDER_COLUMN_FORMAT_FORMAT_1);
1589 }
1590 else {
1591 if (format.equals(StringPool.BLANK)) {
1592 query.append(_FINDER_COLUMN_FORMAT_FORMAT_3);
1593 }
1594 else {
1595 query.append(_FINDER_COLUMN_FORMAT_FORMAT_2);
1596 }
1597 }
1598
1599 if (orderByComparator != null) {
1600 String[] orderByFields = orderByComparator.getOrderByFields();
1601
1602 if (orderByFields.length > 0) {
1603 query.append(WHERE_AND);
1604 }
1605
1606 for (int i = 0; i < orderByFields.length; i++) {
1607 query.append(_ORDER_BY_ENTITY_ALIAS);
1608 query.append(orderByFields[i]);
1609
1610 if ((i + 1) < orderByFields.length) {
1611 if (orderByComparator.isAscending() ^ previous) {
1612 query.append(WHERE_GREATER_THAN_HAS_NEXT);
1613 }
1614 else {
1615 query.append(WHERE_LESSER_THAN_HAS_NEXT);
1616 }
1617 }
1618 else {
1619 if (orderByComparator.isAscending() ^ previous) {
1620 query.append(WHERE_GREATER_THAN);
1621 }
1622 else {
1623 query.append(WHERE_LESSER_THAN);
1624 }
1625 }
1626 }
1627
1628 query.append(ORDER_BY_CLAUSE);
1629
1630 for (int i = 0; i < orderByFields.length; i++) {
1631 query.append(_ORDER_BY_ENTITY_ALIAS);
1632 query.append(orderByFields[i]);
1633
1634 if ((i + 1) < orderByFields.length) {
1635 if (orderByComparator.isAscending() ^ previous) {
1636 query.append(ORDER_BY_ASC_HAS_NEXT);
1637 }
1638 else {
1639 query.append(ORDER_BY_DESC_HAS_NEXT);
1640 }
1641 }
1642 else {
1643 if (orderByComparator.isAscending() ^ previous) {
1644 query.append(ORDER_BY_ASC);
1645 }
1646 else {
1647 query.append(ORDER_BY_DESC);
1648 }
1649 }
1650 }
1651 }
1652
1653 else {
1654 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
1655 }
1656
1657 String sql = query.toString();
1658
1659 Query q = session.createQuery(sql);
1660
1661 q.setFirstResult(0);
1662 q.setMaxResults(2);
1663
1664 QueryPos qPos = QueryPos.getInstance(q);
1665
1666 if (format != null) {
1667 qPos.add(format);
1668 }
1669
1670 if (orderByComparator != null) {
1671 Object[] values = orderByComparator.getOrderByValues(wikiPage);
1672
1673 for (Object value : values) {
1674 qPos.add(value);
1675 }
1676 }
1677
1678 List<WikiPage> list = q.list();
1679
1680 if (list.size() == 2) {
1681 return list.get(1);
1682 }
1683 else {
1684 return null;
1685 }
1686 }
1687
1688 public List<WikiPage> findByR_N(long resourcePrimKey, long nodeId)
1689 throws SystemException {
1690 return findByR_N(resourcePrimKey, nodeId, QueryUtil.ALL_POS,
1691 QueryUtil.ALL_POS, null);
1692 }
1693
1694 public List<WikiPage> findByR_N(long resourcePrimKey, long nodeId,
1695 int start, int end) throws SystemException {
1696 return findByR_N(resourcePrimKey, nodeId, start, end, null);
1697 }
1698
1699 public List<WikiPage> findByR_N(long resourcePrimKey, long nodeId,
1700 int start, int end, OrderByComparator orderByComparator)
1701 throws SystemException {
1702 Object[] finderArgs = new Object[] {
1703 resourcePrimKey, nodeId,
1704
1705 String.valueOf(start), String.valueOf(end),
1706 String.valueOf(orderByComparator)
1707 };
1708
1709 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_R_N,
1710 finderArgs, this);
1711
1712 if (list == null) {
1713 Session session = null;
1714
1715 try {
1716 session = openSession();
1717
1718 StringBundler query = null;
1719
1720 if (orderByComparator != null) {
1721 query = new StringBundler(4 +
1722 (orderByComparator.getOrderByFields().length * 3));
1723 }
1724 else {
1725 query = new StringBundler(4);
1726 }
1727
1728 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
1729
1730 query.append(_FINDER_COLUMN_R_N_RESOURCEPRIMKEY_2);
1731
1732 query.append(_FINDER_COLUMN_R_N_NODEID_2);
1733
1734 if (orderByComparator != null) {
1735 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1736 orderByComparator);
1737 }
1738
1739 else {
1740 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
1741 }
1742
1743 String sql = query.toString();
1744
1745 Query q = session.createQuery(sql);
1746
1747 QueryPos qPos = QueryPos.getInstance(q);
1748
1749 qPos.add(resourcePrimKey);
1750
1751 qPos.add(nodeId);
1752
1753 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
1754 end);
1755 }
1756 catch (Exception e) {
1757 throw processException(e);
1758 }
1759 finally {
1760 if (list == null) {
1761 list = new ArrayList<WikiPage>();
1762 }
1763
1764 cacheResult(list);
1765
1766 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_R_N, finderArgs,
1767 list);
1768
1769 closeSession(session);
1770 }
1771 }
1772
1773 return list;
1774 }
1775
1776 public WikiPage findByR_N_First(long resourcePrimKey, long nodeId,
1777 OrderByComparator orderByComparator)
1778 throws NoSuchPageException, SystemException {
1779 List<WikiPage> list = findByR_N(resourcePrimKey, nodeId, 0, 1,
1780 orderByComparator);
1781
1782 if (list.isEmpty()) {
1783 StringBundler msg = new StringBundler(6);
1784
1785 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1786
1787 msg.append("resourcePrimKey=");
1788 msg.append(resourcePrimKey);
1789
1790 msg.append(", nodeId=");
1791 msg.append(nodeId);
1792
1793 msg.append(StringPool.CLOSE_CURLY_BRACE);
1794
1795 throw new NoSuchPageException(msg.toString());
1796 }
1797 else {
1798 return list.get(0);
1799 }
1800 }
1801
1802 public WikiPage findByR_N_Last(long resourcePrimKey, long nodeId,
1803 OrderByComparator orderByComparator)
1804 throws NoSuchPageException, SystemException {
1805 int count = countByR_N(resourcePrimKey, nodeId);
1806
1807 List<WikiPage> list = findByR_N(resourcePrimKey, nodeId, count - 1,
1808 count, orderByComparator);
1809
1810 if (list.isEmpty()) {
1811 StringBundler msg = new StringBundler(6);
1812
1813 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1814
1815 msg.append("resourcePrimKey=");
1816 msg.append(resourcePrimKey);
1817
1818 msg.append(", nodeId=");
1819 msg.append(nodeId);
1820
1821 msg.append(StringPool.CLOSE_CURLY_BRACE);
1822
1823 throw new NoSuchPageException(msg.toString());
1824 }
1825 else {
1826 return list.get(0);
1827 }
1828 }
1829
1830 public WikiPage[] findByR_N_PrevAndNext(long pageId, long resourcePrimKey,
1831 long nodeId, OrderByComparator orderByComparator)
1832 throws NoSuchPageException, SystemException {
1833 WikiPage wikiPage = findByPrimaryKey(pageId);
1834
1835 Session session = null;
1836
1837 try {
1838 session = openSession();
1839
1840 WikiPage[] array = new WikiPageImpl[3];
1841
1842 array[0] = getByR_N_PrevAndNext(session, wikiPage, resourcePrimKey,
1843 nodeId, orderByComparator, true);
1844
1845 array[1] = wikiPage;
1846
1847 array[2] = getByR_N_PrevAndNext(session, wikiPage, resourcePrimKey,
1848 nodeId, orderByComparator, false);
1849
1850 return array;
1851 }
1852 catch (Exception e) {
1853 throw processException(e);
1854 }
1855 finally {
1856 closeSession(session);
1857 }
1858 }
1859
1860 protected WikiPage getByR_N_PrevAndNext(Session session, WikiPage wikiPage,
1861 long resourcePrimKey, long nodeId, OrderByComparator orderByComparator,
1862 boolean previous) {
1863 StringBundler query = null;
1864
1865 if (orderByComparator != null) {
1866 query = new StringBundler(6 +
1867 (orderByComparator.getOrderByFields().length * 6));
1868 }
1869 else {
1870 query = new StringBundler(3);
1871 }
1872
1873 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
1874
1875 query.append(_FINDER_COLUMN_R_N_RESOURCEPRIMKEY_2);
1876
1877 query.append(_FINDER_COLUMN_R_N_NODEID_2);
1878
1879 if (orderByComparator != null) {
1880 String[] orderByFields = orderByComparator.getOrderByFields();
1881
1882 if (orderByFields.length > 0) {
1883 query.append(WHERE_AND);
1884 }
1885
1886 for (int i = 0; i < orderByFields.length; i++) {
1887 query.append(_ORDER_BY_ENTITY_ALIAS);
1888 query.append(orderByFields[i]);
1889
1890 if ((i + 1) < orderByFields.length) {
1891 if (orderByComparator.isAscending() ^ previous) {
1892 query.append(WHERE_GREATER_THAN_HAS_NEXT);
1893 }
1894 else {
1895 query.append(WHERE_LESSER_THAN_HAS_NEXT);
1896 }
1897 }
1898 else {
1899 if (orderByComparator.isAscending() ^ previous) {
1900 query.append(WHERE_GREATER_THAN);
1901 }
1902 else {
1903 query.append(WHERE_LESSER_THAN);
1904 }
1905 }
1906 }
1907
1908 query.append(ORDER_BY_CLAUSE);
1909
1910 for (int i = 0; i < orderByFields.length; i++) {
1911 query.append(_ORDER_BY_ENTITY_ALIAS);
1912 query.append(orderByFields[i]);
1913
1914 if ((i + 1) < orderByFields.length) {
1915 if (orderByComparator.isAscending() ^ previous) {
1916 query.append(ORDER_BY_ASC_HAS_NEXT);
1917 }
1918 else {
1919 query.append(ORDER_BY_DESC_HAS_NEXT);
1920 }
1921 }
1922 else {
1923 if (orderByComparator.isAscending() ^ previous) {
1924 query.append(ORDER_BY_ASC);
1925 }
1926 else {
1927 query.append(ORDER_BY_DESC);
1928 }
1929 }
1930 }
1931 }
1932
1933 else {
1934 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
1935 }
1936
1937 String sql = query.toString();
1938
1939 Query q = session.createQuery(sql);
1940
1941 q.setFirstResult(0);
1942 q.setMaxResults(2);
1943
1944 QueryPos qPos = QueryPos.getInstance(q);
1945
1946 qPos.add(resourcePrimKey);
1947
1948 qPos.add(nodeId);
1949
1950 if (orderByComparator != null) {
1951 Object[] values = orderByComparator.getOrderByValues(wikiPage);
1952
1953 for (Object value : values) {
1954 qPos.add(value);
1955 }
1956 }
1957
1958 List<WikiPage> list = q.list();
1959
1960 if (list.size() == 2) {
1961 return list.get(1);
1962 }
1963 else {
1964 return null;
1965 }
1966 }
1967
1968 public List<WikiPage> findByN_T(long nodeId, String title)
1969 throws SystemException {
1970 return findByN_T(nodeId, title, QueryUtil.ALL_POS, QueryUtil.ALL_POS,
1971 null);
1972 }
1973
1974 public List<WikiPage> findByN_T(long nodeId, String title, int start,
1975 int end) throws SystemException {
1976 return findByN_T(nodeId, title, start, end, null);
1977 }
1978
1979 public List<WikiPage> findByN_T(long nodeId, String title, int start,
1980 int end, OrderByComparator orderByComparator) throws SystemException {
1981 Object[] finderArgs = new Object[] {
1982 nodeId, title,
1983
1984 String.valueOf(start), String.valueOf(end),
1985 String.valueOf(orderByComparator)
1986 };
1987
1988 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_T,
1989 finderArgs, this);
1990
1991 if (list == null) {
1992 Session session = null;
1993
1994 try {
1995 session = openSession();
1996
1997 StringBundler query = null;
1998
1999 if (orderByComparator != null) {
2000 query = new StringBundler(4 +
2001 (orderByComparator.getOrderByFields().length * 3));
2002 }
2003 else {
2004 query = new StringBundler(4);
2005 }
2006
2007 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
2008
2009 query.append(_FINDER_COLUMN_N_T_NODEID_2);
2010
2011 if (title == null) {
2012 query.append(_FINDER_COLUMN_N_T_TITLE_1);
2013 }
2014 else {
2015 if (title.equals(StringPool.BLANK)) {
2016 query.append(_FINDER_COLUMN_N_T_TITLE_3);
2017 }
2018 else {
2019 query.append(_FINDER_COLUMN_N_T_TITLE_2);
2020 }
2021 }
2022
2023 if (orderByComparator != null) {
2024 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
2025 orderByComparator);
2026 }
2027
2028 else {
2029 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
2030 }
2031
2032 String sql = query.toString();
2033
2034 Query q = session.createQuery(sql);
2035
2036 QueryPos qPos = QueryPos.getInstance(q);
2037
2038 qPos.add(nodeId);
2039
2040 if (title != null) {
2041 qPos.add(title);
2042 }
2043
2044 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
2045 end);
2046 }
2047 catch (Exception e) {
2048 throw processException(e);
2049 }
2050 finally {
2051 if (list == null) {
2052 list = new ArrayList<WikiPage>();
2053 }
2054
2055 cacheResult(list);
2056
2057 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_T, finderArgs,
2058 list);
2059
2060 closeSession(session);
2061 }
2062 }
2063
2064 return list;
2065 }
2066
2067 public WikiPage findByN_T_First(long nodeId, String title,
2068 OrderByComparator orderByComparator)
2069 throws NoSuchPageException, SystemException {
2070 List<WikiPage> list = findByN_T(nodeId, title, 0, 1, orderByComparator);
2071
2072 if (list.isEmpty()) {
2073 StringBundler msg = new StringBundler(6);
2074
2075 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2076
2077 msg.append("nodeId=");
2078 msg.append(nodeId);
2079
2080 msg.append(", title=");
2081 msg.append(title);
2082
2083 msg.append(StringPool.CLOSE_CURLY_BRACE);
2084
2085 throw new NoSuchPageException(msg.toString());
2086 }
2087 else {
2088 return list.get(0);
2089 }
2090 }
2091
2092 public WikiPage findByN_T_Last(long nodeId, String title,
2093 OrderByComparator orderByComparator)
2094 throws NoSuchPageException, SystemException {
2095 int count = countByN_T(nodeId, title);
2096
2097 List<WikiPage> list = findByN_T(nodeId, title, count - 1, count,
2098 orderByComparator);
2099
2100 if (list.isEmpty()) {
2101 StringBundler msg = new StringBundler(6);
2102
2103 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2104
2105 msg.append("nodeId=");
2106 msg.append(nodeId);
2107
2108 msg.append(", title=");
2109 msg.append(title);
2110
2111 msg.append(StringPool.CLOSE_CURLY_BRACE);
2112
2113 throw new NoSuchPageException(msg.toString());
2114 }
2115 else {
2116 return list.get(0);
2117 }
2118 }
2119
2120 public WikiPage[] findByN_T_PrevAndNext(long pageId, long nodeId,
2121 String title, OrderByComparator orderByComparator)
2122 throws NoSuchPageException, SystemException {
2123 WikiPage wikiPage = findByPrimaryKey(pageId);
2124
2125 Session session = null;
2126
2127 try {
2128 session = openSession();
2129
2130 WikiPage[] array = new WikiPageImpl[3];
2131
2132 array[0] = getByN_T_PrevAndNext(session, wikiPage, nodeId, title,
2133 orderByComparator, true);
2134
2135 array[1] = wikiPage;
2136
2137 array[2] = getByN_T_PrevAndNext(session, wikiPage, nodeId, title,
2138 orderByComparator, false);
2139
2140 return array;
2141 }
2142 catch (Exception e) {
2143 throw processException(e);
2144 }
2145 finally {
2146 closeSession(session);
2147 }
2148 }
2149
2150 protected WikiPage getByN_T_PrevAndNext(Session session, WikiPage wikiPage,
2151 long nodeId, String title, OrderByComparator orderByComparator,
2152 boolean previous) {
2153 StringBundler query = null;
2154
2155 if (orderByComparator != null) {
2156 query = new StringBundler(6 +
2157 (orderByComparator.getOrderByFields().length * 6));
2158 }
2159 else {
2160 query = new StringBundler(3);
2161 }
2162
2163 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
2164
2165 query.append(_FINDER_COLUMN_N_T_NODEID_2);
2166
2167 if (title == null) {
2168 query.append(_FINDER_COLUMN_N_T_TITLE_1);
2169 }
2170 else {
2171 if (title.equals(StringPool.BLANK)) {
2172 query.append(_FINDER_COLUMN_N_T_TITLE_3);
2173 }
2174 else {
2175 query.append(_FINDER_COLUMN_N_T_TITLE_2);
2176 }
2177 }
2178
2179 if (orderByComparator != null) {
2180 String[] orderByFields = orderByComparator.getOrderByFields();
2181
2182 if (orderByFields.length > 0) {
2183 query.append(WHERE_AND);
2184 }
2185
2186 for (int i = 0; i < orderByFields.length; i++) {
2187 query.append(_ORDER_BY_ENTITY_ALIAS);
2188 query.append(orderByFields[i]);
2189
2190 if ((i + 1) < orderByFields.length) {
2191 if (orderByComparator.isAscending() ^ previous) {
2192 query.append(WHERE_GREATER_THAN_HAS_NEXT);
2193 }
2194 else {
2195 query.append(WHERE_LESSER_THAN_HAS_NEXT);
2196 }
2197 }
2198 else {
2199 if (orderByComparator.isAscending() ^ previous) {
2200 query.append(WHERE_GREATER_THAN);
2201 }
2202 else {
2203 query.append(WHERE_LESSER_THAN);
2204 }
2205 }
2206 }
2207
2208 query.append(ORDER_BY_CLAUSE);
2209
2210 for (int i = 0; i < orderByFields.length; i++) {
2211 query.append(_ORDER_BY_ENTITY_ALIAS);
2212 query.append(orderByFields[i]);
2213
2214 if ((i + 1) < orderByFields.length) {
2215 if (orderByComparator.isAscending() ^ previous) {
2216 query.append(ORDER_BY_ASC_HAS_NEXT);
2217 }
2218 else {
2219 query.append(ORDER_BY_DESC_HAS_NEXT);
2220 }
2221 }
2222 else {
2223 if (orderByComparator.isAscending() ^ previous) {
2224 query.append(ORDER_BY_ASC);
2225 }
2226 else {
2227 query.append(ORDER_BY_DESC);
2228 }
2229 }
2230 }
2231 }
2232
2233 else {
2234 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
2235 }
2236
2237 String sql = query.toString();
2238
2239 Query q = session.createQuery(sql);
2240
2241 q.setFirstResult(0);
2242 q.setMaxResults(2);
2243
2244 QueryPos qPos = QueryPos.getInstance(q);
2245
2246 qPos.add(nodeId);
2247
2248 if (title != null) {
2249 qPos.add(title);
2250 }
2251
2252 if (orderByComparator != null) {
2253 Object[] values = orderByComparator.getOrderByValues(wikiPage);
2254
2255 for (Object value : values) {
2256 qPos.add(value);
2257 }
2258 }
2259
2260 List<WikiPage> list = q.list();
2261
2262 if (list.size() == 2) {
2263 return list.get(1);
2264 }
2265 else {
2266 return null;
2267 }
2268 }
2269
2270 public List<WikiPage> findByN_H(long nodeId, boolean head)
2271 throws SystemException {
2272 return findByN_H(nodeId, head, QueryUtil.ALL_POS, QueryUtil.ALL_POS,
2273 null);
2274 }
2275
2276 public List<WikiPage> findByN_H(long nodeId, boolean head, int start,
2277 int end) throws SystemException {
2278 return findByN_H(nodeId, head, start, end, null);
2279 }
2280
2281 public List<WikiPage> findByN_H(long nodeId, boolean head, int start,
2282 int end, OrderByComparator orderByComparator) throws SystemException {
2283 Object[] finderArgs = new Object[] {
2284 nodeId, head,
2285
2286 String.valueOf(start), String.valueOf(end),
2287 String.valueOf(orderByComparator)
2288 };
2289
2290 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_H,
2291 finderArgs, this);
2292
2293 if (list == null) {
2294 Session session = null;
2295
2296 try {
2297 session = openSession();
2298
2299 StringBundler query = null;
2300
2301 if (orderByComparator != null) {
2302 query = new StringBundler(4 +
2303 (orderByComparator.getOrderByFields().length * 3));
2304 }
2305 else {
2306 query = new StringBundler(4);
2307 }
2308
2309 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
2310
2311 query.append(_FINDER_COLUMN_N_H_NODEID_2);
2312
2313 query.append(_FINDER_COLUMN_N_H_HEAD_2);
2314
2315 if (orderByComparator != null) {
2316 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
2317 orderByComparator);
2318 }
2319
2320 else {
2321 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
2322 }
2323
2324 String sql = query.toString();
2325
2326 Query q = session.createQuery(sql);
2327
2328 QueryPos qPos = QueryPos.getInstance(q);
2329
2330 qPos.add(nodeId);
2331
2332 qPos.add(head);
2333
2334 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
2335 end);
2336 }
2337 catch (Exception e) {
2338 throw processException(e);
2339 }
2340 finally {
2341 if (list == null) {
2342 list = new ArrayList<WikiPage>();
2343 }
2344
2345 cacheResult(list);
2346
2347 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_H, finderArgs,
2348 list);
2349
2350 closeSession(session);
2351 }
2352 }
2353
2354 return list;
2355 }
2356
2357 public WikiPage findByN_H_First(long nodeId, boolean head,
2358 OrderByComparator orderByComparator)
2359 throws NoSuchPageException, SystemException {
2360 List<WikiPage> list = findByN_H(nodeId, head, 0, 1, orderByComparator);
2361
2362 if (list.isEmpty()) {
2363 StringBundler msg = new StringBundler(6);
2364
2365 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2366
2367 msg.append("nodeId=");
2368 msg.append(nodeId);
2369
2370 msg.append(", head=");
2371 msg.append(head);
2372
2373 msg.append(StringPool.CLOSE_CURLY_BRACE);
2374
2375 throw new NoSuchPageException(msg.toString());
2376 }
2377 else {
2378 return list.get(0);
2379 }
2380 }
2381
2382 public WikiPage findByN_H_Last(long nodeId, boolean head,
2383 OrderByComparator orderByComparator)
2384 throws NoSuchPageException, SystemException {
2385 int count = countByN_H(nodeId, head);
2386
2387 List<WikiPage> list = findByN_H(nodeId, head, count - 1, count,
2388 orderByComparator);
2389
2390 if (list.isEmpty()) {
2391 StringBundler msg = new StringBundler(6);
2392
2393 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2394
2395 msg.append("nodeId=");
2396 msg.append(nodeId);
2397
2398 msg.append(", head=");
2399 msg.append(head);
2400
2401 msg.append(StringPool.CLOSE_CURLY_BRACE);
2402
2403 throw new NoSuchPageException(msg.toString());
2404 }
2405 else {
2406 return list.get(0);
2407 }
2408 }
2409
2410 public WikiPage[] findByN_H_PrevAndNext(long pageId, long nodeId,
2411 boolean head, OrderByComparator orderByComparator)
2412 throws NoSuchPageException, SystemException {
2413 WikiPage wikiPage = findByPrimaryKey(pageId);
2414
2415 Session session = null;
2416
2417 try {
2418 session = openSession();
2419
2420 WikiPage[] array = new WikiPageImpl[3];
2421
2422 array[0] = getByN_H_PrevAndNext(session, wikiPage, nodeId, head,
2423 orderByComparator, true);
2424
2425 array[1] = wikiPage;
2426
2427 array[2] = getByN_H_PrevAndNext(session, wikiPage, nodeId, head,
2428 orderByComparator, false);
2429
2430 return array;
2431 }
2432 catch (Exception e) {
2433 throw processException(e);
2434 }
2435 finally {
2436 closeSession(session);
2437 }
2438 }
2439
2440 protected WikiPage getByN_H_PrevAndNext(Session session, WikiPage wikiPage,
2441 long nodeId, boolean head, OrderByComparator orderByComparator,
2442 boolean previous) {
2443 StringBundler query = null;
2444
2445 if (orderByComparator != null) {
2446 query = new StringBundler(6 +
2447 (orderByComparator.getOrderByFields().length * 6));
2448 }
2449 else {
2450 query = new StringBundler(3);
2451 }
2452
2453 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
2454
2455 query.append(_FINDER_COLUMN_N_H_NODEID_2);
2456
2457 query.append(_FINDER_COLUMN_N_H_HEAD_2);
2458
2459 if (orderByComparator != null) {
2460 String[] orderByFields = orderByComparator.getOrderByFields();
2461
2462 if (orderByFields.length > 0) {
2463 query.append(WHERE_AND);
2464 }
2465
2466 for (int i = 0; i < orderByFields.length; i++) {
2467 query.append(_ORDER_BY_ENTITY_ALIAS);
2468 query.append(orderByFields[i]);
2469
2470 if ((i + 1) < orderByFields.length) {
2471 if (orderByComparator.isAscending() ^ previous) {
2472 query.append(WHERE_GREATER_THAN_HAS_NEXT);
2473 }
2474 else {
2475 query.append(WHERE_LESSER_THAN_HAS_NEXT);
2476 }
2477 }
2478 else {
2479 if (orderByComparator.isAscending() ^ previous) {
2480 query.append(WHERE_GREATER_THAN);
2481 }
2482 else {
2483 query.append(WHERE_LESSER_THAN);
2484 }
2485 }
2486 }
2487
2488 query.append(ORDER_BY_CLAUSE);
2489
2490 for (int i = 0; i < orderByFields.length; i++) {
2491 query.append(_ORDER_BY_ENTITY_ALIAS);
2492 query.append(orderByFields[i]);
2493
2494 if ((i + 1) < orderByFields.length) {
2495 if (orderByComparator.isAscending() ^ previous) {
2496 query.append(ORDER_BY_ASC_HAS_NEXT);
2497 }
2498 else {
2499 query.append(ORDER_BY_DESC_HAS_NEXT);
2500 }
2501 }
2502 else {
2503 if (orderByComparator.isAscending() ^ previous) {
2504 query.append(ORDER_BY_ASC);
2505 }
2506 else {
2507 query.append(ORDER_BY_DESC);
2508 }
2509 }
2510 }
2511 }
2512
2513 else {
2514 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
2515 }
2516
2517 String sql = query.toString();
2518
2519 Query q = session.createQuery(sql);
2520
2521 q.setFirstResult(0);
2522 q.setMaxResults(2);
2523
2524 QueryPos qPos = QueryPos.getInstance(q);
2525
2526 qPos.add(nodeId);
2527
2528 qPos.add(head);
2529
2530 if (orderByComparator != null) {
2531 Object[] values = orderByComparator.getOrderByValues(wikiPage);
2532
2533 for (Object value : values) {
2534 qPos.add(value);
2535 }
2536 }
2537
2538 List<WikiPage> list = q.list();
2539
2540 if (list.size() == 2) {
2541 return list.get(1);
2542 }
2543 else {
2544 return null;
2545 }
2546 }
2547
2548 public List<WikiPage> findByN_P(long nodeId, String parentTitle)
2549 throws SystemException {
2550 return findByN_P(nodeId, parentTitle, QueryUtil.ALL_POS,
2551 QueryUtil.ALL_POS, null);
2552 }
2553
2554 public List<WikiPage> findByN_P(long nodeId, String parentTitle, int start,
2555 int end) throws SystemException {
2556 return findByN_P(nodeId, parentTitle, start, end, null);
2557 }
2558
2559 public List<WikiPage> findByN_P(long nodeId, String parentTitle, int start,
2560 int end, OrderByComparator orderByComparator) throws SystemException {
2561 Object[] finderArgs = new Object[] {
2562 nodeId, parentTitle,
2563
2564 String.valueOf(start), String.valueOf(end),
2565 String.valueOf(orderByComparator)
2566 };
2567
2568 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_P,
2569 finderArgs, this);
2570
2571 if (list == null) {
2572 Session session = null;
2573
2574 try {
2575 session = openSession();
2576
2577 StringBundler query = null;
2578
2579 if (orderByComparator != null) {
2580 query = new StringBundler(4 +
2581 (orderByComparator.getOrderByFields().length * 3));
2582 }
2583 else {
2584 query = new StringBundler(4);
2585 }
2586
2587 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
2588
2589 query.append(_FINDER_COLUMN_N_P_NODEID_2);
2590
2591 if (parentTitle == null) {
2592 query.append(_FINDER_COLUMN_N_P_PARENTTITLE_1);
2593 }
2594 else {
2595 if (parentTitle.equals(StringPool.BLANK)) {
2596 query.append(_FINDER_COLUMN_N_P_PARENTTITLE_3);
2597 }
2598 else {
2599 query.append(_FINDER_COLUMN_N_P_PARENTTITLE_2);
2600 }
2601 }
2602
2603 if (orderByComparator != null) {
2604 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
2605 orderByComparator);
2606 }
2607
2608 else {
2609 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
2610 }
2611
2612 String sql = query.toString();
2613
2614 Query q = session.createQuery(sql);
2615
2616 QueryPos qPos = QueryPos.getInstance(q);
2617
2618 qPos.add(nodeId);
2619
2620 if (parentTitle != null) {
2621 qPos.add(parentTitle);
2622 }
2623
2624 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
2625 end);
2626 }
2627 catch (Exception e) {
2628 throw processException(e);
2629 }
2630 finally {
2631 if (list == null) {
2632 list = new ArrayList<WikiPage>();
2633 }
2634
2635 cacheResult(list);
2636
2637 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_P, finderArgs,
2638 list);
2639
2640 closeSession(session);
2641 }
2642 }
2643
2644 return list;
2645 }
2646
2647 public WikiPage findByN_P_First(long nodeId, String parentTitle,
2648 OrderByComparator orderByComparator)
2649 throws NoSuchPageException, SystemException {
2650 List<WikiPage> list = findByN_P(nodeId, parentTitle, 0, 1,
2651 orderByComparator);
2652
2653 if (list.isEmpty()) {
2654 StringBundler msg = new StringBundler(6);
2655
2656 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2657
2658 msg.append("nodeId=");
2659 msg.append(nodeId);
2660
2661 msg.append(", parentTitle=");
2662 msg.append(parentTitle);
2663
2664 msg.append(StringPool.CLOSE_CURLY_BRACE);
2665
2666 throw new NoSuchPageException(msg.toString());
2667 }
2668 else {
2669 return list.get(0);
2670 }
2671 }
2672
2673 public WikiPage findByN_P_Last(long nodeId, String parentTitle,
2674 OrderByComparator orderByComparator)
2675 throws NoSuchPageException, SystemException {
2676 int count = countByN_P(nodeId, parentTitle);
2677
2678 List<WikiPage> list = findByN_P(nodeId, parentTitle, count - 1, count,
2679 orderByComparator);
2680
2681 if (list.isEmpty()) {
2682 StringBundler msg = new StringBundler(6);
2683
2684 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2685
2686 msg.append("nodeId=");
2687 msg.append(nodeId);
2688
2689 msg.append(", parentTitle=");
2690 msg.append(parentTitle);
2691
2692 msg.append(StringPool.CLOSE_CURLY_BRACE);
2693
2694 throw new NoSuchPageException(msg.toString());
2695 }
2696 else {
2697 return list.get(0);
2698 }
2699 }
2700
2701 public WikiPage[] findByN_P_PrevAndNext(long pageId, long nodeId,
2702 String parentTitle, OrderByComparator orderByComparator)
2703 throws NoSuchPageException, SystemException {
2704 WikiPage wikiPage = findByPrimaryKey(pageId);
2705
2706 Session session = null;
2707
2708 try {
2709 session = openSession();
2710
2711 WikiPage[] array = new WikiPageImpl[3];
2712
2713 array[0] = getByN_P_PrevAndNext(session, wikiPage, nodeId,
2714 parentTitle, orderByComparator, true);
2715
2716 array[1] = wikiPage;
2717
2718 array[2] = getByN_P_PrevAndNext(session, wikiPage, nodeId,
2719 parentTitle, orderByComparator, false);
2720
2721 return array;
2722 }
2723 catch (Exception e) {
2724 throw processException(e);
2725 }
2726 finally {
2727 closeSession(session);
2728 }
2729 }
2730
2731 protected WikiPage getByN_P_PrevAndNext(Session session, WikiPage wikiPage,
2732 long nodeId, String parentTitle, OrderByComparator orderByComparator,
2733 boolean previous) {
2734 StringBundler query = null;
2735
2736 if (orderByComparator != null) {
2737 query = new StringBundler(6 +
2738 (orderByComparator.getOrderByFields().length * 6));
2739 }
2740 else {
2741 query = new StringBundler(3);
2742 }
2743
2744 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
2745
2746 query.append(_FINDER_COLUMN_N_P_NODEID_2);
2747
2748 if (parentTitle == null) {
2749 query.append(_FINDER_COLUMN_N_P_PARENTTITLE_1);
2750 }
2751 else {
2752 if (parentTitle.equals(StringPool.BLANK)) {
2753 query.append(_FINDER_COLUMN_N_P_PARENTTITLE_3);
2754 }
2755 else {
2756 query.append(_FINDER_COLUMN_N_P_PARENTTITLE_2);
2757 }
2758 }
2759
2760 if (orderByComparator != null) {
2761 String[] orderByFields = orderByComparator.getOrderByFields();
2762
2763 if (orderByFields.length > 0) {
2764 query.append(WHERE_AND);
2765 }
2766
2767 for (int i = 0; i < orderByFields.length; i++) {
2768 query.append(_ORDER_BY_ENTITY_ALIAS);
2769 query.append(orderByFields[i]);
2770
2771 if ((i + 1) < orderByFields.length) {
2772 if (orderByComparator.isAscending() ^ previous) {
2773 query.append(WHERE_GREATER_THAN_HAS_NEXT);
2774 }
2775 else {
2776 query.append(WHERE_LESSER_THAN_HAS_NEXT);
2777 }
2778 }
2779 else {
2780 if (orderByComparator.isAscending() ^ previous) {
2781 query.append(WHERE_GREATER_THAN);
2782 }
2783 else {
2784 query.append(WHERE_LESSER_THAN);
2785 }
2786 }
2787 }
2788
2789 query.append(ORDER_BY_CLAUSE);
2790
2791 for (int i = 0; i < orderByFields.length; i++) {
2792 query.append(_ORDER_BY_ENTITY_ALIAS);
2793 query.append(orderByFields[i]);
2794
2795 if ((i + 1) < orderByFields.length) {
2796 if (orderByComparator.isAscending() ^ previous) {
2797 query.append(ORDER_BY_ASC_HAS_NEXT);
2798 }
2799 else {
2800 query.append(ORDER_BY_DESC_HAS_NEXT);
2801 }
2802 }
2803 else {
2804 if (orderByComparator.isAscending() ^ previous) {
2805 query.append(ORDER_BY_ASC);
2806 }
2807 else {
2808 query.append(ORDER_BY_DESC);
2809 }
2810 }
2811 }
2812 }
2813
2814 else {
2815 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
2816 }
2817
2818 String sql = query.toString();
2819
2820 Query q = session.createQuery(sql);
2821
2822 q.setFirstResult(0);
2823 q.setMaxResults(2);
2824
2825 QueryPos qPos = QueryPos.getInstance(q);
2826
2827 qPos.add(nodeId);
2828
2829 if (parentTitle != null) {
2830 qPos.add(parentTitle);
2831 }
2832
2833 if (orderByComparator != null) {
2834 Object[] values = orderByComparator.getOrderByValues(wikiPage);
2835
2836 for (Object value : values) {
2837 qPos.add(value);
2838 }
2839 }
2840
2841 List<WikiPage> list = q.list();
2842
2843 if (list.size() == 2) {
2844 return list.get(1);
2845 }
2846 else {
2847 return null;
2848 }
2849 }
2850
2851 public List<WikiPage> findByN_R(long nodeId, String redirectTitle)
2852 throws SystemException {
2853 return findByN_R(nodeId, redirectTitle, QueryUtil.ALL_POS,
2854 QueryUtil.ALL_POS, null);
2855 }
2856
2857 public List<WikiPage> findByN_R(long nodeId, String redirectTitle,
2858 int start, int end) throws SystemException {
2859 return findByN_R(nodeId, redirectTitle, start, end, null);
2860 }
2861
2862 public List<WikiPage> findByN_R(long nodeId, String redirectTitle,
2863 int start, int end, OrderByComparator orderByComparator)
2864 throws SystemException {
2865 Object[] finderArgs = new Object[] {
2866 nodeId, redirectTitle,
2867
2868 String.valueOf(start), String.valueOf(end),
2869 String.valueOf(orderByComparator)
2870 };
2871
2872 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_R,
2873 finderArgs, this);
2874
2875 if (list == null) {
2876 Session session = null;
2877
2878 try {
2879 session = openSession();
2880
2881 StringBundler query = null;
2882
2883 if (orderByComparator != null) {
2884 query = new StringBundler(4 +
2885 (orderByComparator.getOrderByFields().length * 3));
2886 }
2887 else {
2888 query = new StringBundler(4);
2889 }
2890
2891 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
2892
2893 query.append(_FINDER_COLUMN_N_R_NODEID_2);
2894
2895 if (redirectTitle == null) {
2896 query.append(_FINDER_COLUMN_N_R_REDIRECTTITLE_1);
2897 }
2898 else {
2899 if (redirectTitle.equals(StringPool.BLANK)) {
2900 query.append(_FINDER_COLUMN_N_R_REDIRECTTITLE_3);
2901 }
2902 else {
2903 query.append(_FINDER_COLUMN_N_R_REDIRECTTITLE_2);
2904 }
2905 }
2906
2907 if (orderByComparator != null) {
2908 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
2909 orderByComparator);
2910 }
2911
2912 else {
2913 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
2914 }
2915
2916 String sql = query.toString();
2917
2918 Query q = session.createQuery(sql);
2919
2920 QueryPos qPos = QueryPos.getInstance(q);
2921
2922 qPos.add(nodeId);
2923
2924 if (redirectTitle != null) {
2925 qPos.add(redirectTitle);
2926 }
2927
2928 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
2929 end);
2930 }
2931 catch (Exception e) {
2932 throw processException(e);
2933 }
2934 finally {
2935 if (list == null) {
2936 list = new ArrayList<WikiPage>();
2937 }
2938
2939 cacheResult(list);
2940
2941 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_R, finderArgs,
2942 list);
2943
2944 closeSession(session);
2945 }
2946 }
2947
2948 return list;
2949 }
2950
2951 public WikiPage findByN_R_First(long nodeId, String redirectTitle,
2952 OrderByComparator orderByComparator)
2953 throws NoSuchPageException, SystemException {
2954 List<WikiPage> list = findByN_R(nodeId, redirectTitle, 0, 1,
2955 orderByComparator);
2956
2957 if (list.isEmpty()) {
2958 StringBundler msg = new StringBundler(6);
2959
2960 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2961
2962 msg.append("nodeId=");
2963 msg.append(nodeId);
2964
2965 msg.append(", redirectTitle=");
2966 msg.append(redirectTitle);
2967
2968 msg.append(StringPool.CLOSE_CURLY_BRACE);
2969
2970 throw new NoSuchPageException(msg.toString());
2971 }
2972 else {
2973 return list.get(0);
2974 }
2975 }
2976
2977 public WikiPage findByN_R_Last(long nodeId, String redirectTitle,
2978 OrderByComparator orderByComparator)
2979 throws NoSuchPageException, SystemException {
2980 int count = countByN_R(nodeId, redirectTitle);
2981
2982 List<WikiPage> list = findByN_R(nodeId, redirectTitle, count - 1,
2983 count, orderByComparator);
2984
2985 if (list.isEmpty()) {
2986 StringBundler msg = new StringBundler(6);
2987
2988 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2989
2990 msg.append("nodeId=");
2991 msg.append(nodeId);
2992
2993 msg.append(", redirectTitle=");
2994 msg.append(redirectTitle);
2995
2996 msg.append(StringPool.CLOSE_CURLY_BRACE);
2997
2998 throw new NoSuchPageException(msg.toString());
2999 }
3000 else {
3001 return list.get(0);
3002 }
3003 }
3004
3005 public WikiPage[] findByN_R_PrevAndNext(long pageId, long nodeId,
3006 String redirectTitle, OrderByComparator orderByComparator)
3007 throws NoSuchPageException, SystemException {
3008 WikiPage wikiPage = findByPrimaryKey(pageId);
3009
3010 Session session = null;
3011
3012 try {
3013 session = openSession();
3014
3015 WikiPage[] array = new WikiPageImpl[3];
3016
3017 array[0] = getByN_R_PrevAndNext(session, wikiPage, nodeId,
3018 redirectTitle, orderByComparator, true);
3019
3020 array[1] = wikiPage;
3021
3022 array[2] = getByN_R_PrevAndNext(session, wikiPage, nodeId,
3023 redirectTitle, orderByComparator, false);
3024
3025 return array;
3026 }
3027 catch (Exception e) {
3028 throw processException(e);
3029 }
3030 finally {
3031 closeSession(session);
3032 }
3033 }
3034
3035 protected WikiPage getByN_R_PrevAndNext(Session session, WikiPage wikiPage,
3036 long nodeId, String redirectTitle, OrderByComparator orderByComparator,
3037 boolean previous) {
3038 StringBundler query = null;
3039
3040 if (orderByComparator != null) {
3041 query = new StringBundler(6 +
3042 (orderByComparator.getOrderByFields().length * 6));
3043 }
3044 else {
3045 query = new StringBundler(3);
3046 }
3047
3048 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
3049
3050 query.append(_FINDER_COLUMN_N_R_NODEID_2);
3051
3052 if (redirectTitle == null) {
3053 query.append(_FINDER_COLUMN_N_R_REDIRECTTITLE_1);
3054 }
3055 else {
3056 if (redirectTitle.equals(StringPool.BLANK)) {
3057 query.append(_FINDER_COLUMN_N_R_REDIRECTTITLE_3);
3058 }
3059 else {
3060 query.append(_FINDER_COLUMN_N_R_REDIRECTTITLE_2);
3061 }
3062 }
3063
3064 if (orderByComparator != null) {
3065 String[] orderByFields = orderByComparator.getOrderByFields();
3066
3067 if (orderByFields.length > 0) {
3068 query.append(WHERE_AND);
3069 }
3070
3071 for (int i = 0; i < orderByFields.length; i++) {
3072 query.append(_ORDER_BY_ENTITY_ALIAS);
3073 query.append(orderByFields[i]);
3074
3075 if ((i + 1) < orderByFields.length) {
3076 if (orderByComparator.isAscending() ^ previous) {
3077 query.append(WHERE_GREATER_THAN_HAS_NEXT);
3078 }
3079 else {
3080 query.append(WHERE_LESSER_THAN_HAS_NEXT);
3081 }
3082 }
3083 else {
3084 if (orderByComparator.isAscending() ^ previous) {
3085 query.append(WHERE_GREATER_THAN);
3086 }
3087 else {
3088 query.append(WHERE_LESSER_THAN);
3089 }
3090 }
3091 }
3092
3093 query.append(ORDER_BY_CLAUSE);
3094
3095 for (int i = 0; i < orderByFields.length; i++) {
3096 query.append(_ORDER_BY_ENTITY_ALIAS);
3097 query.append(orderByFields[i]);
3098
3099 if ((i + 1) < orderByFields.length) {
3100 if (orderByComparator.isAscending() ^ previous) {
3101 query.append(ORDER_BY_ASC_HAS_NEXT);
3102 }
3103 else {
3104 query.append(ORDER_BY_DESC_HAS_NEXT);
3105 }
3106 }
3107 else {
3108 if (orderByComparator.isAscending() ^ previous) {
3109 query.append(ORDER_BY_ASC);
3110 }
3111 else {
3112 query.append(ORDER_BY_DESC);
3113 }
3114 }
3115 }
3116 }
3117
3118 else {
3119 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
3120 }
3121
3122 String sql = query.toString();
3123
3124 Query q = session.createQuery(sql);
3125
3126 q.setFirstResult(0);
3127 q.setMaxResults(2);
3128
3129 QueryPos qPos = QueryPos.getInstance(q);
3130
3131 qPos.add(nodeId);
3132
3133 if (redirectTitle != null) {
3134 qPos.add(redirectTitle);
3135 }
3136
3137 if (orderByComparator != null) {
3138 Object[] values = orderByComparator.getOrderByValues(wikiPage);
3139
3140 for (Object value : values) {
3141 qPos.add(value);
3142 }
3143 }
3144
3145 List<WikiPage> list = q.list();
3146
3147 if (list.size() == 2) {
3148 return list.get(1);
3149 }
3150 else {
3151 return null;
3152 }
3153 }
3154
3155 public List<WikiPage> findByN_S(long nodeId, int status)
3156 throws SystemException {
3157 return findByN_S(nodeId, status, QueryUtil.ALL_POS, QueryUtil.ALL_POS,
3158 null);
3159 }
3160
3161 public List<WikiPage> findByN_S(long nodeId, int status, int start, int end)
3162 throws SystemException {
3163 return findByN_S(nodeId, status, start, end, null);
3164 }
3165
3166 public List<WikiPage> findByN_S(long nodeId, int status, int start,
3167 int end, OrderByComparator orderByComparator) throws SystemException {
3168 Object[] finderArgs = new Object[] {
3169 nodeId, status,
3170
3171 String.valueOf(start), String.valueOf(end),
3172 String.valueOf(orderByComparator)
3173 };
3174
3175 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_S,
3176 finderArgs, this);
3177
3178 if (list == null) {
3179 Session session = null;
3180
3181 try {
3182 session = openSession();
3183
3184 StringBundler query = null;
3185
3186 if (orderByComparator != null) {
3187 query = new StringBundler(4 +
3188 (orderByComparator.getOrderByFields().length * 3));
3189 }
3190 else {
3191 query = new StringBundler(4);
3192 }
3193
3194 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
3195
3196 query.append(_FINDER_COLUMN_N_S_NODEID_2);
3197
3198 query.append(_FINDER_COLUMN_N_S_STATUS_2);
3199
3200 if (orderByComparator != null) {
3201 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
3202 orderByComparator);
3203 }
3204
3205 else {
3206 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
3207 }
3208
3209 String sql = query.toString();
3210
3211 Query q = session.createQuery(sql);
3212
3213 QueryPos qPos = QueryPos.getInstance(q);
3214
3215 qPos.add(nodeId);
3216
3217 qPos.add(status);
3218
3219 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
3220 end);
3221 }
3222 catch (Exception e) {
3223 throw processException(e);
3224 }
3225 finally {
3226 if (list == null) {
3227 list = new ArrayList<WikiPage>();
3228 }
3229
3230 cacheResult(list);
3231
3232 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_S, finderArgs,
3233 list);
3234
3235 closeSession(session);
3236 }
3237 }
3238
3239 return list;
3240 }
3241
3242 public WikiPage findByN_S_First(long nodeId, int status,
3243 OrderByComparator orderByComparator)
3244 throws NoSuchPageException, SystemException {
3245 List<WikiPage> list = findByN_S(nodeId, status, 0, 1, orderByComparator);
3246
3247 if (list.isEmpty()) {
3248 StringBundler msg = new StringBundler(6);
3249
3250 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
3251
3252 msg.append("nodeId=");
3253 msg.append(nodeId);
3254
3255 msg.append(", status=");
3256 msg.append(status);
3257
3258 msg.append(StringPool.CLOSE_CURLY_BRACE);
3259
3260 throw new NoSuchPageException(msg.toString());
3261 }
3262 else {
3263 return list.get(0);
3264 }
3265 }
3266
3267 public WikiPage findByN_S_Last(long nodeId, int status,
3268 OrderByComparator orderByComparator)
3269 throws NoSuchPageException, SystemException {
3270 int count = countByN_S(nodeId, status);
3271
3272 List<WikiPage> list = findByN_S(nodeId, status, count - 1, count,
3273 orderByComparator);
3274
3275 if (list.isEmpty()) {
3276 StringBundler msg = new StringBundler(6);
3277
3278 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
3279
3280 msg.append("nodeId=");
3281 msg.append(nodeId);
3282
3283 msg.append(", status=");
3284 msg.append(status);
3285
3286 msg.append(StringPool.CLOSE_CURLY_BRACE);
3287
3288 throw new NoSuchPageException(msg.toString());
3289 }
3290 else {
3291 return list.get(0);
3292 }
3293 }
3294
3295 public WikiPage[] findByN_S_PrevAndNext(long pageId, long nodeId,
3296 int status, OrderByComparator orderByComparator)
3297 throws NoSuchPageException, SystemException {
3298 WikiPage wikiPage = findByPrimaryKey(pageId);
3299
3300 Session session = null;
3301
3302 try {
3303 session = openSession();
3304
3305 WikiPage[] array = new WikiPageImpl[3];
3306
3307 array[0] = getByN_S_PrevAndNext(session, wikiPage, nodeId, status,
3308 orderByComparator, true);
3309
3310 array[1] = wikiPage;
3311
3312 array[2] = getByN_S_PrevAndNext(session, wikiPage, nodeId, status,
3313 orderByComparator, false);
3314
3315 return array;
3316 }
3317 catch (Exception e) {
3318 throw processException(e);
3319 }
3320 finally {
3321 closeSession(session);
3322 }
3323 }
3324
3325 protected WikiPage getByN_S_PrevAndNext(Session session, WikiPage wikiPage,
3326 long nodeId, int status, OrderByComparator orderByComparator,
3327 boolean previous) {
3328 StringBundler query = null;
3329
3330 if (orderByComparator != null) {
3331 query = new StringBundler(6 +
3332 (orderByComparator.getOrderByFields().length * 6));
3333 }
3334 else {
3335 query = new StringBundler(3);
3336 }
3337
3338 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
3339
3340 query.append(_FINDER_COLUMN_N_S_NODEID_2);
3341
3342 query.append(_FINDER_COLUMN_N_S_STATUS_2);
3343
3344 if (orderByComparator != null) {
3345 String[] orderByFields = orderByComparator.getOrderByFields();
3346
3347 if (orderByFields.length > 0) {
3348 query.append(WHERE_AND);
3349 }
3350
3351 for (int i = 0; i < orderByFields.length; i++) {
3352 query.append(_ORDER_BY_ENTITY_ALIAS);
3353 query.append(orderByFields[i]);
3354
3355 if ((i + 1) < orderByFields.length) {
3356 if (orderByComparator.isAscending() ^ previous) {
3357 query.append(WHERE_GREATER_THAN_HAS_NEXT);
3358 }
3359 else {
3360 query.append(WHERE_LESSER_THAN_HAS_NEXT);
3361 }
3362 }
3363 else {
3364 if (orderByComparator.isAscending() ^ previous) {
3365 query.append(WHERE_GREATER_THAN);
3366 }
3367 else {
3368 query.append(WHERE_LESSER_THAN);
3369 }
3370 }
3371 }
3372
3373 query.append(ORDER_BY_CLAUSE);
3374
3375 for (int i = 0; i < orderByFields.length; i++) {
3376 query.append(_ORDER_BY_ENTITY_ALIAS);
3377 query.append(orderByFields[i]);
3378
3379 if ((i + 1) < orderByFields.length) {
3380 if (orderByComparator.isAscending() ^ previous) {
3381 query.append(ORDER_BY_ASC_HAS_NEXT);
3382 }
3383 else {
3384 query.append(ORDER_BY_DESC_HAS_NEXT);
3385 }
3386 }
3387 else {
3388 if (orderByComparator.isAscending() ^ previous) {
3389 query.append(ORDER_BY_ASC);
3390 }
3391 else {
3392 query.append(ORDER_BY_DESC);
3393 }
3394 }
3395 }
3396 }
3397
3398 else {
3399 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
3400 }
3401
3402 String sql = query.toString();
3403
3404 Query q = session.createQuery(sql);
3405
3406 q.setFirstResult(0);
3407 q.setMaxResults(2);
3408
3409 QueryPos qPos = QueryPos.getInstance(q);
3410
3411 qPos.add(nodeId);
3412
3413 qPos.add(status);
3414
3415 if (orderByComparator != null) {
3416 Object[] values = orderByComparator.getOrderByValues(wikiPage);
3417
3418 for (Object value : values) {
3419 qPos.add(value);
3420 }
3421 }
3422
3423 List<WikiPage> list = q.list();
3424
3425 if (list.size() == 2) {
3426 return list.get(1);
3427 }
3428 else {
3429 return null;
3430 }
3431 }
3432
3433 public WikiPage findByR_N_V(long resourcePrimKey, long nodeId,
3434 double version) throws NoSuchPageException, SystemException {
3435 WikiPage wikiPage = fetchByR_N_V(resourcePrimKey, nodeId, version);
3436
3437 if (wikiPage == null) {
3438 StringBundler msg = new StringBundler(8);
3439
3440 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
3441
3442 msg.append("resourcePrimKey=");
3443 msg.append(resourcePrimKey);
3444
3445 msg.append(", nodeId=");
3446 msg.append(nodeId);
3447
3448 msg.append(", version=");
3449 msg.append(version);
3450
3451 msg.append(StringPool.CLOSE_CURLY_BRACE);
3452
3453 if (_log.isWarnEnabled()) {
3454 _log.warn(msg.toString());
3455 }
3456
3457 throw new NoSuchPageException(msg.toString());
3458 }
3459
3460 return wikiPage;
3461 }
3462
3463 public WikiPage fetchByR_N_V(long resourcePrimKey, long nodeId,
3464 double version) throws SystemException {
3465 return fetchByR_N_V(resourcePrimKey, nodeId, version, true);
3466 }
3467
3468 public WikiPage fetchByR_N_V(long resourcePrimKey, long nodeId,
3469 double version, boolean retrieveFromCache) throws SystemException {
3470 Object[] finderArgs = new Object[] { resourcePrimKey, nodeId, version };
3471
3472 Object result = null;
3473
3474 if (retrieveFromCache) {
3475 result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_R_N_V,
3476 finderArgs, this);
3477 }
3478
3479 if (result == null) {
3480 Session session = null;
3481
3482 try {
3483 session = openSession();
3484
3485 StringBundler query = new StringBundler(5);
3486
3487 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
3488
3489 query.append(_FINDER_COLUMN_R_N_V_RESOURCEPRIMKEY_2);
3490
3491 query.append(_FINDER_COLUMN_R_N_V_NODEID_2);
3492
3493 query.append(_FINDER_COLUMN_R_N_V_VERSION_2);
3494
3495 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
3496
3497 String sql = query.toString();
3498
3499 Query q = session.createQuery(sql);
3500
3501 QueryPos qPos = QueryPos.getInstance(q);
3502
3503 qPos.add(resourcePrimKey);
3504
3505 qPos.add(nodeId);
3506
3507 qPos.add(version);
3508
3509 List<WikiPage> list = q.list();
3510
3511 result = list;
3512
3513 WikiPage wikiPage = null;
3514
3515 if (list.isEmpty()) {
3516 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_R_N_V,
3517 finderArgs, list);
3518 }
3519 else {
3520 wikiPage = list.get(0);
3521
3522 cacheResult(wikiPage);
3523
3524 if ((wikiPage.getResourcePrimKey() != resourcePrimKey) ||
3525 (wikiPage.getNodeId() != nodeId) ||
3526 (wikiPage.getVersion() != version)) {
3527 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_R_N_V,
3528 finderArgs, wikiPage);
3529 }
3530 }
3531
3532 return wikiPage;
3533 }
3534 catch (Exception e) {
3535 throw processException(e);
3536 }
3537 finally {
3538 if (result == null) {
3539 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_R_N_V,
3540 finderArgs, new ArrayList<WikiPage>());
3541 }
3542
3543 closeSession(session);
3544 }
3545 }
3546 else {
3547 if (result instanceof List<?>) {
3548 return null;
3549 }
3550 else {
3551 return (WikiPage)result;
3552 }
3553 }
3554 }
3555
3556 public List<WikiPage> findByR_N_S(long resourcePrimKey, long nodeId,
3557 int status) throws SystemException {
3558 return findByR_N_S(resourcePrimKey, nodeId, status, QueryUtil.ALL_POS,
3559 QueryUtil.ALL_POS, null);
3560 }
3561
3562 public List<WikiPage> findByR_N_S(long resourcePrimKey, long nodeId,
3563 int status, int start, int end) throws SystemException {
3564 return findByR_N_S(resourcePrimKey, nodeId, status, start, end, null);
3565 }
3566
3567 public List<WikiPage> findByR_N_S(long resourcePrimKey, long nodeId,
3568 int status, int start, int end, OrderByComparator orderByComparator)
3569 throws SystemException {
3570 Object[] finderArgs = new Object[] {
3571 resourcePrimKey, nodeId, status,
3572
3573 String.valueOf(start), String.valueOf(end),
3574 String.valueOf(orderByComparator)
3575 };
3576
3577 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_R_N_S,
3578 finderArgs, this);
3579
3580 if (list == null) {
3581 Session session = null;
3582
3583 try {
3584 session = openSession();
3585
3586 StringBundler query = null;
3587
3588 if (orderByComparator != null) {
3589 query = new StringBundler(5 +
3590 (orderByComparator.getOrderByFields().length * 3));
3591 }
3592 else {
3593 query = new StringBundler(5);
3594 }
3595
3596 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
3597
3598 query.append(_FINDER_COLUMN_R_N_S_RESOURCEPRIMKEY_2);
3599
3600 query.append(_FINDER_COLUMN_R_N_S_NODEID_2);
3601
3602 query.append(_FINDER_COLUMN_R_N_S_STATUS_2);
3603
3604 if (orderByComparator != null) {
3605 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
3606 orderByComparator);
3607 }
3608
3609 else {
3610 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
3611 }
3612
3613 String sql = query.toString();
3614
3615 Query q = session.createQuery(sql);
3616
3617 QueryPos qPos = QueryPos.getInstance(q);
3618
3619 qPos.add(resourcePrimKey);
3620
3621 qPos.add(nodeId);
3622
3623 qPos.add(status);
3624
3625 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
3626 end);
3627 }
3628 catch (Exception e) {
3629 throw processException(e);
3630 }
3631 finally {
3632 if (list == null) {
3633 list = new ArrayList<WikiPage>();
3634 }
3635
3636 cacheResult(list);
3637
3638 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_R_N_S,
3639 finderArgs, list);
3640
3641 closeSession(session);
3642 }
3643 }
3644
3645 return list;
3646 }
3647
3648 public WikiPage findByR_N_S_First(long resourcePrimKey, long nodeId,
3649 int status, OrderByComparator orderByComparator)
3650 throws NoSuchPageException, SystemException {
3651 List<WikiPage> list = findByR_N_S(resourcePrimKey, nodeId, status, 0,
3652 1, orderByComparator);
3653
3654 if (list.isEmpty()) {
3655 StringBundler msg = new StringBundler(8);
3656
3657 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
3658
3659 msg.append("resourcePrimKey=");
3660 msg.append(resourcePrimKey);
3661
3662 msg.append(", nodeId=");
3663 msg.append(nodeId);
3664
3665 msg.append(", status=");
3666 msg.append(status);
3667
3668 msg.append(StringPool.CLOSE_CURLY_BRACE);
3669
3670 throw new NoSuchPageException(msg.toString());
3671 }
3672 else {
3673 return list.get(0);
3674 }
3675 }
3676
3677 public WikiPage findByR_N_S_Last(long resourcePrimKey, long nodeId,
3678 int status, OrderByComparator orderByComparator)
3679 throws NoSuchPageException, SystemException {
3680 int count = countByR_N_S(resourcePrimKey, nodeId, status);
3681
3682 List<WikiPage> list = findByR_N_S(resourcePrimKey, nodeId, status,
3683 count - 1, count, orderByComparator);
3684
3685 if (list.isEmpty()) {
3686 StringBundler msg = new StringBundler(8);
3687
3688 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
3689
3690 msg.append("resourcePrimKey=");
3691 msg.append(resourcePrimKey);
3692
3693 msg.append(", nodeId=");
3694 msg.append(nodeId);
3695
3696 msg.append(", status=");
3697 msg.append(status);
3698
3699 msg.append(StringPool.CLOSE_CURLY_BRACE);
3700
3701 throw new NoSuchPageException(msg.toString());
3702 }
3703 else {
3704 return list.get(0);
3705 }
3706 }
3707
3708 public WikiPage[] findByR_N_S_PrevAndNext(long pageId,
3709 long resourcePrimKey, long nodeId, int status,
3710 OrderByComparator orderByComparator)
3711 throws NoSuchPageException, SystemException {
3712 WikiPage wikiPage = findByPrimaryKey(pageId);
3713
3714 Session session = null;
3715
3716 try {
3717 session = openSession();
3718
3719 WikiPage[] array = new WikiPageImpl[3];
3720
3721 array[0] = getByR_N_S_PrevAndNext(session, wikiPage,
3722 resourcePrimKey, nodeId, status, orderByComparator, true);
3723
3724 array[1] = wikiPage;
3725
3726 array[2] = getByR_N_S_PrevAndNext(session, wikiPage,
3727 resourcePrimKey, nodeId, status, orderByComparator, false);
3728
3729 return array;
3730 }
3731 catch (Exception e) {
3732 throw processException(e);
3733 }
3734 finally {
3735 closeSession(session);
3736 }
3737 }
3738
3739 protected WikiPage getByR_N_S_PrevAndNext(Session session,
3740 WikiPage wikiPage, long resourcePrimKey, long nodeId, int status,
3741 OrderByComparator orderByComparator, boolean previous) {
3742 StringBundler query = null;
3743
3744 if (orderByComparator != null) {
3745 query = new StringBundler(6 +
3746 (orderByComparator.getOrderByFields().length * 6));
3747 }
3748 else {
3749 query = new StringBundler(3);
3750 }
3751
3752 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
3753
3754 query.append(_FINDER_COLUMN_R_N_S_RESOURCEPRIMKEY_2);
3755
3756 query.append(_FINDER_COLUMN_R_N_S_NODEID_2);
3757
3758 query.append(_FINDER_COLUMN_R_N_S_STATUS_2);
3759
3760 if (orderByComparator != null) {
3761 String[] orderByFields = orderByComparator.getOrderByFields();
3762
3763 if (orderByFields.length > 0) {
3764 query.append(WHERE_AND);
3765 }
3766
3767 for (int i = 0; i < orderByFields.length; i++) {
3768 query.append(_ORDER_BY_ENTITY_ALIAS);
3769 query.append(orderByFields[i]);
3770
3771 if ((i + 1) < orderByFields.length) {
3772 if (orderByComparator.isAscending() ^ previous) {
3773 query.append(WHERE_GREATER_THAN_HAS_NEXT);
3774 }
3775 else {
3776 query.append(WHERE_LESSER_THAN_HAS_NEXT);
3777 }
3778 }
3779 else {
3780 if (orderByComparator.isAscending() ^ previous) {
3781 query.append(WHERE_GREATER_THAN);
3782 }
3783 else {
3784 query.append(WHERE_LESSER_THAN);
3785 }
3786 }
3787 }
3788
3789 query.append(ORDER_BY_CLAUSE);
3790
3791 for (int i = 0; i < orderByFields.length; i++) {
3792 query.append(_ORDER_BY_ENTITY_ALIAS);
3793 query.append(orderByFields[i]);
3794
3795 if ((i + 1) < orderByFields.length) {
3796 if (orderByComparator.isAscending() ^ previous) {
3797 query.append(ORDER_BY_ASC_HAS_NEXT);
3798 }
3799 else {
3800 query.append(ORDER_BY_DESC_HAS_NEXT);
3801 }
3802 }
3803 else {
3804 if (orderByComparator.isAscending() ^ previous) {
3805 query.append(ORDER_BY_ASC);
3806 }
3807 else {
3808 query.append(ORDER_BY_DESC);
3809 }
3810 }
3811 }
3812 }
3813
3814 else {
3815 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
3816 }
3817
3818 String sql = query.toString();
3819
3820 Query q = session.createQuery(sql);
3821
3822 q.setFirstResult(0);
3823 q.setMaxResults(2);
3824
3825 QueryPos qPos = QueryPos.getInstance(q);
3826
3827 qPos.add(resourcePrimKey);
3828
3829 qPos.add(nodeId);
3830
3831 qPos.add(status);
3832
3833 if (orderByComparator != null) {
3834 Object[] values = orderByComparator.getOrderByValues(wikiPage);
3835
3836 for (Object value : values) {
3837 qPos.add(value);
3838 }
3839 }
3840
3841 List<WikiPage> list = q.list();
3842
3843 if (list.size() == 2) {
3844 return list.get(1);
3845 }
3846 else {
3847 return null;
3848 }
3849 }
3850
3851 public List<WikiPage> findByU_N_S(long userId, long nodeId, int status)
3852 throws SystemException {
3853 return findByU_N_S(userId, nodeId, status, QueryUtil.ALL_POS,
3854 QueryUtil.ALL_POS, null);
3855 }
3856
3857 public List<WikiPage> findByU_N_S(long userId, long nodeId, int status,
3858 int start, int end) throws SystemException {
3859 return findByU_N_S(userId, nodeId, status, start, end, null);
3860 }
3861
3862 public List<WikiPage> findByU_N_S(long userId, long nodeId, int status,
3863 int start, int end, OrderByComparator orderByComparator)
3864 throws SystemException {
3865 Object[] finderArgs = new Object[] {
3866 userId, nodeId, status,
3867
3868 String.valueOf(start), String.valueOf(end),
3869 String.valueOf(orderByComparator)
3870 };
3871
3872 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_U_N_S,
3873 finderArgs, this);
3874
3875 if (list == null) {
3876 Session session = null;
3877
3878 try {
3879 session = openSession();
3880
3881 StringBundler query = null;
3882
3883 if (orderByComparator != null) {
3884 query = new StringBundler(5 +
3885 (orderByComparator.getOrderByFields().length * 3));
3886 }
3887 else {
3888 query = new StringBundler(5);
3889 }
3890
3891 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
3892
3893 query.append(_FINDER_COLUMN_U_N_S_USERID_2);
3894
3895 query.append(_FINDER_COLUMN_U_N_S_NODEID_2);
3896
3897 query.append(_FINDER_COLUMN_U_N_S_STATUS_2);
3898
3899 if (orderByComparator != null) {
3900 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
3901 orderByComparator);
3902 }
3903
3904 else {
3905 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
3906 }
3907
3908 String sql = query.toString();
3909
3910 Query q = session.createQuery(sql);
3911
3912 QueryPos qPos = QueryPos.getInstance(q);
3913
3914 qPos.add(userId);
3915
3916 qPos.add(nodeId);
3917
3918 qPos.add(status);
3919
3920 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
3921 end);
3922 }
3923 catch (Exception e) {
3924 throw processException(e);
3925 }
3926 finally {
3927 if (list == null) {
3928 list = new ArrayList<WikiPage>();
3929 }
3930
3931 cacheResult(list);
3932
3933 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_U_N_S,
3934 finderArgs, list);
3935
3936 closeSession(session);
3937 }
3938 }
3939
3940 return list;
3941 }
3942
3943 public WikiPage findByU_N_S_First(long userId, long nodeId, int status,
3944 OrderByComparator orderByComparator)
3945 throws NoSuchPageException, SystemException {
3946 List<WikiPage> list = findByU_N_S(userId, nodeId, status, 0, 1,
3947 orderByComparator);
3948
3949 if (list.isEmpty()) {
3950 StringBundler msg = new StringBundler(8);
3951
3952 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
3953
3954 msg.append("userId=");
3955 msg.append(userId);
3956
3957 msg.append(", nodeId=");
3958 msg.append(nodeId);
3959
3960 msg.append(", status=");
3961 msg.append(status);
3962
3963 msg.append(StringPool.CLOSE_CURLY_BRACE);
3964
3965 throw new NoSuchPageException(msg.toString());
3966 }
3967 else {
3968 return list.get(0);
3969 }
3970 }
3971
3972 public WikiPage findByU_N_S_Last(long userId, long nodeId, int status,
3973 OrderByComparator orderByComparator)
3974 throws NoSuchPageException, SystemException {
3975 int count = countByU_N_S(userId, nodeId, status);
3976
3977 List<WikiPage> list = findByU_N_S(userId, nodeId, status, count - 1,
3978 count, orderByComparator);
3979
3980 if (list.isEmpty()) {
3981 StringBundler msg = new StringBundler(8);
3982
3983 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
3984
3985 msg.append("userId=");
3986 msg.append(userId);
3987
3988 msg.append(", nodeId=");
3989 msg.append(nodeId);
3990
3991 msg.append(", status=");
3992 msg.append(status);
3993
3994 msg.append(StringPool.CLOSE_CURLY_BRACE);
3995
3996 throw new NoSuchPageException(msg.toString());
3997 }
3998 else {
3999 return list.get(0);
4000 }
4001 }
4002
4003 public WikiPage[] findByU_N_S_PrevAndNext(long pageId, long userId,
4004 long nodeId, int status, OrderByComparator orderByComparator)
4005 throws NoSuchPageException, SystemException {
4006 WikiPage wikiPage = findByPrimaryKey(pageId);
4007
4008 Session session = null;
4009
4010 try {
4011 session = openSession();
4012
4013 WikiPage[] array = new WikiPageImpl[3];
4014
4015 array[0] = getByU_N_S_PrevAndNext(session, wikiPage, userId,
4016 nodeId, status, orderByComparator, true);
4017
4018 array[1] = wikiPage;
4019
4020 array[2] = getByU_N_S_PrevAndNext(session, wikiPage, userId,
4021 nodeId, status, orderByComparator, false);
4022
4023 return array;
4024 }
4025 catch (Exception e) {
4026 throw processException(e);
4027 }
4028 finally {
4029 closeSession(session);
4030 }
4031 }
4032
4033 protected WikiPage getByU_N_S_PrevAndNext(Session session,
4034 WikiPage wikiPage, long userId, long nodeId, int status,
4035 OrderByComparator orderByComparator, boolean previous) {
4036 StringBundler query = null;
4037
4038 if (orderByComparator != null) {
4039 query = new StringBundler(6 +
4040 (orderByComparator.getOrderByFields().length * 6));
4041 }
4042 else {
4043 query = new StringBundler(3);
4044 }
4045
4046 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
4047
4048 query.append(_FINDER_COLUMN_U_N_S_USERID_2);
4049
4050 query.append(_FINDER_COLUMN_U_N_S_NODEID_2);
4051
4052 query.append(_FINDER_COLUMN_U_N_S_STATUS_2);
4053
4054 if (orderByComparator != null) {
4055 String[] orderByFields = orderByComparator.getOrderByFields();
4056
4057 if (orderByFields.length > 0) {
4058 query.append(WHERE_AND);
4059 }
4060
4061 for (int i = 0; i < orderByFields.length; i++) {
4062 query.append(_ORDER_BY_ENTITY_ALIAS);
4063 query.append(orderByFields[i]);
4064
4065 if ((i + 1) < orderByFields.length) {
4066 if (orderByComparator.isAscending() ^ previous) {
4067 query.append(WHERE_GREATER_THAN_HAS_NEXT);
4068 }
4069 else {
4070 query.append(WHERE_LESSER_THAN_HAS_NEXT);
4071 }
4072 }
4073 else {
4074 if (orderByComparator.isAscending() ^ previous) {
4075 query.append(WHERE_GREATER_THAN);
4076 }
4077 else {
4078 query.append(WHERE_LESSER_THAN);
4079 }
4080 }
4081 }
4082
4083 query.append(ORDER_BY_CLAUSE);
4084
4085 for (int i = 0; i < orderByFields.length; i++) {
4086 query.append(_ORDER_BY_ENTITY_ALIAS);
4087 query.append(orderByFields[i]);
4088
4089 if ((i + 1) < orderByFields.length) {
4090 if (orderByComparator.isAscending() ^ previous) {
4091 query.append(ORDER_BY_ASC_HAS_NEXT);
4092 }
4093 else {
4094 query.append(ORDER_BY_DESC_HAS_NEXT);
4095 }
4096 }
4097 else {
4098 if (orderByComparator.isAscending() ^ previous) {
4099 query.append(ORDER_BY_ASC);
4100 }
4101 else {
4102 query.append(ORDER_BY_DESC);
4103 }
4104 }
4105 }
4106 }
4107
4108 else {
4109 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
4110 }
4111
4112 String sql = query.toString();
4113
4114 Query q = session.createQuery(sql);
4115
4116 q.setFirstResult(0);
4117 q.setMaxResults(2);
4118
4119 QueryPos qPos = QueryPos.getInstance(q);
4120
4121 qPos.add(userId);
4122
4123 qPos.add(nodeId);
4124
4125 qPos.add(status);
4126
4127 if (orderByComparator != null) {
4128 Object[] values = orderByComparator.getOrderByValues(wikiPage);
4129
4130 for (Object value : values) {
4131 qPos.add(value);
4132 }
4133 }
4134
4135 List<WikiPage> list = q.list();
4136
4137 if (list.size() == 2) {
4138 return list.get(1);
4139 }
4140 else {
4141 return null;
4142 }
4143 }
4144
4145 public WikiPage findByN_T_V(long nodeId, String title, double version)
4146 throws NoSuchPageException, SystemException {
4147 WikiPage wikiPage = fetchByN_T_V(nodeId, title, version);
4148
4149 if (wikiPage == null) {
4150 StringBundler msg = new StringBundler(8);
4151
4152 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
4153
4154 msg.append("nodeId=");
4155 msg.append(nodeId);
4156
4157 msg.append(", title=");
4158 msg.append(title);
4159
4160 msg.append(", version=");
4161 msg.append(version);
4162
4163 msg.append(StringPool.CLOSE_CURLY_BRACE);
4164
4165 if (_log.isWarnEnabled()) {
4166 _log.warn(msg.toString());
4167 }
4168
4169 throw new NoSuchPageException(msg.toString());
4170 }
4171
4172 return wikiPage;
4173 }
4174
4175 public WikiPage fetchByN_T_V(long nodeId, String title, double version)
4176 throws SystemException {
4177 return fetchByN_T_V(nodeId, title, version, true);
4178 }
4179
4180 public WikiPage fetchByN_T_V(long nodeId, String title, double version,
4181 boolean retrieveFromCache) throws SystemException {
4182 Object[] finderArgs = new Object[] { nodeId, title, version };
4183
4184 Object result = null;
4185
4186 if (retrieveFromCache) {
4187 result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_N_T_V,
4188 finderArgs, this);
4189 }
4190
4191 if (result == null) {
4192 Session session = null;
4193
4194 try {
4195 session = openSession();
4196
4197 StringBundler query = new StringBundler(5);
4198
4199 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
4200
4201 query.append(_FINDER_COLUMN_N_T_V_NODEID_2);
4202
4203 if (title == null) {
4204 query.append(_FINDER_COLUMN_N_T_V_TITLE_1);
4205 }
4206 else {
4207 if (title.equals(StringPool.BLANK)) {
4208 query.append(_FINDER_COLUMN_N_T_V_TITLE_3);
4209 }
4210 else {
4211 query.append(_FINDER_COLUMN_N_T_V_TITLE_2);
4212 }
4213 }
4214
4215 query.append(_FINDER_COLUMN_N_T_V_VERSION_2);
4216
4217 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
4218
4219 String sql = query.toString();
4220
4221 Query q = session.createQuery(sql);
4222
4223 QueryPos qPos = QueryPos.getInstance(q);
4224
4225 qPos.add(nodeId);
4226
4227 if (title != null) {
4228 qPos.add(title);
4229 }
4230
4231 qPos.add(version);
4232
4233 List<WikiPage> list = q.list();
4234
4235 result = list;
4236
4237 WikiPage wikiPage = null;
4238
4239 if (list.isEmpty()) {
4240 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_T_V,
4241 finderArgs, list);
4242 }
4243 else {
4244 wikiPage = list.get(0);
4245
4246 cacheResult(wikiPage);
4247
4248 if ((wikiPage.getNodeId() != nodeId) ||
4249 (wikiPage.getTitle() == null) ||
4250 !wikiPage.getTitle().equals(title) ||
4251 (wikiPage.getVersion() != version)) {
4252 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_T_V,
4253 finderArgs, wikiPage);
4254 }
4255 }
4256
4257 return wikiPage;
4258 }
4259 catch (Exception e) {
4260 throw processException(e);
4261 }
4262 finally {
4263 if (result == null) {
4264 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_T_V,
4265 finderArgs, new ArrayList<WikiPage>());
4266 }
4267
4268 closeSession(session);
4269 }
4270 }
4271 else {
4272 if (result instanceof List<?>) {
4273 return null;
4274 }
4275 else {
4276 return (WikiPage)result;
4277 }
4278 }
4279 }
4280
4281 public List<WikiPage> findByN_T_H(long nodeId, String title, boolean head)
4282 throws SystemException {
4283 return findByN_T_H(nodeId, title, head, QueryUtil.ALL_POS,
4284 QueryUtil.ALL_POS, null);
4285 }
4286
4287 public List<WikiPage> findByN_T_H(long nodeId, String title, boolean head,
4288 int start, int end) throws SystemException {
4289 return findByN_T_H(nodeId, title, head, start, end, null);
4290 }
4291
4292 public List<WikiPage> findByN_T_H(long nodeId, String title, boolean head,
4293 int start, int end, OrderByComparator orderByComparator)
4294 throws SystemException {
4295 Object[] finderArgs = new Object[] {
4296 nodeId, title, head,
4297
4298 String.valueOf(start), String.valueOf(end),
4299 String.valueOf(orderByComparator)
4300 };
4301
4302 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_T_H,
4303 finderArgs, this);
4304
4305 if (list == null) {
4306 Session session = null;
4307
4308 try {
4309 session = openSession();
4310
4311 StringBundler query = null;
4312
4313 if (orderByComparator != null) {
4314 query = new StringBundler(5 +
4315 (orderByComparator.getOrderByFields().length * 3));
4316 }
4317 else {
4318 query = new StringBundler(5);
4319 }
4320
4321 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
4322
4323 query.append(_FINDER_COLUMN_N_T_H_NODEID_2);
4324
4325 if (title == null) {
4326 query.append(_FINDER_COLUMN_N_T_H_TITLE_1);
4327 }
4328 else {
4329 if (title.equals(StringPool.BLANK)) {
4330 query.append(_FINDER_COLUMN_N_T_H_TITLE_3);
4331 }
4332 else {
4333 query.append(_FINDER_COLUMN_N_T_H_TITLE_2);
4334 }
4335 }
4336
4337 query.append(_FINDER_COLUMN_N_T_H_HEAD_2);
4338
4339 if (orderByComparator != null) {
4340 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
4341 orderByComparator);
4342 }
4343
4344 else {
4345 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
4346 }
4347
4348 String sql = query.toString();
4349
4350 Query q = session.createQuery(sql);
4351
4352 QueryPos qPos = QueryPos.getInstance(q);
4353
4354 qPos.add(nodeId);
4355
4356 if (title != null) {
4357 qPos.add(title);
4358 }
4359
4360 qPos.add(head);
4361
4362 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
4363 end);
4364 }
4365 catch (Exception e) {
4366 throw processException(e);
4367 }
4368 finally {
4369 if (list == null) {
4370 list = new ArrayList<WikiPage>();
4371 }
4372
4373 cacheResult(list);
4374
4375 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_T_H,
4376 finderArgs, list);
4377
4378 closeSession(session);
4379 }
4380 }
4381
4382 return list;
4383 }
4384
4385 public WikiPage findByN_T_H_First(long nodeId, String title, boolean head,
4386 OrderByComparator orderByComparator)
4387 throws NoSuchPageException, SystemException {
4388 List<WikiPage> list = findByN_T_H(nodeId, title, head, 0, 1,
4389 orderByComparator);
4390
4391 if (list.isEmpty()) {
4392 StringBundler msg = new StringBundler(8);
4393
4394 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
4395
4396 msg.append("nodeId=");
4397 msg.append(nodeId);
4398
4399 msg.append(", title=");
4400 msg.append(title);
4401
4402 msg.append(", head=");
4403 msg.append(head);
4404
4405 msg.append(StringPool.CLOSE_CURLY_BRACE);
4406
4407 throw new NoSuchPageException(msg.toString());
4408 }
4409 else {
4410 return list.get(0);
4411 }
4412 }
4413
4414 public WikiPage findByN_T_H_Last(long nodeId, String title, boolean head,
4415 OrderByComparator orderByComparator)
4416 throws NoSuchPageException, SystemException {
4417 int count = countByN_T_H(nodeId, title, head);
4418
4419 List<WikiPage> list = findByN_T_H(nodeId, title, head, count - 1,
4420 count, orderByComparator);
4421
4422 if (list.isEmpty()) {
4423 StringBundler msg = new StringBundler(8);
4424
4425 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
4426
4427 msg.append("nodeId=");
4428 msg.append(nodeId);
4429
4430 msg.append(", title=");
4431 msg.append(title);
4432
4433 msg.append(", head=");
4434 msg.append(head);
4435
4436 msg.append(StringPool.CLOSE_CURLY_BRACE);
4437
4438 throw new NoSuchPageException(msg.toString());
4439 }
4440 else {
4441 return list.get(0);
4442 }
4443 }
4444
4445 public WikiPage[] findByN_T_H_PrevAndNext(long pageId, long nodeId,
4446 String title, boolean head, OrderByComparator orderByComparator)
4447 throws NoSuchPageException, SystemException {
4448 WikiPage wikiPage = findByPrimaryKey(pageId);
4449
4450 Session session = null;
4451
4452 try {
4453 session = openSession();
4454
4455 WikiPage[] array = new WikiPageImpl[3];
4456
4457 array[0] = getByN_T_H_PrevAndNext(session, wikiPage, nodeId, title,
4458 head, orderByComparator, true);
4459
4460 array[1] = wikiPage;
4461
4462 array[2] = getByN_T_H_PrevAndNext(session, wikiPage, nodeId, title,
4463 head, orderByComparator, false);
4464
4465 return array;
4466 }
4467 catch (Exception e) {
4468 throw processException(e);
4469 }
4470 finally {
4471 closeSession(session);
4472 }
4473 }
4474
4475 protected WikiPage getByN_T_H_PrevAndNext(Session session,
4476 WikiPage wikiPage, long nodeId, String title, boolean head,
4477 OrderByComparator orderByComparator, boolean previous) {
4478 StringBundler query = null;
4479
4480 if (orderByComparator != null) {
4481 query = new StringBundler(6 +
4482 (orderByComparator.getOrderByFields().length * 6));
4483 }
4484 else {
4485 query = new StringBundler(3);
4486 }
4487
4488 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
4489
4490 query.append(_FINDER_COLUMN_N_T_H_NODEID_2);
4491
4492 if (title == null) {
4493 query.append(_FINDER_COLUMN_N_T_H_TITLE_1);
4494 }
4495 else {
4496 if (title.equals(StringPool.BLANK)) {
4497 query.append(_FINDER_COLUMN_N_T_H_TITLE_3);
4498 }
4499 else {
4500 query.append(_FINDER_COLUMN_N_T_H_TITLE_2);
4501 }
4502 }
4503
4504 query.append(_FINDER_COLUMN_N_T_H_HEAD_2);
4505
4506 if (orderByComparator != null) {
4507 String[] orderByFields = orderByComparator.getOrderByFields();
4508
4509 if (orderByFields.length > 0) {
4510 query.append(WHERE_AND);
4511 }
4512
4513 for (int i = 0; i < orderByFields.length; i++) {
4514 query.append(_ORDER_BY_ENTITY_ALIAS);
4515 query.append(orderByFields[i]);
4516
4517 if ((i + 1) < orderByFields.length) {
4518 if (orderByComparator.isAscending() ^ previous) {
4519 query.append(WHERE_GREATER_THAN_HAS_NEXT);
4520 }
4521 else {
4522 query.append(WHERE_LESSER_THAN_HAS_NEXT);
4523 }
4524 }
4525 else {
4526 if (orderByComparator.isAscending() ^ previous) {
4527 query.append(WHERE_GREATER_THAN);
4528 }
4529 else {
4530 query.append(WHERE_LESSER_THAN);
4531 }
4532 }
4533 }
4534
4535 query.append(ORDER_BY_CLAUSE);
4536
4537 for (int i = 0; i < orderByFields.length; i++) {
4538 query.append(_ORDER_BY_ENTITY_ALIAS);
4539 query.append(orderByFields[i]);
4540
4541 if ((i + 1) < orderByFields.length) {
4542 if (orderByComparator.isAscending() ^ previous) {
4543 query.append(ORDER_BY_ASC_HAS_NEXT);
4544 }
4545 else {
4546 query.append(ORDER_BY_DESC_HAS_NEXT);
4547 }
4548 }
4549 else {
4550 if (orderByComparator.isAscending() ^ previous) {
4551 query.append(ORDER_BY_ASC);
4552 }
4553 else {
4554 query.append(ORDER_BY_DESC);
4555 }
4556 }
4557 }
4558 }
4559
4560 else {
4561 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
4562 }
4563
4564 String sql = query.toString();
4565
4566 Query q = session.createQuery(sql);
4567
4568 q.setFirstResult(0);
4569 q.setMaxResults(2);
4570
4571 QueryPos qPos = QueryPos.getInstance(q);
4572
4573 qPos.add(nodeId);
4574
4575 if (title != null) {
4576 qPos.add(title);
4577 }
4578
4579 qPos.add(head);
4580
4581 if (orderByComparator != null) {
4582 Object[] values = orderByComparator.getOrderByValues(wikiPage);
4583
4584 for (Object value : values) {
4585 qPos.add(value);
4586 }
4587 }
4588
4589 List<WikiPage> list = q.list();
4590
4591 if (list.size() == 2) {
4592 return list.get(1);
4593 }
4594 else {
4595 return null;
4596 }
4597 }
4598
4599 public List<WikiPage> findByN_T_S(long nodeId, String title, int status)
4600 throws SystemException {
4601 return findByN_T_S(nodeId, title, status, QueryUtil.ALL_POS,
4602 QueryUtil.ALL_POS, null);
4603 }
4604
4605 public List<WikiPage> findByN_T_S(long nodeId, String title, int status,
4606 int start, int end) throws SystemException {
4607 return findByN_T_S(nodeId, title, status, start, end, null);
4608 }
4609
4610 public List<WikiPage> findByN_T_S(long nodeId, String title, int status,
4611 int start, int end, OrderByComparator orderByComparator)
4612 throws SystemException {
4613 Object[] finderArgs = new Object[] {
4614 nodeId, title, status,
4615
4616 String.valueOf(start), String.valueOf(end),
4617 String.valueOf(orderByComparator)
4618 };
4619
4620 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_T_S,
4621 finderArgs, this);
4622
4623 if (list == null) {
4624 Session session = null;
4625
4626 try {
4627 session = openSession();
4628
4629 StringBundler query = null;
4630
4631 if (orderByComparator != null) {
4632 query = new StringBundler(5 +
4633 (orderByComparator.getOrderByFields().length * 3));
4634 }
4635 else {
4636 query = new StringBundler(5);
4637 }
4638
4639 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
4640
4641 query.append(_FINDER_COLUMN_N_T_S_NODEID_2);
4642
4643 if (title == null) {
4644 query.append(_FINDER_COLUMN_N_T_S_TITLE_1);
4645 }
4646 else {
4647 if (title.equals(StringPool.BLANK)) {
4648 query.append(_FINDER_COLUMN_N_T_S_TITLE_3);
4649 }
4650 else {
4651 query.append(_FINDER_COLUMN_N_T_S_TITLE_2);
4652 }
4653 }
4654
4655 query.append(_FINDER_COLUMN_N_T_S_STATUS_2);
4656
4657 if (orderByComparator != null) {
4658 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
4659 orderByComparator);
4660 }
4661
4662 else {
4663 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
4664 }
4665
4666 String sql = query.toString();
4667
4668 Query q = session.createQuery(sql);
4669
4670 QueryPos qPos = QueryPos.getInstance(q);
4671
4672 qPos.add(nodeId);
4673
4674 if (title != null) {
4675 qPos.add(title);
4676 }
4677
4678 qPos.add(status);
4679
4680 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
4681 end);
4682 }
4683 catch (Exception e) {
4684 throw processException(e);
4685 }
4686 finally {
4687 if (list == null) {
4688 list = new ArrayList<WikiPage>();
4689 }
4690
4691 cacheResult(list);
4692
4693 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_T_S,
4694 finderArgs, list);
4695
4696 closeSession(session);
4697 }
4698 }
4699
4700 return list;
4701 }
4702
4703 public WikiPage findByN_T_S_First(long nodeId, String title, int status,
4704 OrderByComparator orderByComparator)
4705 throws NoSuchPageException, SystemException {
4706 List<WikiPage> list = findByN_T_S(nodeId, title, status, 0, 1,
4707 orderByComparator);
4708
4709 if (list.isEmpty()) {
4710 StringBundler msg = new StringBundler(8);
4711
4712 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
4713
4714 msg.append("nodeId=");
4715 msg.append(nodeId);
4716
4717 msg.append(", title=");
4718 msg.append(title);
4719
4720 msg.append(", status=");
4721 msg.append(status);
4722
4723 msg.append(StringPool.CLOSE_CURLY_BRACE);
4724
4725 throw new NoSuchPageException(msg.toString());
4726 }
4727 else {
4728 return list.get(0);
4729 }
4730 }
4731
4732 public WikiPage findByN_T_S_Last(long nodeId, String title, int status,
4733 OrderByComparator orderByComparator)
4734 throws NoSuchPageException, SystemException {
4735 int count = countByN_T_S(nodeId, title, status);
4736
4737 List<WikiPage> list = findByN_T_S(nodeId, title, status, count - 1,
4738 count, orderByComparator);
4739
4740 if (list.isEmpty()) {
4741 StringBundler msg = new StringBundler(8);
4742
4743 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
4744
4745 msg.append("nodeId=");
4746 msg.append(nodeId);
4747
4748 msg.append(", title=");
4749 msg.append(title);
4750
4751 msg.append(", status=");
4752 msg.append(status);
4753
4754 msg.append(StringPool.CLOSE_CURLY_BRACE);
4755
4756 throw new NoSuchPageException(msg.toString());
4757 }
4758 else {
4759 return list.get(0);
4760 }
4761 }
4762
4763 public WikiPage[] findByN_T_S_PrevAndNext(long pageId, long nodeId,
4764 String title, int status, OrderByComparator orderByComparator)
4765 throws NoSuchPageException, SystemException {
4766 WikiPage wikiPage = findByPrimaryKey(pageId);
4767
4768 Session session = null;
4769
4770 try {
4771 session = openSession();
4772
4773 WikiPage[] array = new WikiPageImpl[3];
4774
4775 array[0] = getByN_T_S_PrevAndNext(session, wikiPage, nodeId, title,
4776 status, orderByComparator, true);
4777
4778 array[1] = wikiPage;
4779
4780 array[2] = getByN_T_S_PrevAndNext(session, wikiPage, nodeId, title,
4781 status, orderByComparator, false);
4782
4783 return array;
4784 }
4785 catch (Exception e) {
4786 throw processException(e);
4787 }
4788 finally {
4789 closeSession(session);
4790 }
4791 }
4792
4793 protected WikiPage getByN_T_S_PrevAndNext(Session session,
4794 WikiPage wikiPage, long nodeId, String title, int status,
4795 OrderByComparator orderByComparator, boolean previous) {
4796 StringBundler query = null;
4797
4798 if (orderByComparator != null) {
4799 query = new StringBundler(6 +
4800 (orderByComparator.getOrderByFields().length * 6));
4801 }
4802 else {
4803 query = new StringBundler(3);
4804 }
4805
4806 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
4807
4808 query.append(_FINDER_COLUMN_N_T_S_NODEID_2);
4809
4810 if (title == null) {
4811 query.append(_FINDER_COLUMN_N_T_S_TITLE_1);
4812 }
4813 else {
4814 if (title.equals(StringPool.BLANK)) {
4815 query.append(_FINDER_COLUMN_N_T_S_TITLE_3);
4816 }
4817 else {
4818 query.append(_FINDER_COLUMN_N_T_S_TITLE_2);
4819 }
4820 }
4821
4822 query.append(_FINDER_COLUMN_N_T_S_STATUS_2);
4823
4824 if (orderByComparator != null) {
4825 String[] orderByFields = orderByComparator.getOrderByFields();
4826
4827 if (orderByFields.length > 0) {
4828 query.append(WHERE_AND);
4829 }
4830
4831 for (int i = 0; i < orderByFields.length; i++) {
4832 query.append(_ORDER_BY_ENTITY_ALIAS);
4833 query.append(orderByFields[i]);
4834
4835 if ((i + 1) < orderByFields.length) {
4836 if (orderByComparator.isAscending() ^ previous) {
4837 query.append(WHERE_GREATER_THAN_HAS_NEXT);
4838 }
4839 else {
4840 query.append(WHERE_LESSER_THAN_HAS_NEXT);
4841 }
4842 }
4843 else {
4844 if (orderByComparator.isAscending() ^ previous) {
4845 query.append(WHERE_GREATER_THAN);
4846 }
4847 else {
4848 query.append(WHERE_LESSER_THAN);
4849 }
4850 }
4851 }
4852
4853 query.append(ORDER_BY_CLAUSE);
4854
4855 for (int i = 0; i < orderByFields.length; i++) {
4856 query.append(_ORDER_BY_ENTITY_ALIAS);
4857 query.append(orderByFields[i]);
4858
4859 if ((i + 1) < orderByFields.length) {
4860 if (orderByComparator.isAscending() ^ previous) {
4861 query.append(ORDER_BY_ASC_HAS_NEXT);
4862 }
4863 else {
4864 query.append(ORDER_BY_DESC_HAS_NEXT);
4865 }
4866 }
4867 else {
4868 if (orderByComparator.isAscending() ^ previous) {
4869 query.append(ORDER_BY_ASC);
4870 }
4871 else {
4872 query.append(ORDER_BY_DESC);
4873 }
4874 }
4875 }
4876 }
4877
4878 else {
4879 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
4880 }
4881
4882 String sql = query.toString();
4883
4884 Query q = session.createQuery(sql);
4885
4886 q.setFirstResult(0);
4887 q.setMaxResults(2);
4888
4889 QueryPos qPos = QueryPos.getInstance(q);
4890
4891 qPos.add(nodeId);
4892
4893 if (title != null) {
4894 qPos.add(title);
4895 }
4896
4897 qPos.add(status);
4898
4899 if (orderByComparator != null) {
4900 Object[] values = orderByComparator.getOrderByValues(wikiPage);
4901
4902 for (Object value : values) {
4903 qPos.add(value);
4904 }
4905 }
4906
4907 List<WikiPage> list = q.list();
4908
4909 if (list.size() == 2) {
4910 return list.get(1);
4911 }
4912 else {
4913 return null;
4914 }
4915 }
4916
4917 public List<WikiPage> findByN_H_P(long nodeId, boolean head,
4918 String parentTitle) throws SystemException {
4919 return findByN_H_P(nodeId, head, parentTitle, QueryUtil.ALL_POS,
4920 QueryUtil.ALL_POS, null);
4921 }
4922
4923 public List<WikiPage> findByN_H_P(long nodeId, boolean head,
4924 String parentTitle, int start, int end) throws SystemException {
4925 return findByN_H_P(nodeId, head, parentTitle, start, end, null);
4926 }
4927
4928 public List<WikiPage> findByN_H_P(long nodeId, boolean head,
4929 String parentTitle, int start, int end,
4930 OrderByComparator orderByComparator) throws SystemException {
4931 Object[] finderArgs = new Object[] {
4932 nodeId, head, parentTitle,
4933
4934 String.valueOf(start), String.valueOf(end),
4935 String.valueOf(orderByComparator)
4936 };
4937
4938 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_H_P,
4939 finderArgs, this);
4940
4941 if (list == null) {
4942 Session session = null;
4943
4944 try {
4945 session = openSession();
4946
4947 StringBundler query = null;
4948
4949 if (orderByComparator != null) {
4950 query = new StringBundler(5 +
4951 (orderByComparator.getOrderByFields().length * 3));
4952 }
4953 else {
4954 query = new StringBundler(5);
4955 }
4956
4957 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
4958
4959 query.append(_FINDER_COLUMN_N_H_P_NODEID_2);
4960
4961 query.append(_FINDER_COLUMN_N_H_P_HEAD_2);
4962
4963 if (parentTitle == null) {
4964 query.append(_FINDER_COLUMN_N_H_P_PARENTTITLE_1);
4965 }
4966 else {
4967 if (parentTitle.equals(StringPool.BLANK)) {
4968 query.append(_FINDER_COLUMN_N_H_P_PARENTTITLE_3);
4969 }
4970 else {
4971 query.append(_FINDER_COLUMN_N_H_P_PARENTTITLE_2);
4972 }
4973 }
4974
4975 if (orderByComparator != null) {
4976 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
4977 orderByComparator);
4978 }
4979
4980 else {
4981 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
4982 }
4983
4984 String sql = query.toString();
4985
4986 Query q = session.createQuery(sql);
4987
4988 QueryPos qPos = QueryPos.getInstance(q);
4989
4990 qPos.add(nodeId);
4991
4992 qPos.add(head);
4993
4994 if (parentTitle != null) {
4995 qPos.add(parentTitle);
4996 }
4997
4998 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
4999 end);
5000 }
5001 catch (Exception e) {
5002 throw processException(e);
5003 }
5004 finally {
5005 if (list == null) {
5006 list = new ArrayList<WikiPage>();
5007 }
5008
5009 cacheResult(list);
5010
5011 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_H_P,
5012 finderArgs, list);
5013
5014 closeSession(session);
5015 }
5016 }
5017
5018 return list;
5019 }
5020
5021 public WikiPage findByN_H_P_First(long nodeId, boolean head,
5022 String parentTitle, OrderByComparator orderByComparator)
5023 throws NoSuchPageException, SystemException {
5024 List<WikiPage> list = findByN_H_P(nodeId, head, parentTitle, 0, 1,
5025 orderByComparator);
5026
5027 if (list.isEmpty()) {
5028 StringBundler msg = new StringBundler(8);
5029
5030 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
5031
5032 msg.append("nodeId=");
5033 msg.append(nodeId);
5034
5035 msg.append(", head=");
5036 msg.append(head);
5037
5038 msg.append(", parentTitle=");
5039 msg.append(parentTitle);
5040
5041 msg.append(StringPool.CLOSE_CURLY_BRACE);
5042
5043 throw new NoSuchPageException(msg.toString());
5044 }
5045 else {
5046 return list.get(0);
5047 }
5048 }
5049
5050 public WikiPage findByN_H_P_Last(long nodeId, boolean head,
5051 String parentTitle, OrderByComparator orderByComparator)
5052 throws NoSuchPageException, SystemException {
5053 int count = countByN_H_P(nodeId, head, parentTitle);
5054
5055 List<WikiPage> list = findByN_H_P(nodeId, head, parentTitle, count - 1,
5056 count, orderByComparator);
5057
5058 if (list.isEmpty()) {
5059 StringBundler msg = new StringBundler(8);
5060
5061 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
5062
5063 msg.append("nodeId=");
5064 msg.append(nodeId);
5065
5066 msg.append(", head=");
5067 msg.append(head);
5068
5069 msg.append(", parentTitle=");
5070 msg.append(parentTitle);
5071
5072 msg.append(StringPool.CLOSE_CURLY_BRACE);
5073
5074 throw new NoSuchPageException(msg.toString());
5075 }
5076 else {
5077 return list.get(0);
5078 }
5079 }
5080
5081 public WikiPage[] findByN_H_P_PrevAndNext(long pageId, long nodeId,
5082 boolean head, String parentTitle, OrderByComparator orderByComparator)
5083 throws NoSuchPageException, SystemException {
5084 WikiPage wikiPage = findByPrimaryKey(pageId);
5085
5086 Session session = null;
5087
5088 try {
5089 session = openSession();
5090
5091 WikiPage[] array = new WikiPageImpl[3];
5092
5093 array[0] = getByN_H_P_PrevAndNext(session, wikiPage, nodeId, head,
5094 parentTitle, orderByComparator, true);
5095
5096 array[1] = wikiPage;
5097
5098 array[2] = getByN_H_P_PrevAndNext(session, wikiPage, nodeId, head,
5099 parentTitle, orderByComparator, false);
5100
5101 return array;
5102 }
5103 catch (Exception e) {
5104 throw processException(e);
5105 }
5106 finally {
5107 closeSession(session);
5108 }
5109 }
5110
5111 protected WikiPage getByN_H_P_PrevAndNext(Session session,
5112 WikiPage wikiPage, long nodeId, boolean head, String parentTitle,
5113 OrderByComparator orderByComparator, boolean previous) {
5114 StringBundler query = null;
5115
5116 if (orderByComparator != null) {
5117 query = new StringBundler(6 +
5118 (orderByComparator.getOrderByFields().length * 6));
5119 }
5120 else {
5121 query = new StringBundler(3);
5122 }
5123
5124 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
5125
5126 query.append(_FINDER_COLUMN_N_H_P_NODEID_2);
5127
5128 query.append(_FINDER_COLUMN_N_H_P_HEAD_2);
5129
5130 if (parentTitle == null) {
5131 query.append(_FINDER_COLUMN_N_H_P_PARENTTITLE_1);
5132 }
5133 else {
5134 if (parentTitle.equals(StringPool.BLANK)) {
5135 query.append(_FINDER_COLUMN_N_H_P_PARENTTITLE_3);
5136 }
5137 else {
5138 query.append(_FINDER_COLUMN_N_H_P_PARENTTITLE_2);
5139 }
5140 }
5141
5142 if (orderByComparator != null) {
5143 String[] orderByFields = orderByComparator.getOrderByFields();
5144
5145 if (orderByFields.length > 0) {
5146 query.append(WHERE_AND);
5147 }
5148
5149 for (int i = 0; i < orderByFields.length; i++) {
5150 query.append(_ORDER_BY_ENTITY_ALIAS);
5151 query.append(orderByFields[i]);
5152
5153 if ((i + 1) < orderByFields.length) {
5154 if (orderByComparator.isAscending() ^ previous) {
5155 query.append(WHERE_GREATER_THAN_HAS_NEXT);
5156 }
5157 else {
5158 query.append(WHERE_LESSER_THAN_HAS_NEXT);
5159 }
5160 }
5161 else {
5162 if (orderByComparator.isAscending() ^ previous) {
5163 query.append(WHERE_GREATER_THAN);
5164 }
5165 else {
5166 query.append(WHERE_LESSER_THAN);
5167 }
5168 }
5169 }
5170
5171 query.append(ORDER_BY_CLAUSE);
5172
5173 for (int i = 0; i < orderByFields.length; i++) {
5174 query.append(_ORDER_BY_ENTITY_ALIAS);
5175 query.append(orderByFields[i]);
5176
5177 if ((i + 1) < orderByFields.length) {
5178 if (orderByComparator.isAscending() ^ previous) {
5179 query.append(ORDER_BY_ASC_HAS_NEXT);
5180 }
5181 else {
5182 query.append(ORDER_BY_DESC_HAS_NEXT);
5183 }
5184 }
5185 else {
5186 if (orderByComparator.isAscending() ^ previous) {
5187 query.append(ORDER_BY_ASC);
5188 }
5189 else {
5190 query.append(ORDER_BY_DESC);
5191 }
5192 }
5193 }
5194 }
5195
5196 else {
5197 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
5198 }
5199
5200 String sql = query.toString();
5201
5202 Query q = session.createQuery(sql);
5203
5204 q.setFirstResult(0);
5205 q.setMaxResults(2);
5206
5207 QueryPos qPos = QueryPos.getInstance(q);
5208
5209 qPos.add(nodeId);
5210
5211 qPos.add(head);
5212
5213 if (parentTitle != null) {
5214 qPos.add(parentTitle);
5215 }
5216
5217 if (orderByComparator != null) {
5218 Object[] values = orderByComparator.getOrderByValues(wikiPage);
5219
5220 for (Object value : values) {
5221 qPos.add(value);
5222 }
5223 }
5224
5225 List<WikiPage> list = q.list();
5226
5227 if (list.size() == 2) {
5228 return list.get(1);
5229 }
5230 else {
5231 return null;
5232 }
5233 }
5234
5235 public List<WikiPage> findByN_H_S(long nodeId, boolean head, int status)
5236 throws SystemException {
5237 return findByN_H_S(nodeId, head, status, QueryUtil.ALL_POS,
5238 QueryUtil.ALL_POS, null);
5239 }
5240
5241 public List<WikiPage> findByN_H_S(long nodeId, boolean head, int status,
5242 int start, int end) throws SystemException {
5243 return findByN_H_S(nodeId, head, status, start, end, null);
5244 }
5245
5246 public List<WikiPage> findByN_H_S(long nodeId, boolean head, int status,
5247 int start, int end, OrderByComparator orderByComparator)
5248 throws SystemException {
5249 Object[] finderArgs = new Object[] {
5250 nodeId, head, status,
5251
5252 String.valueOf(start), String.valueOf(end),
5253 String.valueOf(orderByComparator)
5254 };
5255
5256 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_H_S,
5257 finderArgs, this);
5258
5259 if (list == null) {
5260 Session session = null;
5261
5262 try {
5263 session = openSession();
5264
5265 StringBundler query = null;
5266
5267 if (orderByComparator != null) {
5268 query = new StringBundler(5 +
5269 (orderByComparator.getOrderByFields().length * 3));
5270 }
5271 else {
5272 query = new StringBundler(5);
5273 }
5274
5275 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
5276
5277 query.append(_FINDER_COLUMN_N_H_S_NODEID_2);
5278
5279 query.append(_FINDER_COLUMN_N_H_S_HEAD_2);
5280
5281 query.append(_FINDER_COLUMN_N_H_S_STATUS_2);
5282
5283 if (orderByComparator != null) {
5284 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
5285 orderByComparator);
5286 }
5287
5288 else {
5289 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
5290 }
5291
5292 String sql = query.toString();
5293
5294 Query q = session.createQuery(sql);
5295
5296 QueryPos qPos = QueryPos.getInstance(q);
5297
5298 qPos.add(nodeId);
5299
5300 qPos.add(head);
5301
5302 qPos.add(status);
5303
5304 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
5305 end);
5306 }
5307 catch (Exception e) {
5308 throw processException(e);
5309 }
5310 finally {
5311 if (list == null) {
5312 list = new ArrayList<WikiPage>();
5313 }
5314
5315 cacheResult(list);
5316
5317 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_H_S,
5318 finderArgs, list);
5319
5320 closeSession(session);
5321 }
5322 }
5323
5324 return list;
5325 }
5326
5327 public WikiPage findByN_H_S_First(long nodeId, boolean head, int status,
5328 OrderByComparator orderByComparator)
5329 throws NoSuchPageException, SystemException {
5330 List<WikiPage> list = findByN_H_S(nodeId, head, status, 0, 1,
5331 orderByComparator);
5332
5333 if (list.isEmpty()) {
5334 StringBundler msg = new StringBundler(8);
5335
5336 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
5337
5338 msg.append("nodeId=");
5339 msg.append(nodeId);
5340
5341 msg.append(", head=");
5342 msg.append(head);
5343
5344 msg.append(", status=");
5345 msg.append(status);
5346
5347 msg.append(StringPool.CLOSE_CURLY_BRACE);
5348
5349 throw new NoSuchPageException(msg.toString());
5350 }
5351 else {
5352 return list.get(0);
5353 }
5354 }
5355
5356 public WikiPage findByN_H_S_Last(long nodeId, boolean head, int status,
5357 OrderByComparator orderByComparator)
5358 throws NoSuchPageException, SystemException {
5359 int count = countByN_H_S(nodeId, head, status);
5360
5361 List<WikiPage> list = findByN_H_S(nodeId, head, status, count - 1,
5362 count, orderByComparator);
5363
5364 if (list.isEmpty()) {
5365 StringBundler msg = new StringBundler(8);
5366
5367 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
5368
5369 msg.append("nodeId=");
5370 msg.append(nodeId);
5371
5372 msg.append(", head=");
5373 msg.append(head);
5374
5375 msg.append(", status=");
5376 msg.append(status);
5377
5378 msg.append(StringPool.CLOSE_CURLY_BRACE);
5379
5380 throw new NoSuchPageException(msg.toString());
5381 }
5382 else {
5383 return list.get(0);
5384 }
5385 }
5386
5387 public WikiPage[] findByN_H_S_PrevAndNext(long pageId, long nodeId,
5388 boolean head, int status, OrderByComparator orderByComparator)
5389 throws NoSuchPageException, SystemException {
5390 WikiPage wikiPage = findByPrimaryKey(pageId);
5391
5392 Session session = null;
5393
5394 try {
5395 session = openSession();
5396
5397 WikiPage[] array = new WikiPageImpl[3];
5398
5399 array[0] = getByN_H_S_PrevAndNext(session, wikiPage, nodeId, head,
5400 status, orderByComparator, true);
5401
5402 array[1] = wikiPage;
5403
5404 array[2] = getByN_H_S_PrevAndNext(session, wikiPage, nodeId, head,
5405 status, orderByComparator, false);
5406
5407 return array;
5408 }
5409 catch (Exception e) {
5410 throw processException(e);
5411 }
5412 finally {
5413 closeSession(session);
5414 }
5415 }
5416
5417 protected WikiPage getByN_H_S_PrevAndNext(Session session,
5418 WikiPage wikiPage, long nodeId, boolean head, int status,
5419 OrderByComparator orderByComparator, boolean previous) {
5420 StringBundler query = null;
5421
5422 if (orderByComparator != null) {
5423 query = new StringBundler(6 +
5424 (orderByComparator.getOrderByFields().length * 6));
5425 }
5426 else {
5427 query = new StringBundler(3);
5428 }
5429
5430 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
5431
5432 query.append(_FINDER_COLUMN_N_H_S_NODEID_2);
5433
5434 query.append(_FINDER_COLUMN_N_H_S_HEAD_2);
5435
5436 query.append(_FINDER_COLUMN_N_H_S_STATUS_2);
5437
5438 if (orderByComparator != null) {
5439 String[] orderByFields = orderByComparator.getOrderByFields();
5440
5441 if (orderByFields.length > 0) {
5442 query.append(WHERE_AND);
5443 }
5444
5445 for (int i = 0; i < orderByFields.length; i++) {
5446 query.append(_ORDER_BY_ENTITY_ALIAS);
5447 query.append(orderByFields[i]);
5448
5449 if ((i + 1) < orderByFields.length) {
5450 if (orderByComparator.isAscending() ^ previous) {
5451 query.append(WHERE_GREATER_THAN_HAS_NEXT);
5452 }
5453 else {
5454 query.append(WHERE_LESSER_THAN_HAS_NEXT);
5455 }
5456 }
5457 else {
5458 if (orderByComparator.isAscending() ^ previous) {
5459 query.append(WHERE_GREATER_THAN);
5460 }
5461 else {
5462 query.append(WHERE_LESSER_THAN);
5463 }
5464 }
5465 }
5466
5467 query.append(ORDER_BY_CLAUSE);
5468
5469 for (int i = 0; i < orderByFields.length; i++) {
5470 query.append(_ORDER_BY_ENTITY_ALIAS);
5471 query.append(orderByFields[i]);
5472
5473 if ((i + 1) < orderByFields.length) {
5474 if (orderByComparator.isAscending() ^ previous) {
5475 query.append(ORDER_BY_ASC_HAS_NEXT);
5476 }
5477 else {
5478 query.append(ORDER_BY_DESC_HAS_NEXT);
5479 }
5480 }
5481 else {
5482 if (orderByComparator.isAscending() ^ previous) {
5483 query.append(ORDER_BY_ASC);
5484 }
5485 else {
5486 query.append(ORDER_BY_DESC);
5487 }
5488 }
5489 }
5490 }
5491
5492 else {
5493 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
5494 }
5495
5496 String sql = query.toString();
5497
5498 Query q = session.createQuery(sql);
5499
5500 q.setFirstResult(0);
5501 q.setMaxResults(2);
5502
5503 QueryPos qPos = QueryPos.getInstance(q);
5504
5505 qPos.add(nodeId);
5506
5507 qPos.add(head);
5508
5509 qPos.add(status);
5510
5511 if (orderByComparator != null) {
5512 Object[] values = orderByComparator.getOrderByValues(wikiPage);
5513
5514 for (Object value : values) {
5515 qPos.add(value);
5516 }
5517 }
5518
5519 List<WikiPage> list = q.list();
5520
5521 if (list.size() == 2) {
5522 return list.get(1);
5523 }
5524 else {
5525 return null;
5526 }
5527 }
5528
5529 public List<WikiPage> findByN_H_P_S(long nodeId, boolean head,
5530 String parentTitle, int status) throws SystemException {
5531 return findByN_H_P_S(nodeId, head, parentTitle, status,
5532 QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
5533 }
5534
5535 public List<WikiPage> findByN_H_P_S(long nodeId, boolean head,
5536 String parentTitle, int status, int start, int end)
5537 throws SystemException {
5538 return findByN_H_P_S(nodeId, head, parentTitle, status, start, end, null);
5539 }
5540
5541 public List<WikiPage> findByN_H_P_S(long nodeId, boolean head,
5542 String parentTitle, int status, int start, int end,
5543 OrderByComparator orderByComparator) throws SystemException {
5544 Object[] finderArgs = new Object[] {
5545 nodeId, head, parentTitle, status,
5546
5547 String.valueOf(start), String.valueOf(end),
5548 String.valueOf(orderByComparator)
5549 };
5550
5551 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_N_H_P_S,
5552 finderArgs, this);
5553
5554 if (list == null) {
5555 Session session = null;
5556
5557 try {
5558 session = openSession();
5559
5560 StringBundler query = null;
5561
5562 if (orderByComparator != null) {
5563 query = new StringBundler(6 +
5564 (orderByComparator.getOrderByFields().length * 3));
5565 }
5566 else {
5567 query = new StringBundler(6);
5568 }
5569
5570 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
5571
5572 query.append(_FINDER_COLUMN_N_H_P_S_NODEID_2);
5573
5574 query.append(_FINDER_COLUMN_N_H_P_S_HEAD_2);
5575
5576 if (parentTitle == null) {
5577 query.append(_FINDER_COLUMN_N_H_P_S_PARENTTITLE_1);
5578 }
5579 else {
5580 if (parentTitle.equals(StringPool.BLANK)) {
5581 query.append(_FINDER_COLUMN_N_H_P_S_PARENTTITLE_3);
5582 }
5583 else {
5584 query.append(_FINDER_COLUMN_N_H_P_S_PARENTTITLE_2);
5585 }
5586 }
5587
5588 query.append(_FINDER_COLUMN_N_H_P_S_STATUS_2);
5589
5590 if (orderByComparator != null) {
5591 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
5592 orderByComparator);
5593 }
5594
5595 else {
5596 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
5597 }
5598
5599 String sql = query.toString();
5600
5601 Query q = session.createQuery(sql);
5602
5603 QueryPos qPos = QueryPos.getInstance(q);
5604
5605 qPos.add(nodeId);
5606
5607 qPos.add(head);
5608
5609 if (parentTitle != null) {
5610 qPos.add(parentTitle);
5611 }
5612
5613 qPos.add(status);
5614
5615 list = (List<WikiPage>)QueryUtil.list(q, getDialect(), start,
5616 end);
5617 }
5618 catch (Exception e) {
5619 throw processException(e);
5620 }
5621 finally {
5622 if (list == null) {
5623 list = new ArrayList<WikiPage>();
5624 }
5625
5626 cacheResult(list);
5627
5628 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_N_H_P_S,
5629 finderArgs, list);
5630
5631 closeSession(session);
5632 }
5633 }
5634
5635 return list;
5636 }
5637
5638 public WikiPage findByN_H_P_S_First(long nodeId, boolean head,
5639 String parentTitle, int status, OrderByComparator orderByComparator)
5640 throws NoSuchPageException, SystemException {
5641 List<WikiPage> list = findByN_H_P_S(nodeId, head, parentTitle, status,
5642 0, 1, orderByComparator);
5643
5644 if (list.isEmpty()) {
5645 StringBundler msg = new StringBundler(10);
5646
5647 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
5648
5649 msg.append("nodeId=");
5650 msg.append(nodeId);
5651
5652 msg.append(", head=");
5653 msg.append(head);
5654
5655 msg.append(", parentTitle=");
5656 msg.append(parentTitle);
5657
5658 msg.append(", status=");
5659 msg.append(status);
5660
5661 msg.append(StringPool.CLOSE_CURLY_BRACE);
5662
5663 throw new NoSuchPageException(msg.toString());
5664 }
5665 else {
5666 return list.get(0);
5667 }
5668 }
5669
5670 public WikiPage findByN_H_P_S_Last(long nodeId, boolean head,
5671 String parentTitle, int status, OrderByComparator orderByComparator)
5672 throws NoSuchPageException, SystemException {
5673 int count = countByN_H_P_S(nodeId, head, parentTitle, status);
5674
5675 List<WikiPage> list = findByN_H_P_S(nodeId, head, parentTitle, status,
5676 count - 1, count, orderByComparator);
5677
5678 if (list.isEmpty()) {
5679 StringBundler msg = new StringBundler(10);
5680
5681 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
5682
5683 msg.append("nodeId=");
5684 msg.append(nodeId);
5685
5686 msg.append(", head=");
5687 msg.append(head);
5688
5689 msg.append(", parentTitle=");
5690 msg.append(parentTitle);
5691
5692 msg.append(", status=");
5693 msg.append(status);
5694
5695 msg.append(StringPool.CLOSE_CURLY_BRACE);
5696
5697 throw new NoSuchPageException(msg.toString());
5698 }
5699 else {
5700 return list.get(0);
5701 }
5702 }
5703
5704 public WikiPage[] findByN_H_P_S_PrevAndNext(long pageId, long nodeId,
5705 boolean head, String parentTitle, int status,
5706 OrderByComparator orderByComparator)
5707 throws NoSuchPageException, SystemException {
5708 WikiPage wikiPage = findByPrimaryKey(pageId);
5709
5710 Session session = null;
5711
5712 try {
5713 session = openSession();
5714
5715 WikiPage[] array = new WikiPageImpl[3];
5716
5717 array[0] = getByN_H_P_S_PrevAndNext(session, wikiPage, nodeId,
5718 head, parentTitle, status, orderByComparator, true);
5719
5720 array[1] = wikiPage;
5721
5722 array[2] = getByN_H_P_S_PrevAndNext(session, wikiPage, nodeId,
5723 head, parentTitle, status, orderByComparator, false);
5724
5725 return array;
5726 }
5727 catch (Exception e) {
5728 throw processException(e);
5729 }
5730 finally {
5731 closeSession(session);
5732 }
5733 }
5734
5735 protected WikiPage getByN_H_P_S_PrevAndNext(Session session,
5736 WikiPage wikiPage, long nodeId, boolean head, String parentTitle,
5737 int status, OrderByComparator orderByComparator, boolean previous) {
5738 StringBundler query = null;
5739
5740 if (orderByComparator != null) {
5741 query = new StringBundler(6 +
5742 (orderByComparator.getOrderByFields().length * 6));
5743 }
5744 else {
5745 query = new StringBundler(3);
5746 }
5747
5748 query.append(_SQL_SELECT_WIKIPAGE_WHERE);
5749
5750 query.append(_FINDER_COLUMN_N_H_P_S_NODEID_2);
5751
5752 query.append(_FINDER_COLUMN_N_H_P_S_HEAD_2);
5753
5754 if (parentTitle == null) {
5755 query.append(_FINDER_COLUMN_N_H_P_S_PARENTTITLE_1);
5756 }
5757 else {
5758 if (parentTitle.equals(StringPool.BLANK)) {
5759 query.append(_FINDER_COLUMN_N_H_P_S_PARENTTITLE_3);
5760 }
5761 else {
5762 query.append(_FINDER_COLUMN_N_H_P_S_PARENTTITLE_2);
5763 }
5764 }
5765
5766 query.append(_FINDER_COLUMN_N_H_P_S_STATUS_2);
5767
5768 if (orderByComparator != null) {
5769 String[] orderByFields = orderByComparator.getOrderByFields();
5770
5771 if (orderByFields.length > 0) {
5772 query.append(WHERE_AND);
5773 }
5774
5775 for (int i = 0; i < orderByFields.length; i++) {
5776 query.append(_ORDER_BY_ENTITY_ALIAS);
5777 query.append(orderByFields[i]);
5778
5779 if ((i + 1) < orderByFields.length) {
5780 if (orderByComparator.isAscending() ^ previous) {
5781 query.append(WHERE_GREATER_THAN_HAS_NEXT);
5782 }
5783 else {
5784 query.append(WHERE_LESSER_THAN_HAS_NEXT);
5785 }
5786 }
5787 else {
5788 if (orderByComparator.isAscending() ^ previous) {
5789 query.append(WHERE_GREATER_THAN);
5790 }
5791 else {
5792 query.append(WHERE_LESSER_THAN);
5793 }
5794 }
5795 }
5796
5797 query.append(ORDER_BY_CLAUSE);
5798
5799 for (int i = 0; i < orderByFields.length; i++) {
5800 query.append(_ORDER_BY_ENTITY_ALIAS);
5801 query.append(orderByFields[i]);
5802
5803 if ((i + 1) < orderByFields.length) {
5804 if (orderByComparator.isAscending() ^ previous) {
5805 query.append(ORDER_BY_ASC_HAS_NEXT);
5806 }
5807 else {
5808 query.append(ORDER_BY_DESC_HAS_NEXT);
5809 }
5810 }
5811 else {
5812 if (orderByComparator.isAscending() ^ previous) {
5813 query.append(ORDER_BY_ASC);
5814 }
5815 else {
5816 query.append(ORDER_BY_DESC);
5817 }
5818 }
5819 }
5820 }
5821
5822 else {
5823 query.append(WikiPageModelImpl.ORDER_BY_JPQL);
5824 }
5825
5826 String sql = query.toString();
5827
5828 Query q = session.createQuery(sql);
5829
5830 q.setFirstResult(0);
5831 q.setMaxResults(2);
5832
5833 QueryPos qPos = QueryPos.getInstance(q);
5834
5835 qPos.add(nodeId);
5836
5837 qPos.add(head);
5838
5839 if (parentTitle != null) {
5840 qPos.add(parentTitle);
5841 }
5842
5843 qPos.add(status);
5844
5845 if (orderByComparator != null) {
5846 Object[] values = orderByComparator.getOrderByValues(wikiPage);
5847
5848 for (Object value : values) {
5849 qPos.add(value);
5850 }
5851 }
5852
5853 List<WikiPage> list = q.list();
5854
5855 if (list.size() == 2) {
5856 return list.get(1);
5857 }
5858 else {
5859 return null;
5860 }
5861 }
5862
5863 public List<WikiPage> findAll() throws SystemException {
5864 return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
5865 }
5866
5867 public List<WikiPage> findAll(int start, int end) throws SystemException {
5868 return findAll(start, end, null);
5869 }
5870
5871 public List<WikiPage> findAll(int start, int end,
5872 OrderByComparator orderByComparator) throws SystemException {
5873 Object[] finderArgs = new Object[] {
5874 String.valueOf(start), String.valueOf(end),
5875 String.valueOf(orderByComparator)
5876 };
5877
5878 List<WikiPage> list = (List<WikiPage>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
5879 finderArgs, this);
5880
5881 if (list == null) {
5882 Session session = null;
5883
5884 try {
5885 session = openSession();
5886
5887 StringBundler query = null;
5888 String sql = null;
5889
5890 if (orderByComparator != null) {
5891 query = new StringBundler(2 +
5892 (orderByComparator.getOrderByFields().length * 3));
5893
5894 query.append(_SQL_SELECT_WIKIPAGE);
5895
5896 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
5897 orderByComparator);
5898
5899 sql = query.toString();
5900 }
5901 else {
5902 sql = _SQL_SELECT_WIKIPAGE.concat(WikiPageModelImpl.ORDER_BY_JPQL);
5903 }
5904
5905 Query q = session.createQuery(sql);
5906
5907 if (orderByComparator == null) {
5908 list = (List<WikiPage>)QueryUtil.list(q, getDialect(),
5909 start, end, false);
5910
5911 Collections.sort(list);
5912 }
5913 else {
5914 list = (List<WikiPage>)QueryUtil.list(q, getDialect(),
5915 start, end);
5916 }
5917 }
5918 catch (Exception e) {
5919 throw processException(e);
5920 }
5921 finally {
5922 if (list == null) {
5923 list = new ArrayList<WikiPage>();
5924 }
5925
5926 cacheResult(list);
5927
5928 FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
5929
5930 closeSession(session);
5931 }
5932 }
5933
5934 return list;
5935 }
5936
5937 public void removeByUuid(String uuid) throws SystemException {
5938 for (WikiPage wikiPage : findByUuid(uuid)) {
5939 remove(wikiPage);
5940 }
5941 }
5942
5943 public void removeByUUID_G(String uuid, long groupId)
5944 throws NoSuchPageException, SystemException {
5945 WikiPage wikiPage = findByUUID_G(uuid, groupId);
5946
5947 remove(wikiPage);
5948 }
5949
5950 public void removeByNodeId(long nodeId) throws SystemException {
5951 for (WikiPage wikiPage : findByNodeId(nodeId)) {
5952 remove(wikiPage);
5953 }
5954 }
5955
5956 public void removeByFormat(String format) throws SystemException {
5957 for (WikiPage wikiPage : findByFormat(format)) {
5958 remove(wikiPage);
5959 }
5960 }
5961
5962 public void removeByR_N(long resourcePrimKey, long nodeId)
5963 throws SystemException {
5964 for (WikiPage wikiPage : findByR_N(resourcePrimKey, nodeId)) {
5965 remove(wikiPage);
5966 }
5967 }
5968
5969 public void removeByN_T(long nodeId, String title)
5970 throws SystemException {
5971 for (WikiPage wikiPage : findByN_T(nodeId, title)) {
5972 remove(wikiPage);
5973 }
5974 }
5975
5976 public void removeByN_H(long nodeId, boolean head)
5977 throws SystemException {
5978 for (WikiPage wikiPage : findByN_H(nodeId, head)) {
5979 remove(wikiPage);
5980 }
5981 }
5982
5983 public void removeByN_P(long nodeId, String parentTitle)
5984 throws SystemException {
5985 for (WikiPage wikiPage : findByN_P(nodeId, parentTitle)) {
5986 remove(wikiPage);
5987 }
5988 }
5989
5990 public void removeByN_R(long nodeId, String redirectTitle)
5991 throws SystemException {
5992 for (WikiPage wikiPage : findByN_R(nodeId, redirectTitle)) {
5993 remove(wikiPage);
5994 }
5995 }
5996
5997 public void removeByN_S(long nodeId, int status) throws SystemException {
5998 for (WikiPage wikiPage : findByN_S(nodeId, status)) {
5999 remove(wikiPage);
6000 }
6001 }
6002
6003 public void removeByR_N_V(long resourcePrimKey, long nodeId, double version)
6004 throws NoSuchPageException, SystemException {
6005 WikiPage wikiPage = findByR_N_V(resourcePrimKey, nodeId, version);
6006
6007 remove(wikiPage);
6008 }
6009
6010 public void removeByR_N_S(long resourcePrimKey, long nodeId, int status)
6011 throws SystemException {
6012 for (WikiPage wikiPage : findByR_N_S(resourcePrimKey, nodeId, status)) {
6013 remove(wikiPage);
6014 }
6015 }
6016
6017 public void removeByU_N_S(long userId, long nodeId, int status)
6018 throws SystemException {
6019 for (WikiPage wikiPage : findByU_N_S(userId, nodeId, status)) {
6020 remove(wikiPage);
6021 }
6022 }
6023
6024 public void removeByN_T_V(long nodeId, String title, double version)
6025 throws NoSuchPageException, SystemException {
6026 WikiPage wikiPage = findByN_T_V(nodeId, title, version);
6027
6028 remove(wikiPage);
6029 }
6030
6031 public void removeByN_T_H(long nodeId, String title, boolean head)
6032 throws SystemException {
6033 for (WikiPage wikiPage : findByN_T_H(nodeId, title, head)) {
6034 remove(wikiPage);
6035 }
6036 }
6037
6038 public void removeByN_T_S(long nodeId, String title, int status)
6039 throws SystemException {
6040 for (WikiPage wikiPage : findByN_T_S(nodeId, title, status)) {
6041 remove(wikiPage);
6042 }
6043 }
6044
6045 public void removeByN_H_P(long nodeId, boolean head, String parentTitle)
6046 throws SystemException {
6047 for (WikiPage wikiPage : findByN_H_P(nodeId, head, parentTitle)) {
6048 remove(wikiPage);
6049 }
6050 }
6051
6052 public void removeByN_H_S(long nodeId, boolean head, int status)
6053 throws SystemException {
6054 for (WikiPage wikiPage : findByN_H_S(nodeId, head, status)) {
6055 remove(wikiPage);
6056 }
6057 }
6058
6059 public void removeByN_H_P_S(long nodeId, boolean head, String parentTitle,
6060 int status) throws SystemException {
6061 for (WikiPage wikiPage : findByN_H_P_S(nodeId, head, parentTitle, status)) {
6062 remove(wikiPage);
6063 }
6064 }
6065
6066 public void removeAll() throws SystemException {
6067 for (WikiPage wikiPage : findAll()) {
6068 remove(wikiPage);
6069 }
6070 }
6071
6072 public int countByUuid(String uuid) throws SystemException {
6073 Object[] finderArgs = new Object[] { uuid };
6074
6075 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_UUID,
6076 finderArgs, this);
6077
6078 if (count == null) {
6079 Session session = null;
6080
6081 try {
6082 session = openSession();
6083
6084 StringBundler query = new StringBundler(2);
6085
6086 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6087
6088 if (uuid == null) {
6089 query.append(_FINDER_COLUMN_UUID_UUID_1);
6090 }
6091 else {
6092 if (uuid.equals(StringPool.BLANK)) {
6093 query.append(_FINDER_COLUMN_UUID_UUID_3);
6094 }
6095 else {
6096 query.append(_FINDER_COLUMN_UUID_UUID_2);
6097 }
6098 }
6099
6100 String sql = query.toString();
6101
6102 Query q = session.createQuery(sql);
6103
6104 QueryPos qPos = QueryPos.getInstance(q);
6105
6106 if (uuid != null) {
6107 qPos.add(uuid);
6108 }
6109
6110 count = (Long)q.uniqueResult();
6111 }
6112 catch (Exception e) {
6113 throw processException(e);
6114 }
6115 finally {
6116 if (count == null) {
6117 count = Long.valueOf(0);
6118 }
6119
6120 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_UUID,
6121 finderArgs, count);
6122
6123 closeSession(session);
6124 }
6125 }
6126
6127 return count.intValue();
6128 }
6129
6130 public int countByUUID_G(String uuid, long groupId)
6131 throws SystemException {
6132 Object[] finderArgs = new Object[] { uuid, groupId };
6133
6134 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_UUID_G,
6135 finderArgs, this);
6136
6137 if (count == null) {
6138 Session session = null;
6139
6140 try {
6141 session = openSession();
6142
6143 StringBundler query = new StringBundler(3);
6144
6145 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6146
6147 if (uuid == null) {
6148 query.append(_FINDER_COLUMN_UUID_G_UUID_1);
6149 }
6150 else {
6151 if (uuid.equals(StringPool.BLANK)) {
6152 query.append(_FINDER_COLUMN_UUID_G_UUID_3);
6153 }
6154 else {
6155 query.append(_FINDER_COLUMN_UUID_G_UUID_2);
6156 }
6157 }
6158
6159 query.append(_FINDER_COLUMN_UUID_G_GROUPID_2);
6160
6161 String sql = query.toString();
6162
6163 Query q = session.createQuery(sql);
6164
6165 QueryPos qPos = QueryPos.getInstance(q);
6166
6167 if (uuid != null) {
6168 qPos.add(uuid);
6169 }
6170
6171 qPos.add(groupId);
6172
6173 count = (Long)q.uniqueResult();
6174 }
6175 catch (Exception e) {
6176 throw processException(e);
6177 }
6178 finally {
6179 if (count == null) {
6180 count = Long.valueOf(0);
6181 }
6182
6183 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_UUID_G,
6184 finderArgs, count);
6185
6186 closeSession(session);
6187 }
6188 }
6189
6190 return count.intValue();
6191 }
6192
6193 public int countByNodeId(long nodeId) throws SystemException {
6194 Object[] finderArgs = new Object[] { nodeId };
6195
6196 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_NODEID,
6197 finderArgs, this);
6198
6199 if (count == null) {
6200 Session session = null;
6201
6202 try {
6203 session = openSession();
6204
6205 StringBundler query = new StringBundler(2);
6206
6207 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6208
6209 query.append(_FINDER_COLUMN_NODEID_NODEID_2);
6210
6211 String sql = query.toString();
6212
6213 Query q = session.createQuery(sql);
6214
6215 QueryPos qPos = QueryPos.getInstance(q);
6216
6217 qPos.add(nodeId);
6218
6219 count = (Long)q.uniqueResult();
6220 }
6221 catch (Exception e) {
6222 throw processException(e);
6223 }
6224 finally {
6225 if (count == null) {
6226 count = Long.valueOf(0);
6227 }
6228
6229 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_NODEID,
6230 finderArgs, count);
6231
6232 closeSession(session);
6233 }
6234 }
6235
6236 return count.intValue();
6237 }
6238
6239 public int countByFormat(String format) throws SystemException {
6240 Object[] finderArgs = new Object[] { format };
6241
6242 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_FORMAT,
6243 finderArgs, this);
6244
6245 if (count == null) {
6246 Session session = null;
6247
6248 try {
6249 session = openSession();
6250
6251 StringBundler query = new StringBundler(2);
6252
6253 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6254
6255 if (format == null) {
6256 query.append(_FINDER_COLUMN_FORMAT_FORMAT_1);
6257 }
6258 else {
6259 if (format.equals(StringPool.BLANK)) {
6260 query.append(_FINDER_COLUMN_FORMAT_FORMAT_3);
6261 }
6262 else {
6263 query.append(_FINDER_COLUMN_FORMAT_FORMAT_2);
6264 }
6265 }
6266
6267 String sql = query.toString();
6268
6269 Query q = session.createQuery(sql);
6270
6271 QueryPos qPos = QueryPos.getInstance(q);
6272
6273 if (format != null) {
6274 qPos.add(format);
6275 }
6276
6277 count = (Long)q.uniqueResult();
6278 }
6279 catch (Exception e) {
6280 throw processException(e);
6281 }
6282 finally {
6283 if (count == null) {
6284 count = Long.valueOf(0);
6285 }
6286
6287 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_FORMAT,
6288 finderArgs, count);
6289
6290 closeSession(session);
6291 }
6292 }
6293
6294 return count.intValue();
6295 }
6296
6297 public int countByR_N(long resourcePrimKey, long nodeId)
6298 throws SystemException {
6299 Object[] finderArgs = new Object[] { resourcePrimKey, nodeId };
6300
6301 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_R_N,
6302 finderArgs, this);
6303
6304 if (count == null) {
6305 Session session = null;
6306
6307 try {
6308 session = openSession();
6309
6310 StringBundler query = new StringBundler(3);
6311
6312 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6313
6314 query.append(_FINDER_COLUMN_R_N_RESOURCEPRIMKEY_2);
6315
6316 query.append(_FINDER_COLUMN_R_N_NODEID_2);
6317
6318 String sql = query.toString();
6319
6320 Query q = session.createQuery(sql);
6321
6322 QueryPos qPos = QueryPos.getInstance(q);
6323
6324 qPos.add(resourcePrimKey);
6325
6326 qPos.add(nodeId);
6327
6328 count = (Long)q.uniqueResult();
6329 }
6330 catch (Exception e) {
6331 throw processException(e);
6332 }
6333 finally {
6334 if (count == null) {
6335 count = Long.valueOf(0);
6336 }
6337
6338 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_R_N, finderArgs,
6339 count);
6340
6341 closeSession(session);
6342 }
6343 }
6344
6345 return count.intValue();
6346 }
6347
6348 public int countByN_T(long nodeId, String title) throws SystemException {
6349 Object[] finderArgs = new Object[] { nodeId, title };
6350
6351 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_T,
6352 finderArgs, this);
6353
6354 if (count == null) {
6355 Session session = null;
6356
6357 try {
6358 session = openSession();
6359
6360 StringBundler query = new StringBundler(3);
6361
6362 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6363
6364 query.append(_FINDER_COLUMN_N_T_NODEID_2);
6365
6366 if (title == null) {
6367 query.append(_FINDER_COLUMN_N_T_TITLE_1);
6368 }
6369 else {
6370 if (title.equals(StringPool.BLANK)) {
6371 query.append(_FINDER_COLUMN_N_T_TITLE_3);
6372 }
6373 else {
6374 query.append(_FINDER_COLUMN_N_T_TITLE_2);
6375 }
6376 }
6377
6378 String sql = query.toString();
6379
6380 Query q = session.createQuery(sql);
6381
6382 QueryPos qPos = QueryPos.getInstance(q);
6383
6384 qPos.add(nodeId);
6385
6386 if (title != null) {
6387 qPos.add(title);
6388 }
6389
6390 count = (Long)q.uniqueResult();
6391 }
6392 catch (Exception e) {
6393 throw processException(e);
6394 }
6395 finally {
6396 if (count == null) {
6397 count = Long.valueOf(0);
6398 }
6399
6400 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_T, finderArgs,
6401 count);
6402
6403 closeSession(session);
6404 }
6405 }
6406
6407 return count.intValue();
6408 }
6409
6410 public int countByN_H(long nodeId, boolean head) throws SystemException {
6411 Object[] finderArgs = new Object[] { nodeId, head };
6412
6413 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_H,
6414 finderArgs, this);
6415
6416 if (count == null) {
6417 Session session = null;
6418
6419 try {
6420 session = openSession();
6421
6422 StringBundler query = new StringBundler(3);
6423
6424 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6425
6426 query.append(_FINDER_COLUMN_N_H_NODEID_2);
6427
6428 query.append(_FINDER_COLUMN_N_H_HEAD_2);
6429
6430 String sql = query.toString();
6431
6432 Query q = session.createQuery(sql);
6433
6434 QueryPos qPos = QueryPos.getInstance(q);
6435
6436 qPos.add(nodeId);
6437
6438 qPos.add(head);
6439
6440 count = (Long)q.uniqueResult();
6441 }
6442 catch (Exception e) {
6443 throw processException(e);
6444 }
6445 finally {
6446 if (count == null) {
6447 count = Long.valueOf(0);
6448 }
6449
6450 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_H, finderArgs,
6451 count);
6452
6453 closeSession(session);
6454 }
6455 }
6456
6457 return count.intValue();
6458 }
6459
6460 public int countByN_P(long nodeId, String parentTitle)
6461 throws SystemException {
6462 Object[] finderArgs = new Object[] { nodeId, parentTitle };
6463
6464 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_P,
6465 finderArgs, this);
6466
6467 if (count == null) {
6468 Session session = null;
6469
6470 try {
6471 session = openSession();
6472
6473 StringBundler query = new StringBundler(3);
6474
6475 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6476
6477 query.append(_FINDER_COLUMN_N_P_NODEID_2);
6478
6479 if (parentTitle == null) {
6480 query.append(_FINDER_COLUMN_N_P_PARENTTITLE_1);
6481 }
6482 else {
6483 if (parentTitle.equals(StringPool.BLANK)) {
6484 query.append(_FINDER_COLUMN_N_P_PARENTTITLE_3);
6485 }
6486 else {
6487 query.append(_FINDER_COLUMN_N_P_PARENTTITLE_2);
6488 }
6489 }
6490
6491 String sql = query.toString();
6492
6493 Query q = session.createQuery(sql);
6494
6495 QueryPos qPos = QueryPos.getInstance(q);
6496
6497 qPos.add(nodeId);
6498
6499 if (parentTitle != null) {
6500 qPos.add(parentTitle);
6501 }
6502
6503 count = (Long)q.uniqueResult();
6504 }
6505 catch (Exception e) {
6506 throw processException(e);
6507 }
6508 finally {
6509 if (count == null) {
6510 count = Long.valueOf(0);
6511 }
6512
6513 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_P, finderArgs,
6514 count);
6515
6516 closeSession(session);
6517 }
6518 }
6519
6520 return count.intValue();
6521 }
6522
6523 public int countByN_R(long nodeId, String redirectTitle)
6524 throws SystemException {
6525 Object[] finderArgs = new Object[] { nodeId, redirectTitle };
6526
6527 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_R,
6528 finderArgs, this);
6529
6530 if (count == null) {
6531 Session session = null;
6532
6533 try {
6534 session = openSession();
6535
6536 StringBundler query = new StringBundler(3);
6537
6538 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6539
6540 query.append(_FINDER_COLUMN_N_R_NODEID_2);
6541
6542 if (redirectTitle == null) {
6543 query.append(_FINDER_COLUMN_N_R_REDIRECTTITLE_1);
6544 }
6545 else {
6546 if (redirectTitle.equals(StringPool.BLANK)) {
6547 query.append(_FINDER_COLUMN_N_R_REDIRECTTITLE_3);
6548 }
6549 else {
6550 query.append(_FINDER_COLUMN_N_R_REDIRECTTITLE_2);
6551 }
6552 }
6553
6554 String sql = query.toString();
6555
6556 Query q = session.createQuery(sql);
6557
6558 QueryPos qPos = QueryPos.getInstance(q);
6559
6560 qPos.add(nodeId);
6561
6562 if (redirectTitle != null) {
6563 qPos.add(redirectTitle);
6564 }
6565
6566 count = (Long)q.uniqueResult();
6567 }
6568 catch (Exception e) {
6569 throw processException(e);
6570 }
6571 finally {
6572 if (count == null) {
6573 count = Long.valueOf(0);
6574 }
6575
6576 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_R, finderArgs,
6577 count);
6578
6579 closeSession(session);
6580 }
6581 }
6582
6583 return count.intValue();
6584 }
6585
6586 public int countByN_S(long nodeId, int status) throws SystemException {
6587 Object[] finderArgs = new Object[] { nodeId, status };
6588
6589 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_S,
6590 finderArgs, this);
6591
6592 if (count == null) {
6593 Session session = null;
6594
6595 try {
6596 session = openSession();
6597
6598 StringBundler query = new StringBundler(3);
6599
6600 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6601
6602 query.append(_FINDER_COLUMN_N_S_NODEID_2);
6603
6604 query.append(_FINDER_COLUMN_N_S_STATUS_2);
6605
6606 String sql = query.toString();
6607
6608 Query q = session.createQuery(sql);
6609
6610 QueryPos qPos = QueryPos.getInstance(q);
6611
6612 qPos.add(nodeId);
6613
6614 qPos.add(status);
6615
6616 count = (Long)q.uniqueResult();
6617 }
6618 catch (Exception e) {
6619 throw processException(e);
6620 }
6621 finally {
6622 if (count == null) {
6623 count = Long.valueOf(0);
6624 }
6625
6626 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_S, finderArgs,
6627 count);
6628
6629 closeSession(session);
6630 }
6631 }
6632
6633 return count.intValue();
6634 }
6635
6636 public int countByR_N_V(long resourcePrimKey, long nodeId, double version)
6637 throws SystemException {
6638 Object[] finderArgs = new Object[] { resourcePrimKey, nodeId, version };
6639
6640 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_R_N_V,
6641 finderArgs, this);
6642
6643 if (count == null) {
6644 Session session = null;
6645
6646 try {
6647 session = openSession();
6648
6649 StringBundler query = new StringBundler(4);
6650
6651 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6652
6653 query.append(_FINDER_COLUMN_R_N_V_RESOURCEPRIMKEY_2);
6654
6655 query.append(_FINDER_COLUMN_R_N_V_NODEID_2);
6656
6657 query.append(_FINDER_COLUMN_R_N_V_VERSION_2);
6658
6659 String sql = query.toString();
6660
6661 Query q = session.createQuery(sql);
6662
6663 QueryPos qPos = QueryPos.getInstance(q);
6664
6665 qPos.add(resourcePrimKey);
6666
6667 qPos.add(nodeId);
6668
6669 qPos.add(version);
6670
6671 count = (Long)q.uniqueResult();
6672 }
6673 catch (Exception e) {
6674 throw processException(e);
6675 }
6676 finally {
6677 if (count == null) {
6678 count = Long.valueOf(0);
6679 }
6680
6681 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_R_N_V,
6682 finderArgs, count);
6683
6684 closeSession(session);
6685 }
6686 }
6687
6688 return count.intValue();
6689 }
6690
6691 public int countByR_N_S(long resourcePrimKey, long nodeId, int status)
6692 throws SystemException {
6693 Object[] finderArgs = new Object[] { resourcePrimKey, nodeId, status };
6694
6695 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_R_N_S,
6696 finderArgs, this);
6697
6698 if (count == null) {
6699 Session session = null;
6700
6701 try {
6702 session = openSession();
6703
6704 StringBundler query = new StringBundler(4);
6705
6706 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6707
6708 query.append(_FINDER_COLUMN_R_N_S_RESOURCEPRIMKEY_2);
6709
6710 query.append(_FINDER_COLUMN_R_N_S_NODEID_2);
6711
6712 query.append(_FINDER_COLUMN_R_N_S_STATUS_2);
6713
6714 String sql = query.toString();
6715
6716 Query q = session.createQuery(sql);
6717
6718 QueryPos qPos = QueryPos.getInstance(q);
6719
6720 qPos.add(resourcePrimKey);
6721
6722 qPos.add(nodeId);
6723
6724 qPos.add(status);
6725
6726 count = (Long)q.uniqueResult();
6727 }
6728 catch (Exception e) {
6729 throw processException(e);
6730 }
6731 finally {
6732 if (count == null) {
6733 count = Long.valueOf(0);
6734 }
6735
6736 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_R_N_S,
6737 finderArgs, count);
6738
6739 closeSession(session);
6740 }
6741 }
6742
6743 return count.intValue();
6744 }
6745
6746 public int countByU_N_S(long userId, long nodeId, int status)
6747 throws SystemException {
6748 Object[] finderArgs = new Object[] { userId, nodeId, status };
6749
6750 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_U_N_S,
6751 finderArgs, this);
6752
6753 if (count == null) {
6754 Session session = null;
6755
6756 try {
6757 session = openSession();
6758
6759 StringBundler query = new StringBundler(4);
6760
6761 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6762
6763 query.append(_FINDER_COLUMN_U_N_S_USERID_2);
6764
6765 query.append(_FINDER_COLUMN_U_N_S_NODEID_2);
6766
6767 query.append(_FINDER_COLUMN_U_N_S_STATUS_2);
6768
6769 String sql = query.toString();
6770
6771 Query q = session.createQuery(sql);
6772
6773 QueryPos qPos = QueryPos.getInstance(q);
6774
6775 qPos.add(userId);
6776
6777 qPos.add(nodeId);
6778
6779 qPos.add(status);
6780
6781 count = (Long)q.uniqueResult();
6782 }
6783 catch (Exception e) {
6784 throw processException(e);
6785 }
6786 finally {
6787 if (count == null) {
6788 count = Long.valueOf(0);
6789 }
6790
6791 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_U_N_S,
6792 finderArgs, count);
6793
6794 closeSession(session);
6795 }
6796 }
6797
6798 return count.intValue();
6799 }
6800
6801 public int countByN_T_V(long nodeId, String title, double version)
6802 throws SystemException {
6803 Object[] finderArgs = new Object[] { nodeId, title, version };
6804
6805 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_T_V,
6806 finderArgs, this);
6807
6808 if (count == null) {
6809 Session session = null;
6810
6811 try {
6812 session = openSession();
6813
6814 StringBundler query = new StringBundler(4);
6815
6816 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6817
6818 query.append(_FINDER_COLUMN_N_T_V_NODEID_2);
6819
6820 if (title == null) {
6821 query.append(_FINDER_COLUMN_N_T_V_TITLE_1);
6822 }
6823 else {
6824 if (title.equals(StringPool.BLANK)) {
6825 query.append(_FINDER_COLUMN_N_T_V_TITLE_3);
6826 }
6827 else {
6828 query.append(_FINDER_COLUMN_N_T_V_TITLE_2);
6829 }
6830 }
6831
6832 query.append(_FINDER_COLUMN_N_T_V_VERSION_2);
6833
6834 String sql = query.toString();
6835
6836 Query q = session.createQuery(sql);
6837
6838 QueryPos qPos = QueryPos.getInstance(q);
6839
6840 qPos.add(nodeId);
6841
6842 if (title != null) {
6843 qPos.add(title);
6844 }
6845
6846 qPos.add(version);
6847
6848 count = (Long)q.uniqueResult();
6849 }
6850 catch (Exception e) {
6851 throw processException(e);
6852 }
6853 finally {
6854 if (count == null) {
6855 count = Long.valueOf(0);
6856 }
6857
6858 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_T_V,
6859 finderArgs, count);
6860
6861 closeSession(session);
6862 }
6863 }
6864
6865 return count.intValue();
6866 }
6867
6868 public int countByN_T_H(long nodeId, String title, boolean head)
6869 throws SystemException {
6870 Object[] finderArgs = new Object[] { nodeId, title, head };
6871
6872 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_T_H,
6873 finderArgs, this);
6874
6875 if (count == null) {
6876 Session session = null;
6877
6878 try {
6879 session = openSession();
6880
6881 StringBundler query = new StringBundler(4);
6882
6883 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6884
6885 query.append(_FINDER_COLUMN_N_T_H_NODEID_2);
6886
6887 if (title == null) {
6888 query.append(_FINDER_COLUMN_N_T_H_TITLE_1);
6889 }
6890 else {
6891 if (title.equals(StringPool.BLANK)) {
6892 query.append(_FINDER_COLUMN_N_T_H_TITLE_3);
6893 }
6894 else {
6895 query.append(_FINDER_COLUMN_N_T_H_TITLE_2);
6896 }
6897 }
6898
6899 query.append(_FINDER_COLUMN_N_T_H_HEAD_2);
6900
6901 String sql = query.toString();
6902
6903 Query q = session.createQuery(sql);
6904
6905 QueryPos qPos = QueryPos.getInstance(q);
6906
6907 qPos.add(nodeId);
6908
6909 if (title != null) {
6910 qPos.add(title);
6911 }
6912
6913 qPos.add(head);
6914
6915 count = (Long)q.uniqueResult();
6916 }
6917 catch (Exception e) {
6918 throw processException(e);
6919 }
6920 finally {
6921 if (count == null) {
6922 count = Long.valueOf(0);
6923 }
6924
6925 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_T_H,
6926 finderArgs, count);
6927
6928 closeSession(session);
6929 }
6930 }
6931
6932 return count.intValue();
6933 }
6934
6935 public int countByN_T_S(long nodeId, String title, int status)
6936 throws SystemException {
6937 Object[] finderArgs = new Object[] { nodeId, title, status };
6938
6939 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_T_S,
6940 finderArgs, this);
6941
6942 if (count == null) {
6943 Session session = null;
6944
6945 try {
6946 session = openSession();
6947
6948 StringBundler query = new StringBundler(4);
6949
6950 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
6951
6952 query.append(_FINDER_COLUMN_N_T_S_NODEID_2);
6953
6954 if (title == null) {
6955 query.append(_FINDER_COLUMN_N_T_S_TITLE_1);
6956 }
6957 else {
6958 if (title.equals(StringPool.BLANK)) {
6959 query.append(_FINDER_COLUMN_N_T_S_TITLE_3);
6960 }
6961 else {
6962 query.append(_FINDER_COLUMN_N_T_S_TITLE_2);
6963 }
6964 }
6965
6966 query.append(_FINDER_COLUMN_N_T_S_STATUS_2);
6967
6968 String sql = query.toString();
6969
6970 Query q = session.createQuery(sql);
6971
6972 QueryPos qPos = QueryPos.getInstance(q);
6973
6974 qPos.add(nodeId);
6975
6976 if (title != null) {
6977 qPos.add(title);
6978 }
6979
6980 qPos.add(status);
6981
6982 count = (Long)q.uniqueResult();
6983 }
6984 catch (Exception e) {
6985 throw processException(e);
6986 }
6987 finally {
6988 if (count == null) {
6989 count = Long.valueOf(0);
6990 }
6991
6992 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_T_S,
6993 finderArgs, count);
6994
6995 closeSession(session);
6996 }
6997 }
6998
6999 return count.intValue();
7000 }
7001
7002 public int countByN_H_P(long nodeId, boolean head, String parentTitle)
7003 throws SystemException {
7004 Object[] finderArgs = new Object[] { nodeId, head, parentTitle };
7005
7006 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_H_P,
7007 finderArgs, this);
7008
7009 if (count == null) {
7010 Session session = null;
7011
7012 try {
7013 session = openSession();
7014
7015 StringBundler query = new StringBundler(4);
7016
7017 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
7018
7019 query.append(_FINDER_COLUMN_N_H_P_NODEID_2);
7020
7021 query.append(_FINDER_COLUMN_N_H_P_HEAD_2);
7022
7023 if (parentTitle == null) {
7024 query.append(_FINDER_COLUMN_N_H_P_PARENTTITLE_1);
7025 }
7026 else {
7027 if (parentTitle.equals(StringPool.BLANK)) {
7028 query.append(_FINDER_COLUMN_N_H_P_PARENTTITLE_3);
7029 }
7030 else {
7031 query.append(_FINDER_COLUMN_N_H_P_PARENTTITLE_2);
7032 }
7033 }
7034
7035 String sql = query.toString();
7036
7037 Query q = session.createQuery(sql);
7038
7039 QueryPos qPos = QueryPos.getInstance(q);
7040
7041 qPos.add(nodeId);
7042
7043 qPos.add(head);
7044
7045 if (parentTitle != null) {
7046 qPos.add(parentTitle);
7047 }
7048
7049 count = (Long)q.uniqueResult();
7050 }
7051 catch (Exception e) {
7052 throw processException(e);
7053 }
7054 finally {
7055 if (count == null) {
7056 count = Long.valueOf(0);
7057 }
7058
7059 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_H_P,
7060 finderArgs, count);
7061
7062 closeSession(session);
7063 }
7064 }
7065
7066 return count.intValue();
7067 }
7068
7069 public int countByN_H_S(long nodeId, boolean head, int status)
7070 throws SystemException {
7071 Object[] finderArgs = new Object[] { nodeId, head, status };
7072
7073 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_H_S,
7074 finderArgs, this);
7075
7076 if (count == null) {
7077 Session session = null;
7078
7079 try {
7080 session = openSession();
7081
7082 StringBundler query = new StringBundler(4);
7083
7084 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
7085
7086 query.append(_FINDER_COLUMN_N_H_S_NODEID_2);
7087
7088 query.append(_FINDER_COLUMN_N_H_S_HEAD_2);
7089
7090 query.append(_FINDER_COLUMN_N_H_S_STATUS_2);
7091
7092 String sql = query.toString();
7093
7094 Query q = session.createQuery(sql);
7095
7096 QueryPos qPos = QueryPos.getInstance(q);
7097
7098 qPos.add(nodeId);
7099
7100 qPos.add(head);
7101
7102 qPos.add(status);
7103
7104 count = (Long)q.uniqueResult();
7105 }
7106 catch (Exception e) {
7107 throw processException(e);
7108 }
7109 finally {
7110 if (count == null) {
7111 count = Long.valueOf(0);
7112 }
7113
7114 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_H_S,
7115 finderArgs, count);
7116
7117 closeSession(session);
7118 }
7119 }
7120
7121 return count.intValue();
7122 }
7123
7124 public int countByN_H_P_S(long nodeId, boolean head, String parentTitle,
7125 int status) throws SystemException {
7126 Object[] finderArgs = new Object[] { nodeId, head, parentTitle, status };
7127
7128 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_H_P_S,
7129 finderArgs, this);
7130
7131 if (count == null) {
7132 Session session = null;
7133
7134 try {
7135 session = openSession();
7136
7137 StringBundler query = new StringBundler(5);
7138
7139 query.append(_SQL_COUNT_WIKIPAGE_WHERE);
7140
7141 query.append(_FINDER_COLUMN_N_H_P_S_NODEID_2);
7142
7143 query.append(_FINDER_COLUMN_N_H_P_S_HEAD_2);
7144
7145 if (parentTitle == null) {
7146 query.append(_FINDER_COLUMN_N_H_P_S_PARENTTITLE_1);
7147 }
7148 else {
7149 if (parentTitle.equals(StringPool.BLANK)) {
7150 query.append(_FINDER_COLUMN_N_H_P_S_PARENTTITLE_3);
7151 }
7152 else {
7153 query.append(_FINDER_COLUMN_N_H_P_S_PARENTTITLE_2);
7154 }
7155 }
7156
7157 query.append(_FINDER_COLUMN_N_H_P_S_STATUS_2);
7158
7159 String sql = query.toString();
7160
7161 Query q = session.createQuery(sql);
7162
7163 QueryPos qPos = QueryPos.getInstance(q);
7164
7165 qPos.add(nodeId);
7166
7167 qPos.add(head);
7168
7169 if (parentTitle != null) {
7170 qPos.add(parentTitle);
7171 }
7172
7173 qPos.add(status);
7174
7175 count = (Long)q.uniqueResult();
7176 }
7177 catch (Exception e) {
7178 throw processException(e);
7179 }
7180 finally {
7181 if (count == null) {
7182 count = Long.valueOf(0);
7183 }
7184
7185 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_H_P_S,
7186 finderArgs, count);
7187
7188 closeSession(session);
7189 }
7190 }
7191
7192 return count.intValue();
7193 }
7194
7195 public int countAll() throws SystemException {
7196 Object[] finderArgs = new Object[0];
7197
7198 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
7199 finderArgs, this);
7200
7201 if (count == null) {
7202 Session session = null;
7203
7204 try {
7205 session = openSession();
7206
7207 Query q = session.createQuery(_SQL_COUNT_WIKIPAGE);
7208
7209 count = (Long)q.uniqueResult();
7210 }
7211 catch (Exception e) {
7212 throw processException(e);
7213 }
7214 finally {
7215 if (count == null) {
7216 count = Long.valueOf(0);
7217 }
7218
7219 FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
7220 count);
7221
7222 closeSession(session);
7223 }
7224 }
7225
7226 return count.intValue();
7227 }
7228
7229 public void afterPropertiesSet() {
7230 String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
7231 com.liferay.portal.util.PropsUtil.get(
7232 "value.object.listener.com.liferay.portlet.wiki.model.WikiPage")));
7233
7234 if (listenerClassNames.length > 0) {
7235 try {
7236 List<ModelListener<WikiPage>> listenersList = new ArrayList<ModelListener<WikiPage>>();
7237
7238 for (String listenerClassName : listenerClassNames) {
7239 listenersList.add((ModelListener<WikiPage>)InstanceFactory.newInstance(
7240 listenerClassName));
7241 }
7242
7243 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
7244 }
7245 catch (Exception e) {
7246 _log.error(e);
7247 }
7248 }
7249 }
7250
7251 @BeanReference(type = WikiNodePersistence.class)
7252 protected WikiNodePersistence wikiNodePersistence;
7253 @BeanReference(type = WikiPagePersistence.class)
7254 protected WikiPagePersistence wikiPagePersistence;
7255 @BeanReference(type = WikiPageResourcePersistence.class)
7256 protected WikiPageResourcePersistence wikiPageResourcePersistence;
7257 @BeanReference(type = CompanyPersistence.class)
7258 protected CompanyPersistence companyPersistence;
7259 @BeanReference(type = GroupPersistence.class)
7260 protected GroupPersistence groupPersistence;
7261 @BeanReference(type = PortletPreferencesPersistence.class)
7262 protected PortletPreferencesPersistence portletPreferencesPersistence;
7263 @BeanReference(type = ResourcePersistence.class)
7264 protected ResourcePersistence resourcePersistence;
7265 @BeanReference(type = SubscriptionPersistence.class)
7266 protected SubscriptionPersistence subscriptionPersistence;
7267 @BeanReference(type = UserPersistence.class)
7268 protected UserPersistence userPersistence;
7269 @BeanReference(type = WorkflowInstanceLinkPersistence.class)
7270 protected WorkflowInstanceLinkPersistence workflowInstanceLinkPersistence;
7271 @BeanReference(type = AssetCategoryPersistence.class)
7272 protected AssetCategoryPersistence assetCategoryPersistence;
7273 @BeanReference(type = AssetEntryPersistence.class)
7274 protected AssetEntryPersistence assetEntryPersistence;
7275 @BeanReference(type = AssetTagPersistence.class)
7276 protected AssetTagPersistence assetTagPersistence;
7277 @BeanReference(type = ExpandoValuePersistence.class)
7278 protected ExpandoValuePersistence expandoValuePersistence;
7279 @BeanReference(type = MBMessagePersistence.class)
7280 protected MBMessagePersistence mbMessagePersistence;
7281 @BeanReference(type = SocialActivityPersistence.class)
7282 protected SocialActivityPersistence socialActivityPersistence;
7283 @BeanReference(type = SocialEquityLogPersistence.class)
7284 protected SocialEquityLogPersistence socialEquityLogPersistence;
7285 private static final String _SQL_SELECT_WIKIPAGE = "SELECT wikiPage FROM WikiPage wikiPage";
7286 private static final String _SQL_SELECT_WIKIPAGE_WHERE = "SELECT wikiPage FROM WikiPage wikiPage WHERE ";
7287 private static final String _SQL_COUNT_WIKIPAGE = "SELECT COUNT(wikiPage) FROM WikiPage wikiPage";
7288 private static final String _SQL_COUNT_WIKIPAGE_WHERE = "SELECT COUNT(wikiPage) FROM WikiPage wikiPage WHERE ";
7289 private static final String _FINDER_COLUMN_UUID_UUID_1 = "wikiPage.uuid IS NULL";
7290 private static final String _FINDER_COLUMN_UUID_UUID_2 = "wikiPage.uuid = ?";
7291 private static final String _FINDER_COLUMN_UUID_UUID_3 = "(wikiPage.uuid IS NULL OR wikiPage.uuid = ?)";
7292 private static final String _FINDER_COLUMN_UUID_G_UUID_1 = "wikiPage.uuid IS NULL AND ";
7293 private static final String _FINDER_COLUMN_UUID_G_UUID_2 = "wikiPage.uuid = ? AND ";
7294 private static final String _FINDER_COLUMN_UUID_G_UUID_3 = "(wikiPage.uuid IS NULL OR wikiPage.uuid = ?) AND ";
7295 private static final String _FINDER_COLUMN_UUID_G_GROUPID_2 = "wikiPage.groupId = ?";
7296 private static final String _FINDER_COLUMN_NODEID_NODEID_2 = "wikiPage.nodeId = ?";
7297 private static final String _FINDER_COLUMN_FORMAT_FORMAT_1 = "wikiPage.format IS NULL";
7298 private static final String _FINDER_COLUMN_FORMAT_FORMAT_2 = "wikiPage.format = ?";
7299 private static final String _FINDER_COLUMN_FORMAT_FORMAT_3 = "(wikiPage.format IS NULL OR wikiPage.format = ?)";
7300 private static final String _FINDER_COLUMN_R_N_RESOURCEPRIMKEY_2 = "wikiPage.resourcePrimKey = ? AND ";
7301 private static final String _FINDER_COLUMN_R_N_NODEID_2 = "wikiPage.nodeId = ?";
7302 private static final String _FINDER_COLUMN_N_T_NODEID_2 = "wikiPage.nodeId = ? AND ";
7303 private static final String _FINDER_COLUMN_N_T_TITLE_1 = "wikiPage.title IS NULL";
7304 private static final String _FINDER_COLUMN_N_T_TITLE_2 = "lower(wikiPage.title) = lower(?)";
7305 private static final String _FINDER_COLUMN_N_T_TITLE_3 = "(wikiPage.title IS NULL OR lower(wikiPage.title) = lower(?))";
7306 private static final String _FINDER_COLUMN_N_H_NODEID_2 = "wikiPage.nodeId = ? AND ";
7307 private static final String _FINDER_COLUMN_N_H_HEAD_2 = "wikiPage.head = ?";
7308 private static final String _FINDER_COLUMN_N_P_NODEID_2 = "wikiPage.nodeId = ? AND ";
7309 private static final String _FINDER_COLUMN_N_P_PARENTTITLE_1 = "wikiPage.parentTitle IS NULL";
7310 private static final String _FINDER_COLUMN_N_P_PARENTTITLE_2 = "lower(wikiPage.parentTitle) = lower(?)";
7311 private static final String _FINDER_COLUMN_N_P_PARENTTITLE_3 = "(wikiPage.parentTitle IS NULL OR lower(wikiPage.parentTitle) = lower(?))";
7312 private static final String _FINDER_COLUMN_N_R_NODEID_2 = "wikiPage.nodeId = ? AND ";
7313 private static final String _FINDER_COLUMN_N_R_REDIRECTTITLE_1 = "wikiPage.redirectTitle IS NULL";
7314 private static final String _FINDER_COLUMN_N_R_REDIRECTTITLE_2 = "lower(wikiPage.redirectTitle) = lower(?)";
7315 private static final String _FINDER_COLUMN_N_R_REDIRECTTITLE_3 = "(wikiPage.redirectTitle IS NULL OR lower(wikiPage.redirectTitle) = lower(?))";
7316 private static final String _FINDER_COLUMN_N_S_NODEID_2 = "wikiPage.nodeId = ? AND ";
7317 private static final String _FINDER_COLUMN_N_S_STATUS_2 = "wikiPage.status = ?";
7318 private static final String _FINDER_COLUMN_R_N_V_RESOURCEPRIMKEY_2 = "wikiPage.resourcePrimKey = ? AND ";
7319 private static final String _FINDER_COLUMN_R_N_V_NODEID_2 = "wikiPage.nodeId = ? AND ";
7320 private static final String _FINDER_COLUMN_R_N_V_VERSION_2 = "wikiPage.version = ?";
7321 private static final String _FINDER_COLUMN_R_N_S_RESOURCEPRIMKEY_2 = "wikiPage.resourcePrimKey = ? AND ";
7322 private static final String _FINDER_COLUMN_R_N_S_NODEID_2 = "wikiPage.nodeId = ? AND ";
7323 private static final String _FINDER_COLUMN_R_N_S_STATUS_2 = "wikiPage.status = ?";
7324 private static final String _FINDER_COLUMN_U_N_S_USERID_2 = "wikiPage.userId = ? AND ";
7325 private static final String _FINDER_COLUMN_U_N_S_NODEID_2 = "wikiPage.nodeId = ? AND ";
7326 private static final String _FINDER_COLUMN_U_N_S_STATUS_2 = "wikiPage.status = ?";
7327 private static final String _FINDER_COLUMN_N_T_V_NODEID_2 = "wikiPage.nodeId = ? AND ";
7328 private static final String _FINDER_COLUMN_N_T_V_TITLE_1 = "wikiPage.title IS NULL AND ";
7329 private static final String _FINDER_COLUMN_N_T_V_TITLE_2 = "lower(wikiPage.title) = lower(?) AND ";
7330 private static final String _FINDER_COLUMN_N_T_V_TITLE_3 = "(wikiPage.title IS NULL OR lower(wikiPage.title) = lower(?)) AND ";
7331 private static final String _FINDER_COLUMN_N_T_V_VERSION_2 = "wikiPage.version = ?";
7332 private static final String _FINDER_COLUMN_N_T_H_NODEID_2 = "wikiPage.nodeId = ? AND ";
7333 private static final String _FINDER_COLUMN_N_T_H_TITLE_1 = "wikiPage.title IS NULL AND ";
7334 private static final String _FINDER_COLUMN_N_T_H_TITLE_2 = "lower(wikiPage.title) = lower(?) AND ";
7335 private static final String _FINDER_COLUMN_N_T_H_TITLE_3 = "(wikiPage.title IS NULL OR lower(wikiPage.title) = lower(?)) AND ";
7336 private static final String _FINDER_COLUMN_N_T_H_HEAD_2 = "wikiPage.head = ?";
7337 private static final String _FINDER_COLUMN_N_T_S_NODEID_2 = "wikiPage.nodeId = ? AND ";
7338 private static final String _FINDER_COLUMN_N_T_S_TITLE_1 = "wikiPage.title IS NULL AND ";
7339 private static final String _FINDER_COLUMN_N_T_S_TITLE_2 = "lower(wikiPage.title) = lower(?) AND ";
7340 private static final String _FINDER_COLUMN_N_T_S_TITLE_3 = "(wikiPage.title IS NULL OR lower(wikiPage.title) = lower(?)) AND ";
7341 private static final String _FINDER_COLUMN_N_T_S_STATUS_2 = "wikiPage.status = ?";
7342 private static final String _FINDER_COLUMN_N_H_P_NODEID_2 = "wikiPage.nodeId = ? AND ";
7343 private static final String _FINDER_COLUMN_N_H_P_HEAD_2 = "wikiPage.head = ? AND ";
7344 private static final String _FINDER_COLUMN_N_H_P_PARENTTITLE_1 = "wikiPage.parentTitle IS NULL";
7345 private static final String _FINDER_COLUMN_N_H_P_PARENTTITLE_2 = "lower(wikiPage.parentTitle) = lower(?)";
7346 private static final String _FINDER_COLUMN_N_H_P_PARENTTITLE_3 = "(wikiPage.parentTitle IS NULL OR lower(wikiPage.parentTitle) = lower(?))";
7347 private static final String _FINDER_COLUMN_N_H_S_NODEID_2 = "wikiPage.nodeId = ? AND ";
7348 private static final String _FINDER_COLUMN_N_H_S_HEAD_2 = "wikiPage.head = ? AND ";
7349 private static final String _FINDER_COLUMN_N_H_S_STATUS_2 = "wikiPage.status = ?";
7350 private static final String _FINDER_COLUMN_N_H_P_S_NODEID_2 = "wikiPage.nodeId = ? AND ";
7351 private static final String _FINDER_COLUMN_N_H_P_S_HEAD_2 = "wikiPage.head = ? AND ";
7352 private static final String _FINDER_COLUMN_N_H_P_S_PARENTTITLE_1 = "wikiPage.parentTitle IS NULL AND ";
7353 private static final String _FINDER_COLUMN_N_H_P_S_PARENTTITLE_2 = "lower(wikiPage.parentTitle) = lower(?) AND ";
7354 private static final String _FINDER_COLUMN_N_H_P_S_PARENTTITLE_3 = "(wikiPage.parentTitle IS NULL OR lower(wikiPage.parentTitle) = lower(?)) AND ";
7355 private static final String _FINDER_COLUMN_N_H_P_S_STATUS_2 = "wikiPage.status = ?";
7356 private static final String _ORDER_BY_ENTITY_ALIAS = "wikiPage.";
7357 private static final String _NO_SUCH_ENTITY_WITH_PRIMARY_KEY = "No WikiPage exists with the primary key ";
7358 private static final String _NO_SUCH_ENTITY_WITH_KEY = "No WikiPage exists with the key {";
7359 private static Log _log = LogFactoryUtil.getLog(WikiPagePersistenceImpl.class);
7360 }