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