1   /**
2    * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
3    *
4    * This library is free software; you can redistribute it and/or modify it under
5    * the terms of the GNU Lesser General Public License as published by the Free
6    * Software Foundation; either version 2.1 of the License, or (at your option)
7    * any later version.
8    *
9    * This library is distributed in the hope that it will be useful, but WITHOUT
10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11   * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12   * details.
13   */
14  
15  package com.liferay.portal.service.persistence;
16  
17  import com.liferay.portal.NoSuchEmailAddressException;
18  import com.liferay.portal.NoSuchModelException;
19  import com.liferay.portal.kernel.annotation.BeanReference;
20  import com.liferay.portal.kernel.cache.CacheRegistry;
21  import com.liferay.portal.kernel.dao.orm.DynamicQuery;
22  import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
23  import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
24  import com.liferay.portal.kernel.dao.orm.FinderPath;
25  import com.liferay.portal.kernel.dao.orm.Query;
26  import com.liferay.portal.kernel.dao.orm.QueryPos;
27  import com.liferay.portal.kernel.dao.orm.QueryUtil;
28  import com.liferay.portal.kernel.dao.orm.Session;
29  import com.liferay.portal.kernel.exception.SystemException;
30  import com.liferay.portal.kernel.log.Log;
31  import com.liferay.portal.kernel.log.LogFactoryUtil;
32  import com.liferay.portal.kernel.util.GetterUtil;
33  import com.liferay.portal.kernel.util.OrderByComparator;
34  import com.liferay.portal.kernel.util.StringBundler;
35  import com.liferay.portal.kernel.util.StringPool;
36  import com.liferay.portal.kernel.util.StringUtil;
37  import com.liferay.portal.model.EmailAddress;
38  import com.liferay.portal.model.ModelListener;
39  import com.liferay.portal.model.impl.EmailAddressImpl;
40  import com.liferay.portal.model.impl.EmailAddressModelImpl;
41  import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
42  
43  import java.io.Serializable;
44  
45  import java.util.ArrayList;
46  import java.util.Collections;
47  import java.util.List;
48  
49  /**
50   * <a href="EmailAddressPersistenceImpl.java.html"><b><i>View Source</i></b></a>
51   *
52   * <p>
53   * ServiceBuilder generated this class. Modifications in this class will be
54   * overwritten the next time is generated.
55   * </p>
56   *
57   * @author    Brian Wing Shun Chan
58   * @see       EmailAddressPersistence
59   * @see       EmailAddressUtil
60   * @generated
61   */
62  public class EmailAddressPersistenceImpl extends BasePersistenceImpl<EmailAddress>
63      implements EmailAddressPersistence {
64      public static final String FINDER_CLASS_NAME_ENTITY = EmailAddressImpl.class.getName();
65      public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
66          ".List";
67      public static final FinderPath FINDER_PATH_FIND_BY_COMPANYID = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
68              EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
69              "findByCompanyId", new String[] { Long.class.getName() });
70      public static final FinderPath FINDER_PATH_FIND_BY_OBC_COMPANYID = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
71              EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
72              "findByCompanyId",
73              new String[] {
74                  Long.class.getName(),
75                  
76              "java.lang.Integer", "java.lang.Integer",
77                  "com.liferay.portal.kernel.util.OrderByComparator"
78              });
79      public static final FinderPath FINDER_PATH_COUNT_BY_COMPANYID = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
80              EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
81              "countByCompanyId", new String[] { Long.class.getName() });
82      public static final FinderPath FINDER_PATH_FIND_BY_USERID = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
83              EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
84              "findByUserId", new String[] { Long.class.getName() });
85      public static final FinderPath FINDER_PATH_FIND_BY_OBC_USERID = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
86              EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
87              "findByUserId",
88              new String[] {
89                  Long.class.getName(),
90                  
91              "java.lang.Integer", "java.lang.Integer",
92                  "com.liferay.portal.kernel.util.OrderByComparator"
93              });
94      public static final FinderPath FINDER_PATH_COUNT_BY_USERID = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
95              EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
96              "countByUserId", new String[] { Long.class.getName() });
97      public static final FinderPath FINDER_PATH_FIND_BY_C_C = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
98              EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
99              "findByC_C",
100             new String[] { Long.class.getName(), Long.class.getName() });
101     public static final FinderPath FINDER_PATH_FIND_BY_OBC_C_C = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
102             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
103             "findByC_C",
104             new String[] {
105                 Long.class.getName(), Long.class.getName(),
106                 
107             "java.lang.Integer", "java.lang.Integer",
108                 "com.liferay.portal.kernel.util.OrderByComparator"
109             });
110     public static final FinderPath FINDER_PATH_COUNT_BY_C_C = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
111             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
112             "countByC_C",
113             new String[] { Long.class.getName(), Long.class.getName() });
114     public static final FinderPath FINDER_PATH_FIND_BY_C_C_C = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
115             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
116             "findByC_C_C",
117             new String[] {
118                 Long.class.getName(), Long.class.getName(), Long.class.getName()
119             });
120     public static final FinderPath FINDER_PATH_FIND_BY_OBC_C_C_C = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
121             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
122             "findByC_C_C",
123             new String[] {
124                 Long.class.getName(), Long.class.getName(), Long.class.getName(),
125                 
126             "java.lang.Integer", "java.lang.Integer",
127                 "com.liferay.portal.kernel.util.OrderByComparator"
128             });
129     public static final FinderPath FINDER_PATH_COUNT_BY_C_C_C = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
130             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
131             "countByC_C_C",
132             new String[] {
133                 Long.class.getName(), Long.class.getName(), Long.class.getName()
134             });
135     public static final FinderPath FINDER_PATH_FIND_BY_C_C_C_P = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
136             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
137             "findByC_C_C_P",
138             new String[] {
139                 Long.class.getName(), Long.class.getName(), Long.class.getName(),
140                 Boolean.class.getName()
141             });
142     public static final FinderPath FINDER_PATH_FIND_BY_OBC_C_C_C_P = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
143             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
144             "findByC_C_C_P",
145             new String[] {
146                 Long.class.getName(), Long.class.getName(), Long.class.getName(),
147                 Boolean.class.getName(),
148                 
149             "java.lang.Integer", "java.lang.Integer",
150                 "com.liferay.portal.kernel.util.OrderByComparator"
151             });
152     public static final FinderPath FINDER_PATH_COUNT_BY_C_C_C_P = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
153             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
154             "countByC_C_C_P",
155             new String[] {
156                 Long.class.getName(), Long.class.getName(), Long.class.getName(),
157                 Boolean.class.getName()
158             });
159     public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
160             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
161             "findAll", new String[0]);
162     public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
163             EmailAddressModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
164             "countAll", new String[0]);
165 
166     public void cacheResult(EmailAddress emailAddress) {
167         EntityCacheUtil.putResult(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
168             EmailAddressImpl.class, emailAddress.getPrimaryKey(), emailAddress);
169     }
170 
171     public void cacheResult(List<EmailAddress> emailAddresses) {
172         for (EmailAddress emailAddress : emailAddresses) {
173             if (EntityCacheUtil.getResult(
174                         EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
175                         EmailAddressImpl.class, emailAddress.getPrimaryKey(),
176                         this) == null) {
177                 cacheResult(emailAddress);
178             }
179         }
180     }
181 
182     public void clearCache() {
183         CacheRegistry.clear(EmailAddressImpl.class.getName());
184         EntityCacheUtil.clearCache(EmailAddressImpl.class.getName());
185         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
186         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
187     }
188 
189     public EmailAddress create(long emailAddressId) {
190         EmailAddress emailAddress = new EmailAddressImpl();
191 
192         emailAddress.setNew(true);
193         emailAddress.setPrimaryKey(emailAddressId);
194 
195         return emailAddress;
196     }
197 
198     public EmailAddress remove(Serializable primaryKey)
199         throws NoSuchModelException, SystemException {
200         return remove(((Long)primaryKey).longValue());
201     }
202 
203     public EmailAddress remove(long emailAddressId)
204         throws NoSuchEmailAddressException, SystemException {
205         Session session = null;
206 
207         try {
208             session = openSession();
209 
210             EmailAddress emailAddress = (EmailAddress)session.get(EmailAddressImpl.class,
211                     new Long(emailAddressId));
212 
213             if (emailAddress == null) {
214                 if (_log.isWarnEnabled()) {
215                     _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
216                         emailAddressId);
217                 }
218 
219                 throw new NoSuchEmailAddressException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
220                     emailAddressId);
221             }
222 
223             return remove(emailAddress);
224         }
225         catch (NoSuchEmailAddressException nsee) {
226             throw nsee;
227         }
228         catch (Exception e) {
229             throw processException(e);
230         }
231         finally {
232             closeSession(session);
233         }
234     }
235 
236     public EmailAddress remove(EmailAddress emailAddress)
237         throws SystemException {
238         for (ModelListener<EmailAddress> listener : listeners) {
239             listener.onBeforeRemove(emailAddress);
240         }
241 
242         emailAddress = removeImpl(emailAddress);
243 
244         for (ModelListener<EmailAddress> listener : listeners) {
245             listener.onAfterRemove(emailAddress);
246         }
247 
248         return emailAddress;
249     }
250 
251     protected EmailAddress removeImpl(EmailAddress emailAddress)
252         throws SystemException {
253         emailAddress = toUnwrappedModel(emailAddress);
254 
255         Session session = null;
256 
257         try {
258             session = openSession();
259 
260             if (emailAddress.isCachedModel() || BatchSessionUtil.isEnabled()) {
261                 Object staleObject = session.get(EmailAddressImpl.class,
262                         emailAddress.getPrimaryKeyObj());
263 
264                 if (staleObject != null) {
265                     session.evict(staleObject);
266                 }
267             }
268 
269             session.delete(emailAddress);
270 
271             session.flush();
272         }
273         catch (Exception e) {
274             throw processException(e);
275         }
276         finally {
277             closeSession(session);
278         }
279 
280         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
281 
282         EntityCacheUtil.removeResult(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
283             EmailAddressImpl.class, emailAddress.getPrimaryKey());
284 
285         return emailAddress;
286     }
287 
288     public EmailAddress updateImpl(
289         com.liferay.portal.model.EmailAddress emailAddress, boolean merge)
290         throws SystemException {
291         emailAddress = toUnwrappedModel(emailAddress);
292 
293         Session session = null;
294 
295         try {
296             session = openSession();
297 
298             BatchSessionUtil.update(session, emailAddress, merge);
299 
300             emailAddress.setNew(false);
301         }
302         catch (Exception e) {
303             throw processException(e);
304         }
305         finally {
306             closeSession(session);
307         }
308 
309         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
310 
311         EntityCacheUtil.putResult(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
312             EmailAddressImpl.class, emailAddress.getPrimaryKey(), emailAddress);
313 
314         return emailAddress;
315     }
316 
317     protected EmailAddress toUnwrappedModel(EmailAddress emailAddress) {
318         if (emailAddress instanceof EmailAddressImpl) {
319             return emailAddress;
320         }
321 
322         EmailAddressImpl emailAddressImpl = new EmailAddressImpl();
323 
324         emailAddressImpl.setNew(emailAddress.isNew());
325         emailAddressImpl.setPrimaryKey(emailAddress.getPrimaryKey());
326 
327         emailAddressImpl.setEmailAddressId(emailAddress.getEmailAddressId());
328         emailAddressImpl.setCompanyId(emailAddress.getCompanyId());
329         emailAddressImpl.setUserId(emailAddress.getUserId());
330         emailAddressImpl.setUserName(emailAddress.getUserName());
331         emailAddressImpl.setCreateDate(emailAddress.getCreateDate());
332         emailAddressImpl.setModifiedDate(emailAddress.getModifiedDate());
333         emailAddressImpl.setClassNameId(emailAddress.getClassNameId());
334         emailAddressImpl.setClassPK(emailAddress.getClassPK());
335         emailAddressImpl.setAddress(emailAddress.getAddress());
336         emailAddressImpl.setTypeId(emailAddress.getTypeId());
337         emailAddressImpl.setPrimary(emailAddress.isPrimary());
338 
339         return emailAddressImpl;
340     }
341 
342     public EmailAddress findByPrimaryKey(Serializable primaryKey)
343         throws NoSuchModelException, SystemException {
344         return findByPrimaryKey(((Long)primaryKey).longValue());
345     }
346 
347     public EmailAddress findByPrimaryKey(long emailAddressId)
348         throws NoSuchEmailAddressException, SystemException {
349         EmailAddress emailAddress = fetchByPrimaryKey(emailAddressId);
350 
351         if (emailAddress == null) {
352             if (_log.isWarnEnabled()) {
353                 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + emailAddressId);
354             }
355 
356             throw new NoSuchEmailAddressException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
357                 emailAddressId);
358         }
359 
360         return emailAddress;
361     }
362 
363     public EmailAddress fetchByPrimaryKey(Serializable primaryKey)
364         throws SystemException {
365         return fetchByPrimaryKey(((Long)primaryKey).longValue());
366     }
367 
368     public EmailAddress fetchByPrimaryKey(long emailAddressId)
369         throws SystemException {
370         EmailAddress emailAddress = (EmailAddress)EntityCacheUtil.getResult(EmailAddressModelImpl.ENTITY_CACHE_ENABLED,
371                 EmailAddressImpl.class, emailAddressId, this);
372 
373         if (emailAddress == null) {
374             Session session = null;
375 
376             try {
377                 session = openSession();
378 
379                 emailAddress = (EmailAddress)session.get(EmailAddressImpl.class,
380                         new Long(emailAddressId));
381             }
382             catch (Exception e) {
383                 throw processException(e);
384             }
385             finally {
386                 if (emailAddress != null) {
387                     cacheResult(emailAddress);
388                 }
389 
390                 closeSession(session);
391             }
392         }
393 
394         return emailAddress;
395     }
396 
397     public List<EmailAddress> findByCompanyId(long companyId)
398         throws SystemException {
399         Object[] finderArgs = new Object[] { new Long(companyId) };
400 
401         List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_COMPANYID,
402                 finderArgs, this);
403 
404         if (list == null) {
405             Session session = null;
406 
407             try {
408                 session = openSession();
409 
410                 StringBundler query = new StringBundler(3);
411 
412                 query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
413 
414                 query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
415 
416                 query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
417 
418                 String sql = query.toString();
419 
420                 Query q = session.createQuery(sql);
421 
422                 QueryPos qPos = QueryPos.getInstance(q);
423 
424                 qPos.add(companyId);
425 
426                 list = q.list();
427             }
428             catch (Exception e) {
429                 throw processException(e);
430             }
431             finally {
432                 if (list == null) {
433                     list = new ArrayList<EmailAddress>();
434                 }
435 
436                 cacheResult(list);
437 
438                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_COMPANYID,
439                     finderArgs, list);
440 
441                 closeSession(session);
442             }
443         }
444 
445         return list;
446     }
447 
448     public List<EmailAddress> findByCompanyId(long companyId, int start, int end)
449         throws SystemException {
450         return findByCompanyId(companyId, start, end, null);
451     }
452 
453     public List<EmailAddress> findByCompanyId(long companyId, int start,
454         int end, OrderByComparator obc) throws SystemException {
455         Object[] finderArgs = new Object[] {
456                 new Long(companyId),
457                 
458                 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
459             };
460 
461         List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_COMPANYID,
462                 finderArgs, this);
463 
464         if (list == null) {
465             Session session = null;
466 
467             try {
468                 session = openSession();
469 
470                 StringBundler query = null;
471 
472                 if (obc != null) {
473                     query = new StringBundler(3 +
474                             (obc.getOrderByFields().length * 3));
475                 }
476                 else {
477                     query = new StringBundler(3);
478                 }
479 
480                 query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
481 
482                 query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
483 
484                 if (obc != null) {
485                     appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
486                 }
487 
488                 else {
489                     query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
490                 }
491 
492                 String sql = query.toString();
493 
494                 Query q = session.createQuery(sql);
495 
496                 QueryPos qPos = QueryPos.getInstance(q);
497 
498                 qPos.add(companyId);
499 
500                 list = (List<EmailAddress>)QueryUtil.list(q, getDialect(),
501                         start, end);
502             }
503             catch (Exception e) {
504                 throw processException(e);
505             }
506             finally {
507                 if (list == null) {
508                     list = new ArrayList<EmailAddress>();
509                 }
510 
511                 cacheResult(list);
512 
513                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_COMPANYID,
514                     finderArgs, list);
515 
516                 closeSession(session);
517             }
518         }
519 
520         return list;
521     }
522 
523     public EmailAddress findByCompanyId_First(long companyId,
524         OrderByComparator obc)
525         throws NoSuchEmailAddressException, SystemException {
526         List<EmailAddress> list = findByCompanyId(companyId, 0, 1, obc);
527 
528         if (list.isEmpty()) {
529             StringBundler msg = new StringBundler(4);
530 
531             msg.append(_NO_SUCH_ENTITY_WITH_KEY);
532 
533             msg.append("companyId=");
534             msg.append(companyId);
535 
536             msg.append(StringPool.CLOSE_CURLY_BRACE);
537 
538             throw new NoSuchEmailAddressException(msg.toString());
539         }
540         else {
541             return list.get(0);
542         }
543     }
544 
545     public EmailAddress findByCompanyId_Last(long companyId,
546         OrderByComparator obc)
547         throws NoSuchEmailAddressException, SystemException {
548         int count = countByCompanyId(companyId);
549 
550         List<EmailAddress> list = findByCompanyId(companyId, count - 1, count,
551                 obc);
552 
553         if (list.isEmpty()) {
554             StringBundler msg = new StringBundler(4);
555 
556             msg.append(_NO_SUCH_ENTITY_WITH_KEY);
557 
558             msg.append("companyId=");
559             msg.append(companyId);
560 
561             msg.append(StringPool.CLOSE_CURLY_BRACE);
562 
563             throw new NoSuchEmailAddressException(msg.toString());
564         }
565         else {
566             return list.get(0);
567         }
568     }
569 
570     public EmailAddress[] findByCompanyId_PrevAndNext(long emailAddressId,
571         long companyId, OrderByComparator obc)
572         throws NoSuchEmailAddressException, SystemException {
573         EmailAddress emailAddress = findByPrimaryKey(emailAddressId);
574 
575         int count = countByCompanyId(companyId);
576 
577         Session session = null;
578 
579         try {
580             session = openSession();
581 
582             StringBundler query = null;
583 
584             if (obc != null) {
585                 query = new StringBundler(3 +
586                         (obc.getOrderByFields().length * 3));
587             }
588             else {
589                 query = new StringBundler(3);
590             }
591 
592             query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
593 
594             query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
595 
596             if (obc != null) {
597                 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
598             }
599 
600             else {
601                 query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
602             }
603 
604             String sql = query.toString();
605 
606             Query q = session.createQuery(sql);
607 
608             QueryPos qPos = QueryPos.getInstance(q);
609 
610             qPos.add(companyId);
611 
612             Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
613                     emailAddress);
614 
615             EmailAddress[] array = new EmailAddressImpl[3];
616 
617             array[0] = (EmailAddress)objArray[0];
618             array[1] = (EmailAddress)objArray[1];
619             array[2] = (EmailAddress)objArray[2];
620 
621             return array;
622         }
623         catch (Exception e) {
624             throw processException(e);
625         }
626         finally {
627             closeSession(session);
628         }
629     }
630 
631     public List<EmailAddress> findByUserId(long userId)
632         throws SystemException {
633         Object[] finderArgs = new Object[] { new Long(userId) };
634 
635         List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_USERID,
636                 finderArgs, this);
637 
638         if (list == null) {
639             Session session = null;
640 
641             try {
642                 session = openSession();
643 
644                 StringBundler query = new StringBundler(3);
645 
646                 query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
647 
648                 query.append(_FINDER_COLUMN_USERID_USERID_2);
649 
650                 query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
651 
652                 String sql = query.toString();
653 
654                 Query q = session.createQuery(sql);
655 
656                 QueryPos qPos = QueryPos.getInstance(q);
657 
658                 qPos.add(userId);
659 
660                 list = q.list();
661             }
662             catch (Exception e) {
663                 throw processException(e);
664             }
665             finally {
666                 if (list == null) {
667                     list = new ArrayList<EmailAddress>();
668                 }
669 
670                 cacheResult(list);
671 
672                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_USERID,
673                     finderArgs, list);
674 
675                 closeSession(session);
676             }
677         }
678 
679         return list;
680     }
681 
682     public List<EmailAddress> findByUserId(long userId, int start, int end)
683         throws SystemException {
684         return findByUserId(userId, start, end, null);
685     }
686 
687     public List<EmailAddress> findByUserId(long userId, int start, int end,
688         OrderByComparator obc) throws SystemException {
689         Object[] finderArgs = new Object[] {
690                 new Long(userId),
691                 
692                 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
693             };
694 
695         List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_USERID,
696                 finderArgs, this);
697 
698         if (list == null) {
699             Session session = null;
700 
701             try {
702                 session = openSession();
703 
704                 StringBundler query = null;
705 
706                 if (obc != null) {
707                     query = new StringBundler(3 +
708                             (obc.getOrderByFields().length * 3));
709                 }
710                 else {
711                     query = new StringBundler(3);
712                 }
713 
714                 query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
715 
716                 query.append(_FINDER_COLUMN_USERID_USERID_2);
717 
718                 if (obc != null) {
719                     appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
720                 }
721 
722                 else {
723                     query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
724                 }
725 
726                 String sql = query.toString();
727 
728                 Query q = session.createQuery(sql);
729 
730                 QueryPos qPos = QueryPos.getInstance(q);
731 
732                 qPos.add(userId);
733 
734                 list = (List<EmailAddress>)QueryUtil.list(q, getDialect(),
735                         start, end);
736             }
737             catch (Exception e) {
738                 throw processException(e);
739             }
740             finally {
741                 if (list == null) {
742                     list = new ArrayList<EmailAddress>();
743                 }
744 
745                 cacheResult(list);
746 
747                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_USERID,
748                     finderArgs, list);
749 
750                 closeSession(session);
751             }
752         }
753 
754         return list;
755     }
756 
757     public EmailAddress findByUserId_First(long userId, OrderByComparator obc)
758         throws NoSuchEmailAddressException, SystemException {
759         List<EmailAddress> list = findByUserId(userId, 0, 1, obc);
760 
761         if (list.isEmpty()) {
762             StringBundler msg = new StringBundler(4);
763 
764             msg.append(_NO_SUCH_ENTITY_WITH_KEY);
765 
766             msg.append("userId=");
767             msg.append(userId);
768 
769             msg.append(StringPool.CLOSE_CURLY_BRACE);
770 
771             throw new NoSuchEmailAddressException(msg.toString());
772         }
773         else {
774             return list.get(0);
775         }
776     }
777 
778     public EmailAddress findByUserId_Last(long userId, OrderByComparator obc)
779         throws NoSuchEmailAddressException, SystemException {
780         int count = countByUserId(userId);
781 
782         List<EmailAddress> list = findByUserId(userId, count - 1, count, obc);
783 
784         if (list.isEmpty()) {
785             StringBundler msg = new StringBundler(4);
786 
787             msg.append(_NO_SUCH_ENTITY_WITH_KEY);
788 
789             msg.append("userId=");
790             msg.append(userId);
791 
792             msg.append(StringPool.CLOSE_CURLY_BRACE);
793 
794             throw new NoSuchEmailAddressException(msg.toString());
795         }
796         else {
797             return list.get(0);
798         }
799     }
800 
801     public EmailAddress[] findByUserId_PrevAndNext(long emailAddressId,
802         long userId, OrderByComparator obc)
803         throws NoSuchEmailAddressException, SystemException {
804         EmailAddress emailAddress = findByPrimaryKey(emailAddressId);
805 
806         int count = countByUserId(userId);
807 
808         Session session = null;
809 
810         try {
811             session = openSession();
812 
813             StringBundler query = null;
814 
815             if (obc != null) {
816                 query = new StringBundler(3 +
817                         (obc.getOrderByFields().length * 3));
818             }
819             else {
820                 query = new StringBundler(3);
821             }
822 
823             query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
824 
825             query.append(_FINDER_COLUMN_USERID_USERID_2);
826 
827             if (obc != null) {
828                 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
829             }
830 
831             else {
832                 query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
833             }
834 
835             String sql = query.toString();
836 
837             Query q = session.createQuery(sql);
838 
839             QueryPos qPos = QueryPos.getInstance(q);
840 
841             qPos.add(userId);
842 
843             Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
844                     emailAddress);
845 
846             EmailAddress[] array = new EmailAddressImpl[3];
847 
848             array[0] = (EmailAddress)objArray[0];
849             array[1] = (EmailAddress)objArray[1];
850             array[2] = (EmailAddress)objArray[2];
851 
852             return array;
853         }
854         catch (Exception e) {
855             throw processException(e);
856         }
857         finally {
858             closeSession(session);
859         }
860     }
861 
862     public List<EmailAddress> findByC_C(long companyId, long classNameId)
863         throws SystemException {
864         Object[] finderArgs = new Object[] {
865                 new Long(companyId), new Long(classNameId)
866             };
867 
868         List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_C_C,
869                 finderArgs, this);
870 
871         if (list == null) {
872             Session session = null;
873 
874             try {
875                 session = openSession();
876 
877                 StringBundler query = new StringBundler(4);
878 
879                 query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
880 
881                 query.append(_FINDER_COLUMN_C_C_COMPANYID_2);
882 
883                 query.append(_FINDER_COLUMN_C_C_CLASSNAMEID_2);
884 
885                 query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
886 
887                 String sql = query.toString();
888 
889                 Query q = session.createQuery(sql);
890 
891                 QueryPos qPos = QueryPos.getInstance(q);
892 
893                 qPos.add(companyId);
894 
895                 qPos.add(classNameId);
896 
897                 list = q.list();
898             }
899             catch (Exception e) {
900                 throw processException(e);
901             }
902             finally {
903                 if (list == null) {
904                     list = new ArrayList<EmailAddress>();
905                 }
906 
907                 cacheResult(list);
908 
909                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_C_C, finderArgs,
910                     list);
911 
912                 closeSession(session);
913             }
914         }
915 
916         return list;
917     }
918 
919     public List<EmailAddress> findByC_C(long companyId, long classNameId,
920         int start, int end) throws SystemException {
921         return findByC_C(companyId, classNameId, start, end, null);
922     }
923 
924     public List<EmailAddress> findByC_C(long companyId, long classNameId,
925         int start, int end, OrderByComparator obc) throws SystemException {
926         Object[] finderArgs = new Object[] {
927                 new Long(companyId), new Long(classNameId),
928                 
929                 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
930             };
931 
932         List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_C_C,
933                 finderArgs, this);
934 
935         if (list == null) {
936             Session session = null;
937 
938             try {
939                 session = openSession();
940 
941                 StringBundler query = null;
942 
943                 if (obc != null) {
944                     query = new StringBundler(4 +
945                             (obc.getOrderByFields().length * 3));
946                 }
947                 else {
948                     query = new StringBundler(4);
949                 }
950 
951                 query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
952 
953                 query.append(_FINDER_COLUMN_C_C_COMPANYID_2);
954 
955                 query.append(_FINDER_COLUMN_C_C_CLASSNAMEID_2);
956 
957                 if (obc != null) {
958                     appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
959                 }
960 
961                 else {
962                     query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
963                 }
964 
965                 String sql = query.toString();
966 
967                 Query q = session.createQuery(sql);
968 
969                 QueryPos qPos = QueryPos.getInstance(q);
970 
971                 qPos.add(companyId);
972 
973                 qPos.add(classNameId);
974 
975                 list = (List<EmailAddress>)QueryUtil.list(q, getDialect(),
976                         start, end);
977             }
978             catch (Exception e) {
979                 throw processException(e);
980             }
981             finally {
982                 if (list == null) {
983                     list = new ArrayList<EmailAddress>();
984                 }
985 
986                 cacheResult(list);
987 
988                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_C_C,
989                     finderArgs, list);
990 
991                 closeSession(session);
992             }
993         }
994 
995         return list;
996     }
997 
998     public EmailAddress findByC_C_First(long companyId, long classNameId,
999         OrderByComparator obc)
1000        throws NoSuchEmailAddressException, SystemException {
1001        List<EmailAddress> list = findByC_C(companyId, classNameId, 0, 1, obc);
1002
1003        if (list.isEmpty()) {
1004            StringBundler msg = new StringBundler(6);
1005
1006            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1007
1008            msg.append("companyId=");
1009            msg.append(companyId);
1010
1011            msg.append(", classNameId=");
1012            msg.append(classNameId);
1013
1014            msg.append(StringPool.CLOSE_CURLY_BRACE);
1015
1016            throw new NoSuchEmailAddressException(msg.toString());
1017        }
1018        else {
1019            return list.get(0);
1020        }
1021    }
1022
1023    public EmailAddress findByC_C_Last(long companyId, long classNameId,
1024        OrderByComparator obc)
1025        throws NoSuchEmailAddressException, SystemException {
1026        int count = countByC_C(companyId, classNameId);
1027
1028        List<EmailAddress> list = findByC_C(companyId, classNameId, count - 1,
1029                count, obc);
1030
1031        if (list.isEmpty()) {
1032            StringBundler msg = new StringBundler(6);
1033
1034            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1035
1036            msg.append("companyId=");
1037            msg.append(companyId);
1038
1039            msg.append(", classNameId=");
1040            msg.append(classNameId);
1041
1042            msg.append(StringPool.CLOSE_CURLY_BRACE);
1043
1044            throw new NoSuchEmailAddressException(msg.toString());
1045        }
1046        else {
1047            return list.get(0);
1048        }
1049    }
1050
1051    public EmailAddress[] findByC_C_PrevAndNext(long emailAddressId,
1052        long companyId, long classNameId, OrderByComparator obc)
1053        throws NoSuchEmailAddressException, SystemException {
1054        EmailAddress emailAddress = findByPrimaryKey(emailAddressId);
1055
1056        int count = countByC_C(companyId, classNameId);
1057
1058        Session session = null;
1059
1060        try {
1061            session = openSession();
1062
1063            StringBundler query = null;
1064
1065            if (obc != null) {
1066                query = new StringBundler(4 +
1067                        (obc.getOrderByFields().length * 3));
1068            }
1069            else {
1070                query = new StringBundler(4);
1071            }
1072
1073            query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
1074
1075            query.append(_FINDER_COLUMN_C_C_COMPANYID_2);
1076
1077            query.append(_FINDER_COLUMN_C_C_CLASSNAMEID_2);
1078
1079            if (obc != null) {
1080                appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
1081            }
1082
1083            else {
1084                query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
1085            }
1086
1087            String sql = query.toString();
1088
1089            Query q = session.createQuery(sql);
1090
1091            QueryPos qPos = QueryPos.getInstance(q);
1092
1093            qPos.add(companyId);
1094
1095            qPos.add(classNameId);
1096
1097            Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
1098                    emailAddress);
1099
1100            EmailAddress[] array = new EmailAddressImpl[3];
1101
1102            array[0] = (EmailAddress)objArray[0];
1103            array[1] = (EmailAddress)objArray[1];
1104            array[2] = (EmailAddress)objArray[2];
1105
1106            return array;
1107        }
1108        catch (Exception e) {
1109            throw processException(e);
1110        }
1111        finally {
1112            closeSession(session);
1113        }
1114    }
1115
1116    public List<EmailAddress> findByC_C_C(long companyId, long classNameId,
1117        long classPK) throws SystemException {
1118        Object[] finderArgs = new Object[] {
1119                new Long(companyId), new Long(classNameId), new Long(classPK)
1120            };
1121
1122        List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_C_C_C,
1123                finderArgs, this);
1124
1125        if (list == null) {
1126            Session session = null;
1127
1128            try {
1129                session = openSession();
1130
1131                StringBundler query = new StringBundler(5);
1132
1133                query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
1134
1135                query.append(_FINDER_COLUMN_C_C_C_COMPANYID_2);
1136
1137                query.append(_FINDER_COLUMN_C_C_C_CLASSNAMEID_2);
1138
1139                query.append(_FINDER_COLUMN_C_C_C_CLASSPK_2);
1140
1141                query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
1142
1143                String sql = query.toString();
1144
1145                Query q = session.createQuery(sql);
1146
1147                QueryPos qPos = QueryPos.getInstance(q);
1148
1149                qPos.add(companyId);
1150
1151                qPos.add(classNameId);
1152
1153                qPos.add(classPK);
1154
1155                list = q.list();
1156            }
1157            catch (Exception e) {
1158                throw processException(e);
1159            }
1160            finally {
1161                if (list == null) {
1162                    list = new ArrayList<EmailAddress>();
1163                }
1164
1165                cacheResult(list);
1166
1167                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_C_C_C,
1168                    finderArgs, list);
1169
1170                closeSession(session);
1171            }
1172        }
1173
1174        return list;
1175    }
1176
1177    public List<EmailAddress> findByC_C_C(long companyId, long classNameId,
1178        long classPK, int start, int end) throws SystemException {
1179        return findByC_C_C(companyId, classNameId, classPK, start, end, null);
1180    }
1181
1182    public List<EmailAddress> findByC_C_C(long companyId, long classNameId,
1183        long classPK, int start, int end, OrderByComparator obc)
1184        throws SystemException {
1185        Object[] finderArgs = new Object[] {
1186                new Long(companyId), new Long(classNameId), new Long(classPK),
1187                
1188                String.valueOf(start), String.valueOf(end), String.valueOf(obc)
1189            };
1190
1191        List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_C_C_C,
1192                finderArgs, this);
1193
1194        if (list == null) {
1195            Session session = null;
1196
1197            try {
1198                session = openSession();
1199
1200                StringBundler query = null;
1201
1202                if (obc != null) {
1203                    query = new StringBundler(5 +
1204                            (obc.getOrderByFields().length * 3));
1205                }
1206                else {
1207                    query = new StringBundler(5);
1208                }
1209
1210                query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
1211
1212                query.append(_FINDER_COLUMN_C_C_C_COMPANYID_2);
1213
1214                query.append(_FINDER_COLUMN_C_C_C_CLASSNAMEID_2);
1215
1216                query.append(_FINDER_COLUMN_C_C_C_CLASSPK_2);
1217
1218                if (obc != null) {
1219                    appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
1220                }
1221
1222                else {
1223                    query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
1224                }
1225
1226                String sql = query.toString();
1227
1228                Query q = session.createQuery(sql);
1229
1230                QueryPos qPos = QueryPos.getInstance(q);
1231
1232                qPos.add(companyId);
1233
1234                qPos.add(classNameId);
1235
1236                qPos.add(classPK);
1237
1238                list = (List<EmailAddress>)QueryUtil.list(q, getDialect(),
1239                        start, end);
1240            }
1241            catch (Exception e) {
1242                throw processException(e);
1243            }
1244            finally {
1245                if (list == null) {
1246                    list = new ArrayList<EmailAddress>();
1247                }
1248
1249                cacheResult(list);
1250
1251                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_C_C_C,
1252                    finderArgs, list);
1253
1254                closeSession(session);
1255            }
1256        }
1257
1258        return list;
1259    }
1260
1261    public EmailAddress findByC_C_C_First(long companyId, long classNameId,
1262        long classPK, OrderByComparator obc)
1263        throws NoSuchEmailAddressException, SystemException {
1264        List<EmailAddress> list = findByC_C_C(companyId, classNameId, classPK,
1265                0, 1, obc);
1266
1267        if (list.isEmpty()) {
1268            StringBundler msg = new StringBundler(8);
1269
1270            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1271
1272            msg.append("companyId=");
1273            msg.append(companyId);
1274
1275            msg.append(", classNameId=");
1276            msg.append(classNameId);
1277
1278            msg.append(", classPK=");
1279            msg.append(classPK);
1280
1281            msg.append(StringPool.CLOSE_CURLY_BRACE);
1282
1283            throw new NoSuchEmailAddressException(msg.toString());
1284        }
1285        else {
1286            return list.get(0);
1287        }
1288    }
1289
1290    public EmailAddress findByC_C_C_Last(long companyId, long classNameId,
1291        long classPK, OrderByComparator obc)
1292        throws NoSuchEmailAddressException, SystemException {
1293        int count = countByC_C_C(companyId, classNameId, classPK);
1294
1295        List<EmailAddress> list = findByC_C_C(companyId, classNameId, classPK,
1296                count - 1, count, obc);
1297
1298        if (list.isEmpty()) {
1299            StringBundler msg = new StringBundler(8);
1300
1301            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1302
1303            msg.append("companyId=");
1304            msg.append(companyId);
1305
1306            msg.append(", classNameId=");
1307            msg.append(classNameId);
1308
1309            msg.append(", classPK=");
1310            msg.append(classPK);
1311
1312            msg.append(StringPool.CLOSE_CURLY_BRACE);
1313
1314            throw new NoSuchEmailAddressException(msg.toString());
1315        }
1316        else {
1317            return list.get(0);
1318        }
1319    }
1320
1321    public EmailAddress[] findByC_C_C_PrevAndNext(long emailAddressId,
1322        long companyId, long classNameId, long classPK, OrderByComparator obc)
1323        throws NoSuchEmailAddressException, SystemException {
1324        EmailAddress emailAddress = findByPrimaryKey(emailAddressId);
1325
1326        int count = countByC_C_C(companyId, classNameId, classPK);
1327
1328        Session session = null;
1329
1330        try {
1331            session = openSession();
1332
1333            StringBundler query = null;
1334
1335            if (obc != null) {
1336                query = new StringBundler(5 +
1337                        (obc.getOrderByFields().length * 3));
1338            }
1339            else {
1340                query = new StringBundler(5);
1341            }
1342
1343            query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
1344
1345            query.append(_FINDER_COLUMN_C_C_C_COMPANYID_2);
1346
1347            query.append(_FINDER_COLUMN_C_C_C_CLASSNAMEID_2);
1348
1349            query.append(_FINDER_COLUMN_C_C_C_CLASSPK_2);
1350
1351            if (obc != null) {
1352                appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
1353            }
1354
1355            else {
1356                query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
1357            }
1358
1359            String sql = query.toString();
1360
1361            Query q = session.createQuery(sql);
1362
1363            QueryPos qPos = QueryPos.getInstance(q);
1364
1365            qPos.add(companyId);
1366
1367            qPos.add(classNameId);
1368
1369            qPos.add(classPK);
1370
1371            Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
1372                    emailAddress);
1373
1374            EmailAddress[] array = new EmailAddressImpl[3];
1375
1376            array[0] = (EmailAddress)objArray[0];
1377            array[1] = (EmailAddress)objArray[1];
1378            array[2] = (EmailAddress)objArray[2];
1379
1380            return array;
1381        }
1382        catch (Exception e) {
1383            throw processException(e);
1384        }
1385        finally {
1386            closeSession(session);
1387        }
1388    }
1389
1390    public List<EmailAddress> findByC_C_C_P(long companyId, long classNameId,
1391        long classPK, boolean primary) throws SystemException {
1392        Object[] finderArgs = new Object[] {
1393                new Long(companyId), new Long(classNameId), new Long(classPK),
1394                Boolean.valueOf(primary)
1395            };
1396
1397        List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_C_C_C_P,
1398                finderArgs, this);
1399
1400        if (list == null) {
1401            Session session = null;
1402
1403            try {
1404                session = openSession();
1405
1406                StringBundler query = new StringBundler(6);
1407
1408                query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
1409
1410                query.append(_FINDER_COLUMN_C_C_C_P_COMPANYID_2);
1411
1412                query.append(_FINDER_COLUMN_C_C_C_P_CLASSNAMEID_2);
1413
1414                query.append(_FINDER_COLUMN_C_C_C_P_CLASSPK_2);
1415
1416                query.append(_FINDER_COLUMN_C_C_C_P_PRIMARY_2);
1417
1418                query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
1419
1420                String sql = query.toString();
1421
1422                Query q = session.createQuery(sql);
1423
1424                QueryPos qPos = QueryPos.getInstance(q);
1425
1426                qPos.add(companyId);
1427
1428                qPos.add(classNameId);
1429
1430                qPos.add(classPK);
1431
1432                qPos.add(primary);
1433
1434                list = q.list();
1435            }
1436            catch (Exception e) {
1437                throw processException(e);
1438            }
1439            finally {
1440                if (list == null) {
1441                    list = new ArrayList<EmailAddress>();
1442                }
1443
1444                cacheResult(list);
1445
1446                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_C_C_C_P,
1447                    finderArgs, list);
1448
1449                closeSession(session);
1450            }
1451        }
1452
1453        return list;
1454    }
1455
1456    public List<EmailAddress> findByC_C_C_P(long companyId, long classNameId,
1457        long classPK, boolean primary, int start, int end)
1458        throws SystemException {
1459        return findByC_C_C_P(companyId, classNameId, classPK, primary, start,
1460            end, null);
1461    }
1462
1463    public List<EmailAddress> findByC_C_C_P(long companyId, long classNameId,
1464        long classPK, boolean primary, int start, int end, OrderByComparator obc)
1465        throws SystemException {
1466        Object[] finderArgs = new Object[] {
1467                new Long(companyId), new Long(classNameId), new Long(classPK),
1468                Boolean.valueOf(primary),
1469                
1470                String.valueOf(start), String.valueOf(end), String.valueOf(obc)
1471            };
1472
1473        List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_C_C_C_P,
1474                finderArgs, this);
1475
1476        if (list == null) {
1477            Session session = null;
1478
1479            try {
1480                session = openSession();
1481
1482                StringBundler query = null;
1483
1484                if (obc != null) {
1485                    query = new StringBundler(6 +
1486                            (obc.getOrderByFields().length * 3));
1487                }
1488                else {
1489                    query = new StringBundler(6);
1490                }
1491
1492                query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
1493
1494                query.append(_FINDER_COLUMN_C_C_C_P_COMPANYID_2);
1495
1496                query.append(_FINDER_COLUMN_C_C_C_P_CLASSNAMEID_2);
1497
1498                query.append(_FINDER_COLUMN_C_C_C_P_CLASSPK_2);
1499
1500                query.append(_FINDER_COLUMN_C_C_C_P_PRIMARY_2);
1501
1502                if (obc != null) {
1503                    appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
1504                }
1505
1506                else {
1507                    query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
1508                }
1509
1510                String sql = query.toString();
1511
1512                Query q = session.createQuery(sql);
1513
1514                QueryPos qPos = QueryPos.getInstance(q);
1515
1516                qPos.add(companyId);
1517
1518                qPos.add(classNameId);
1519
1520                qPos.add(classPK);
1521
1522                qPos.add(primary);
1523
1524                list = (List<EmailAddress>)QueryUtil.list(q, getDialect(),
1525                        start, end);
1526            }
1527            catch (Exception e) {
1528                throw processException(e);
1529            }
1530            finally {
1531                if (list == null) {
1532                    list = new ArrayList<EmailAddress>();
1533                }
1534
1535                cacheResult(list);
1536
1537                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_C_C_C_P,
1538                    finderArgs, list);
1539
1540                closeSession(session);
1541            }
1542        }
1543
1544        return list;
1545    }
1546
1547    public EmailAddress findByC_C_C_P_First(long companyId, long classNameId,
1548        long classPK, boolean primary, OrderByComparator obc)
1549        throws NoSuchEmailAddressException, SystemException {
1550        List<EmailAddress> list = findByC_C_C_P(companyId, classNameId,
1551                classPK, primary, 0, 1, obc);
1552
1553        if (list.isEmpty()) {
1554            StringBundler msg = new StringBundler(10);
1555
1556            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1557
1558            msg.append("companyId=");
1559            msg.append(companyId);
1560
1561            msg.append(", classNameId=");
1562            msg.append(classNameId);
1563
1564            msg.append(", classPK=");
1565            msg.append(classPK);
1566
1567            msg.append(", primary=");
1568            msg.append(primary);
1569
1570            msg.append(StringPool.CLOSE_CURLY_BRACE);
1571
1572            throw new NoSuchEmailAddressException(msg.toString());
1573        }
1574        else {
1575            return list.get(0);
1576        }
1577    }
1578
1579    public EmailAddress findByC_C_C_P_Last(long companyId, long classNameId,
1580        long classPK, boolean primary, OrderByComparator obc)
1581        throws NoSuchEmailAddressException, SystemException {
1582        int count = countByC_C_C_P(companyId, classNameId, classPK, primary);
1583
1584        List<EmailAddress> list = findByC_C_C_P(companyId, classNameId,
1585                classPK, primary, count - 1, count, obc);
1586
1587        if (list.isEmpty()) {
1588            StringBundler msg = new StringBundler(10);
1589
1590            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1591
1592            msg.append("companyId=");
1593            msg.append(companyId);
1594
1595            msg.append(", classNameId=");
1596            msg.append(classNameId);
1597
1598            msg.append(", classPK=");
1599            msg.append(classPK);
1600
1601            msg.append(", primary=");
1602            msg.append(primary);
1603
1604            msg.append(StringPool.CLOSE_CURLY_BRACE);
1605
1606            throw new NoSuchEmailAddressException(msg.toString());
1607        }
1608        else {
1609            return list.get(0);
1610        }
1611    }
1612
1613    public EmailAddress[] findByC_C_C_P_PrevAndNext(long emailAddressId,
1614        long companyId, long classNameId, long classPK, boolean primary,
1615        OrderByComparator obc)
1616        throws NoSuchEmailAddressException, SystemException {
1617        EmailAddress emailAddress = findByPrimaryKey(emailAddressId);
1618
1619        int count = countByC_C_C_P(companyId, classNameId, classPK, primary);
1620
1621        Session session = null;
1622
1623        try {
1624            session = openSession();
1625
1626            StringBundler query = null;
1627
1628            if (obc != null) {
1629                query = new StringBundler(6 +
1630                        (obc.getOrderByFields().length * 3));
1631            }
1632            else {
1633                query = new StringBundler(6);
1634            }
1635
1636            query.append(_SQL_SELECT_EMAILADDRESS_WHERE);
1637
1638            query.append(_FINDER_COLUMN_C_C_C_P_COMPANYID_2);
1639
1640            query.append(_FINDER_COLUMN_C_C_C_P_CLASSNAMEID_2);
1641
1642            query.append(_FINDER_COLUMN_C_C_C_P_CLASSPK_2);
1643
1644            query.append(_FINDER_COLUMN_C_C_C_P_PRIMARY_2);
1645
1646            if (obc != null) {
1647                appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
1648            }
1649
1650            else {
1651                query.append(EmailAddressModelImpl.ORDER_BY_JPQL);
1652            }
1653
1654            String sql = query.toString();
1655
1656            Query q = session.createQuery(sql);
1657
1658            QueryPos qPos = QueryPos.getInstance(q);
1659
1660            qPos.add(companyId);
1661
1662            qPos.add(classNameId);
1663
1664            qPos.add(classPK);
1665
1666            qPos.add(primary);
1667
1668            Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
1669                    emailAddress);
1670
1671            EmailAddress[] array = new EmailAddressImpl[3];
1672
1673            array[0] = (EmailAddress)objArray[0];
1674            array[1] = (EmailAddress)objArray[1];
1675            array[2] = (EmailAddress)objArray[2];
1676
1677            return array;
1678        }
1679        catch (Exception e) {
1680            throw processException(e);
1681        }
1682        finally {
1683            closeSession(session);
1684        }
1685    }
1686
1687    public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery)
1688        throws SystemException {
1689        Session session = null;
1690
1691        try {
1692            session = openSession();
1693
1694            dynamicQuery.compile(session);
1695
1696            return dynamicQuery.list();
1697        }
1698        catch (Exception e) {
1699            throw processException(e);
1700        }
1701        finally {
1702            closeSession(session);
1703        }
1704    }
1705
1706    public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery,
1707        int start, int end) throws SystemException {
1708        Session session = null;
1709
1710        try {
1711            session = openSession();
1712
1713            dynamicQuery.setLimit(start, end);
1714
1715            dynamicQuery.compile(session);
1716
1717            return dynamicQuery.list();
1718        }
1719        catch (Exception e) {
1720            throw processException(e);
1721        }
1722        finally {
1723            closeSession(session);
1724        }
1725    }
1726
1727    public List<EmailAddress> findAll() throws SystemException {
1728        return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
1729    }
1730
1731    public List<EmailAddress> findAll(int start, int end)
1732        throws SystemException {
1733        return findAll(start, end, null);
1734    }
1735
1736    public List<EmailAddress> findAll(int start, int end, OrderByComparator obc)
1737        throws SystemException {
1738        Object[] finderArgs = new Object[] {
1739                String.valueOf(start), String.valueOf(end), String.valueOf(obc)
1740            };
1741
1742        List<EmailAddress> list = (List<EmailAddress>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
1743                finderArgs, this);
1744
1745        if (list == null) {
1746            Session session = null;
1747
1748            try {
1749                session = openSession();
1750
1751                StringBundler query = null;
1752                String sql = null;
1753
1754                if (obc != null) {
1755                    query = new StringBundler(2 +
1756                            (obc.getOrderByFields().length * 3));
1757
1758                    query.append(_SQL_SELECT_EMAILADDRESS);
1759
1760                    appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
1761
1762                    sql = query.toString();
1763                }
1764
1765                else {
1766                    sql = _SQL_SELECT_EMAILADDRESS.concat(EmailAddressModelImpl.ORDER_BY_JPQL);
1767                }
1768
1769                Query q = session.createQuery(sql);
1770
1771                if (obc == null) {
1772                    list = (List<EmailAddress>)QueryUtil.list(q, getDialect(),
1773                            start, end, false);
1774
1775                    Collections.sort(list);
1776                }
1777                else {
1778                    list = (List<EmailAddress>)QueryUtil.list(q, getDialect(),
1779                            start, end);
1780                }
1781            }
1782            catch (Exception e) {
1783                throw processException(e);
1784            }
1785            finally {
1786                if (list == null) {
1787                    list = new ArrayList<EmailAddress>();
1788                }
1789
1790                cacheResult(list);
1791
1792                FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
1793
1794                closeSession(session);
1795            }
1796        }
1797
1798        return list;
1799    }
1800
1801    public void removeByCompanyId(long companyId) throws SystemException {
1802        for (EmailAddress emailAddress : findByCompanyId(companyId)) {
1803            remove(emailAddress);
1804        }
1805    }
1806
1807    public void removeByUserId(long userId) throws SystemException {
1808        for (EmailAddress emailAddress : findByUserId(userId)) {
1809            remove(emailAddress);
1810        }
1811    }
1812
1813    public void removeByC_C(long companyId, long classNameId)
1814        throws SystemException {
1815        for (EmailAddress emailAddress : findByC_C(companyId, classNameId)) {
1816            remove(emailAddress);
1817        }
1818    }
1819
1820    public void removeByC_C_C(long companyId, long classNameId, long classPK)
1821        throws SystemException {
1822        for (EmailAddress emailAddress : findByC_C_C(companyId, classNameId,
1823                classPK)) {
1824            remove(emailAddress);
1825        }
1826    }
1827
1828    public void removeByC_C_C_P(long companyId, long classNameId, long classPK,
1829        boolean primary) throws SystemException {
1830        for (EmailAddress emailAddress : findByC_C_C_P(companyId, classNameId,
1831                classPK, primary)) {
1832            remove(emailAddress);
1833        }
1834    }
1835
1836    public void removeAll() throws SystemException {
1837        for (EmailAddress emailAddress : findAll()) {
1838            remove(emailAddress);
1839        }
1840    }
1841
1842    public int countByCompanyId(long companyId) throws SystemException {
1843        Object[] finderArgs = new Object[] { new Long(companyId) };
1844
1845        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_COMPANYID,
1846                finderArgs, this);
1847
1848        if (count == null) {
1849            Session session = null;
1850
1851            try {
1852                session = openSession();
1853
1854                StringBundler query = new StringBundler(2);
1855
1856                query.append(_SQL_COUNT_EMAILADDRESS_WHERE);
1857
1858                query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
1859
1860                String sql = query.toString();
1861
1862                Query q = session.createQuery(sql);
1863
1864                QueryPos qPos = QueryPos.getInstance(q);
1865
1866                qPos.add(companyId);
1867
1868                count = (Long)q.uniqueResult();
1869            }
1870            catch (Exception e) {
1871                throw processException(e);
1872            }
1873            finally {
1874                if (count == null) {
1875                    count = Long.valueOf(0);
1876                }
1877
1878                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_COMPANYID,
1879                    finderArgs, count);
1880
1881                closeSession(session);
1882            }
1883        }
1884
1885        return count.intValue();
1886    }
1887
1888    public int countByUserId(long userId) throws SystemException {
1889        Object[] finderArgs = new Object[] { new Long(userId) };
1890
1891        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_USERID,
1892                finderArgs, this);
1893
1894        if (count == null) {
1895            Session session = null;
1896
1897            try {
1898                session = openSession();
1899
1900                StringBundler query = new StringBundler(2);
1901
1902                query.append(_SQL_COUNT_EMAILADDRESS_WHERE);
1903
1904                query.append(_FINDER_COLUMN_USERID_USERID_2);
1905
1906                String sql = query.toString();
1907
1908                Query q = session.createQuery(sql);
1909
1910                QueryPos qPos = QueryPos.getInstance(q);
1911
1912                qPos.add(userId);
1913
1914                count = (Long)q.uniqueResult();
1915            }
1916            catch (Exception e) {
1917                throw processException(e);
1918            }
1919            finally {
1920                if (count == null) {
1921                    count = Long.valueOf(0);
1922                }
1923
1924                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_USERID,
1925                    finderArgs, count);
1926
1927                closeSession(session);
1928            }
1929        }
1930
1931        return count.intValue();
1932    }
1933
1934    public int countByC_C(long companyId, long classNameId)
1935        throws SystemException {
1936        Object[] finderArgs = new Object[] {
1937                new Long(companyId), new Long(classNameId)
1938            };
1939
1940        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_C_C,
1941                finderArgs, this);
1942
1943        if (count == null) {
1944            Session session = null;
1945
1946            try {
1947                session = openSession();
1948
1949                StringBundler query = new StringBundler(3);
1950
1951                query.append(_SQL_COUNT_EMAILADDRESS_WHERE);
1952
1953                query.append(_FINDER_COLUMN_C_C_COMPANYID_2);
1954
1955                query.append(_FINDER_COLUMN_C_C_CLASSNAMEID_2);
1956
1957                String sql = query.toString();
1958
1959                Query q = session.createQuery(sql);
1960
1961                QueryPos qPos = QueryPos.getInstance(q);
1962
1963                qPos.add(companyId);
1964
1965                qPos.add(classNameId);
1966
1967                count = (Long)q.uniqueResult();
1968            }
1969            catch (Exception e) {
1970                throw processException(e);
1971            }
1972            finally {
1973                if (count == null) {
1974                    count = Long.valueOf(0);
1975                }
1976
1977                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_C_C, finderArgs,
1978                    count);
1979
1980                closeSession(session);
1981            }
1982        }
1983
1984        return count.intValue();
1985    }
1986
1987    public int countByC_C_C(long companyId, long classNameId, long classPK)
1988        throws SystemException {
1989        Object[] finderArgs = new Object[] {
1990                new Long(companyId), new Long(classNameId), new Long(classPK)
1991            };
1992
1993        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_C_C_C,
1994                finderArgs, this);
1995
1996        if (count == null) {
1997            Session session = null;
1998
1999            try {
2000                session = openSession();
2001
2002                StringBundler query = new StringBundler(4);
2003
2004                query.append(_SQL_COUNT_EMAILADDRESS_WHERE);
2005
2006                query.append(_FINDER_COLUMN_C_C_C_COMPANYID_2);
2007
2008                query.append(_FINDER_COLUMN_C_C_C_CLASSNAMEID_2);
2009
2010                query.append(_FINDER_COLUMN_C_C_C_CLASSPK_2);
2011
2012                String sql = query.toString();
2013
2014                Query q = session.createQuery(sql);
2015
2016                QueryPos qPos = QueryPos.getInstance(q);
2017
2018                qPos.add(companyId);
2019
2020                qPos.add(classNameId);
2021
2022                qPos.add(classPK);
2023
2024                count = (Long)q.uniqueResult();
2025            }
2026            catch (Exception e) {
2027                throw processException(e);
2028            }
2029            finally {
2030                if (count == null) {
2031                    count = Long.valueOf(0);
2032                }
2033
2034                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_C_C_C,
2035                    finderArgs, count);
2036
2037                closeSession(session);
2038            }
2039        }
2040
2041        return count.intValue();
2042    }
2043
2044    public int countByC_C_C_P(long companyId, long classNameId, long classPK,
2045        boolean primary) throws SystemException {
2046        Object[] finderArgs = new Object[] {
2047                new Long(companyId), new Long(classNameId), new Long(classPK),
2048                Boolean.valueOf(primary)
2049            };
2050
2051        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_C_C_C_P,
2052                finderArgs, this);
2053
2054        if (count == null) {
2055            Session session = null;
2056
2057            try {
2058                session = openSession();
2059
2060                StringBundler query = new StringBundler(5);
2061
2062                query.append(_SQL_COUNT_EMAILADDRESS_WHERE);
2063
2064                query.append(_FINDER_COLUMN_C_C_C_P_COMPANYID_2);
2065
2066                query.append(_FINDER_COLUMN_C_C_C_P_CLASSNAMEID_2);
2067
2068                query.append(_FINDER_COLUMN_C_C_C_P_CLASSPK_2);
2069
2070                query.append(_FINDER_COLUMN_C_C_C_P_PRIMARY_2);
2071
2072                String sql = query.toString();
2073
2074                Query q = session.createQuery(sql);
2075
2076                QueryPos qPos = QueryPos.getInstance(q);
2077
2078                qPos.add(companyId);
2079
2080                qPos.add(classNameId);
2081
2082                qPos.add(classPK);
2083
2084                qPos.add(primary);
2085
2086                count = (Long)q.uniqueResult();
2087            }
2088            catch (Exception e) {
2089                throw processException(e);
2090            }
2091            finally {
2092                if (count == null) {
2093                    count = Long.valueOf(0);
2094                }
2095
2096                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_C_C_C_P,
2097                    finderArgs, count);
2098
2099                closeSession(session);
2100            }
2101        }
2102
2103        return count.intValue();
2104    }
2105
2106    public int countAll() throws SystemException {
2107        Object[] finderArgs = new Object[0];
2108
2109        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
2110                finderArgs, this);
2111
2112        if (count == null) {
2113            Session session = null;
2114
2115            try {
2116                session = openSession();
2117
2118                Query q = session.createQuery(_SQL_COUNT_EMAILADDRESS);
2119
2120                count = (Long)q.uniqueResult();
2121            }
2122            catch (Exception e) {
2123                throw processException(e);
2124            }
2125            finally {
2126                if (count == null) {
2127                    count = Long.valueOf(0);
2128                }
2129
2130                FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
2131                    count);
2132
2133                closeSession(session);
2134            }
2135        }
2136
2137        return count.intValue();
2138    }
2139
2140    public void afterPropertiesSet() {
2141        String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
2142                    com.liferay.portal.util.PropsUtil.get(
2143                        "value.object.listener.com.liferay.portal.model.EmailAddress")));
2144
2145        if (listenerClassNames.length > 0) {
2146            try {
2147                List<ModelListener<EmailAddress>> listenersList = new ArrayList<ModelListener<EmailAddress>>();
2148
2149                for (String listenerClassName : listenerClassNames) {
2150                    listenersList.add((ModelListener<EmailAddress>)Class.forName(
2151                            listenerClassName).newInstance());
2152                }
2153
2154                listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
2155            }
2156            catch (Exception e) {
2157                _log.error(e);
2158            }
2159        }
2160    }
2161
2162    @BeanReference(name = "com.liferay.portal.service.persistence.AccountPersistence")
2163    protected com.liferay.portal.service.persistence.AccountPersistence accountPersistence;
2164    @BeanReference(name = "com.liferay.portal.service.persistence.AddressPersistence")
2165    protected com.liferay.portal.service.persistence.AddressPersistence addressPersistence;
2166    @BeanReference(name = "com.liferay.portal.service.persistence.BrowserTrackerPersistence")
2167    protected com.liferay.portal.service.persistence.BrowserTrackerPersistence browserTrackerPersistence;
2168    @BeanReference(name = "com.liferay.portal.service.persistence.ClassNamePersistence")
2169    protected com.liferay.portal.service.persistence.ClassNamePersistence classNamePersistence;
2170    @BeanReference(name = "com.liferay.portal.service.persistence.CompanyPersistence")
2171    protected com.liferay.portal.service.persistence.CompanyPersistence companyPersistence;
2172    @BeanReference(name = "com.liferay.portal.service.persistence.ContactPersistence")
2173    protected com.liferay.portal.service.persistence.ContactPersistence contactPersistence;
2174    @BeanReference(name = "com.liferay.portal.service.persistence.CountryPersistence")
2175    protected com.liferay.portal.service.persistence.CountryPersistence countryPersistence;
2176    @BeanReference(name = "com.liferay.portal.service.persistence.EmailAddressPersistence")
2177    protected com.liferay.portal.service.persistence.EmailAddressPersistence emailAddressPersistence;
2178    @BeanReference(name = "com.liferay.portal.service.persistence.GroupPersistence")
2179    protected com.liferay.portal.service.persistence.GroupPersistence groupPersistence;
2180    @BeanReference(name = "com.liferay.portal.service.persistence.ImagePersistence")
2181    protected com.liferay.portal.service.persistence.ImagePersistence imagePersistence;
2182    @BeanReference(name = "com.liferay.portal.service.persistence.LayoutPersistence")
2183    protected com.liferay.portal.service.persistence.LayoutPersistence layoutPersistence;
2184    @BeanReference(name = "com.liferay.portal.service.persistence.LayoutPrototypePersistence")
2185    protected com.liferay.portal.service.persistence.LayoutPrototypePersistence layoutPrototypePersistence;
2186    @BeanReference(name = "com.liferay.portal.service.persistence.LayoutSetPersistence")
2187    protected com.liferay.portal.service.persistence.LayoutSetPersistence layoutSetPersistence;
2188    @BeanReference(name = "com.liferay.portal.service.persistence.LayoutSetPrototypePersistence")
2189    protected com.liferay.portal.service.persistence.LayoutSetPrototypePersistence layoutSetPrototypePersistence;
2190    @BeanReference(name = "com.liferay.portal.service.persistence.ListTypePersistence")
2191    protected com.liferay.portal.service.persistence.ListTypePersistence listTypePersistence;
2192    @BeanReference(name = "com.liferay.portal.service.persistence.LockPersistence")
2193    protected com.liferay.portal.service.persistence.LockPersistence lockPersistence;
2194    @BeanReference(name = "com.liferay.portal.service.persistence.MembershipRequestPersistence")
2195    protected com.liferay.portal.service.persistence.MembershipRequestPersistence membershipRequestPersistence;
2196    @BeanReference(name = "com.liferay.portal.service.persistence.OrganizationPersistence")
2197    protected com.liferay.portal.service.persistence.OrganizationPersistence organizationPersistence;
2198    @BeanReference(name = "com.liferay.portal.service.persistence.OrgGroupPermissionPersistence")
2199    protected com.liferay.portal.service.persistence.OrgGroupPermissionPersistence orgGroupPermissionPersistence;
2200    @BeanReference(name = "com.liferay.portal.service.persistence.OrgGroupRolePersistence")
2201    protected com.liferay.portal.service.persistence.OrgGroupRolePersistence orgGroupRolePersistence;
2202    @BeanReference(name = "com.liferay.portal.service.persistence.OrgLaborPersistence")
2203    protected com.liferay.portal.service.persistence.OrgLaborPersistence orgLaborPersistence;
2204    @BeanReference(name = "com.liferay.portal.service.persistence.PasswordPolicyPersistence")
2205    protected com.liferay.portal.service.persistence.PasswordPolicyPersistence passwordPolicyPersistence;
2206    @BeanReference(name = "com.liferay.portal.service.persistence.PasswordPolicyRelPersistence")
2207    protected com.liferay.portal.service.persistence.PasswordPolicyRelPersistence passwordPolicyRelPersistence;
2208    @BeanReference(name = "com.liferay.portal.service.persistence.PasswordTrackerPersistence")
2209    protected com.liferay.portal.service.persistence.PasswordTrackerPersistence passwordTrackerPersistence;
2210    @BeanReference(name = "com.liferay.portal.service.persistence.PermissionPersistence")
2211    protected com.liferay.portal.service.persistence.PermissionPersistence permissionPersistence;
2212    @BeanReference(name = "com.liferay.portal.service.persistence.PhonePersistence")
2213    protected com.liferay.portal.service.persistence.PhonePersistence phonePersistence;
2214    @BeanReference(name = "com.liferay.portal.service.persistence.PluginSettingPersistence")
2215    protected com.liferay.portal.service.persistence.PluginSettingPersistence pluginSettingPersistence;
2216    @BeanReference(name = "com.liferay.portal.service.persistence.PortletPersistence")
2217    protected com.liferay.portal.service.persistence.PortletPersistence portletPersistence;
2218    @BeanReference(name = "com.liferay.portal.service.persistence.PortletItemPersistence")
2219    protected com.liferay.portal.service.persistence.PortletItemPersistence portletItemPersistence;
2220    @BeanReference(name = "com.liferay.portal.service.persistence.PortletPreferencesPersistence")
2221    protected com.liferay.portal.service.persistence.PortletPreferencesPersistence portletPreferencesPersistence;
2222    @BeanReference(name = "com.liferay.portal.service.persistence.RegionPersistence")
2223    protected com.liferay.portal.service.persistence.RegionPersistence regionPersistence;
2224    @BeanReference(name = "com.liferay.portal.service.persistence.ReleasePersistence")
2225    protected com.liferay.portal.service.persistence.ReleasePersistence releasePersistence;
2226    @BeanReference(name = "com.liferay.portal.service.persistence.ResourcePersistence")
2227    protected com.liferay.portal.service.persistence.ResourcePersistence resourcePersistence;
2228    @BeanReference(name = "com.liferay.portal.service.persistence.ResourceActionPersistence")
2229    protected com.liferay.portal.service.persistence.ResourceActionPersistence resourceActionPersistence;
2230    @BeanReference(name = "com.liferay.portal.service.persistence.ResourceCodePersistence")
2231    protected com.liferay.portal.service.persistence.ResourceCodePersistence resourceCodePersistence;
2232    @BeanReference(name = "com.liferay.portal.service.persistence.ResourcePermissionPersistence")
2233    protected com.liferay.portal.service.persistence.ResourcePermissionPersistence resourcePermissionPersistence;
2234    @BeanReference(name = "com.liferay.portal.service.persistence.RolePersistence")
2235    protected com.liferay.portal.service.persistence.RolePersistence rolePersistence;
2236    @BeanReference(name = "com.liferay.portal.service.persistence.ServiceComponentPersistence")
2237    protected com.liferay.portal.service.persistence.ServiceComponentPersistence serviceComponentPersistence;
2238    @BeanReference(name = "com.liferay.portal.service.persistence.ShardPersistence")
2239    protected com.liferay.portal.service.persistence.ShardPersistence shardPersistence;
2240    @BeanReference(name = "com.liferay.portal.service.persistence.SubscriptionPersistence")
2241    protected com.liferay.portal.service.persistence.SubscriptionPersistence subscriptionPersistence;
2242    @BeanReference(name = "com.liferay.portal.service.persistence.UserPersistence")
2243    protected com.liferay.portal.service.persistence.UserPersistence userPersistence;
2244    @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupPersistence")
2245    protected com.liferay.portal.service.persistence.UserGroupPersistence userGroupPersistence;
2246    @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupGroupRolePersistence")
2247    protected com.liferay.portal.service.persistence.UserGroupGroupRolePersistence userGroupGroupRolePersistence;
2248    @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupRolePersistence")
2249    protected com.liferay.portal.service.persistence.UserGroupRolePersistence userGroupRolePersistence;
2250    @BeanReference(name = "com.liferay.portal.service.persistence.UserIdMapperPersistence")
2251    protected com.liferay.portal.service.persistence.UserIdMapperPersistence userIdMapperPersistence;
2252    @BeanReference(name = "com.liferay.portal.service.persistence.UserTrackerPersistence")
2253    protected com.liferay.portal.service.persistence.UserTrackerPersistence userTrackerPersistence;
2254    @BeanReference(name = "com.liferay.portal.service.persistence.UserTrackerPathPersistence")
2255    protected com.liferay.portal.service.persistence.UserTrackerPathPersistence userTrackerPathPersistence;
2256    @BeanReference(name = "com.liferay.portal.service.persistence.WebDAVPropsPersistence")
2257    protected com.liferay.portal.service.persistence.WebDAVPropsPersistence webDAVPropsPersistence;
2258    @BeanReference(name = "com.liferay.portal.service.persistence.WebsitePersistence")
2259    protected com.liferay.portal.service.persistence.WebsitePersistence websitePersistence;
2260    @BeanReference(name = "com.liferay.portal.service.persistence.WorkflowDefinitionLinkPersistence")
2261    protected com.liferay.portal.service.persistence.WorkflowDefinitionLinkPersistence workflowDefinitionLinkPersistence;
2262    @BeanReference(name = "com.liferay.portal.service.persistence.WorkflowInstanceLinkPersistence")
2263    protected com.liferay.portal.service.persistence.WorkflowInstanceLinkPersistence workflowInstanceLinkPersistence;
2264    private static final String _SQL_SELECT_EMAILADDRESS = "SELECT emailAddress FROM EmailAddress emailAddress";
2265    private static final String _SQL_SELECT_EMAILADDRESS_WHERE = "SELECT emailAddress FROM EmailAddress emailAddress WHERE ";
2266    private static final String _SQL_COUNT_EMAILADDRESS = "SELECT COUNT(emailAddress) FROM EmailAddress emailAddress";
2267    private static final String _SQL_COUNT_EMAILADDRESS_WHERE = "SELECT COUNT(emailAddress) FROM EmailAddress emailAddress WHERE ";
2268    private static final String _FINDER_COLUMN_COMPANYID_COMPANYID_2 = "emailAddress.companyId = ?";
2269    private static final String _FINDER_COLUMN_USERID_USERID_2 = "emailAddress.userId = ?";
2270    private static final String _FINDER_COLUMN_C_C_COMPANYID_2 = "emailAddress.companyId = ? AND ";
2271    private static final String _FINDER_COLUMN_C_C_CLASSNAMEID_2 = "emailAddress.classNameId = ?";
2272    private static final String _FINDER_COLUMN_C_C_C_COMPANYID_2 = "emailAddress.companyId = ? AND ";
2273    private static final String _FINDER_COLUMN_C_C_C_CLASSNAMEID_2 = "emailAddress.classNameId = ? AND ";
2274    private static final String _FINDER_COLUMN_C_C_C_CLASSPK_2 = "emailAddress.classPK = ?";
2275    private static final String _FINDER_COLUMN_C_C_C_P_COMPANYID_2 = "emailAddress.companyId = ? AND ";
2276    private static final String _FINDER_COLUMN_C_C_C_P_CLASSNAMEID_2 = "emailAddress.classNameId = ? AND ";
2277    private static final String _FINDER_COLUMN_C_C_C_P_CLASSPK_2 = "emailAddress.classPK = ? AND ";
2278    private static final String _FINDER_COLUMN_C_C_C_P_PRIMARY_2 = "emailAddress.primary = ?";
2279    private static final String _ORDER_BY_ENTITY_ALIAS = "emailAddress.";
2280    private static final String _NO_SUCH_ENTITY_WITH_PRIMARY_KEY = "No EmailAddress exists with the primary key ";
2281    private static final String _NO_SUCH_ENTITY_WITH_KEY = "No EmailAddress exists with the key {";
2282    private static Log _log = LogFactoryUtil.getLog(EmailAddressPersistenceImpl.class);
2283}