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