1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17   * SOFTWARE.
18   */
19  
20  package com.liferay.portal.service.persistence;
21  
22  import com.liferay.portal.NoSuchImageException;
23  import com.liferay.portal.SystemException;
24  import com.liferay.portal.kernel.annotation.BeanReference;
25  import com.liferay.portal.kernel.cache.CacheRegistry;
26  import com.liferay.portal.kernel.dao.orm.DynamicQuery;
27  import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
28  import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
29  import com.liferay.portal.kernel.dao.orm.FinderPath;
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.Image;
41  import com.liferay.portal.model.ModelListener;
42  import com.liferay.portal.model.impl.ImageImpl;
43  import com.liferay.portal.model.impl.ImageModelImpl;
44  import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
45  
46  import java.util.ArrayList;
47  import java.util.Collections;
48  import java.util.List;
49  
50  /**
51   * <a href="ImagePersistenceImpl.java.html"><b><i>View Source</i></b></a>
52   *
53   * @author Brian Wing Shun Chan
54   *
55   */
56  public class ImagePersistenceImpl extends BasePersistenceImpl
57      implements ImagePersistence {
58      public static final String FINDER_CLASS_NAME_ENTITY = ImageImpl.class.getName();
59      public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
60          ".List";
61      public static final FinderPath FINDER_PATH_FIND_BY_SIZE = new FinderPath(ImageModelImpl.ENTITY_CACHE_ENABLED,
62              ImageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
63              "findBySize", new String[] { Integer.class.getName() });
64      public static final FinderPath FINDER_PATH_FIND_BY_OBC_SIZE = new FinderPath(ImageModelImpl.ENTITY_CACHE_ENABLED,
65              ImageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
66              "findBySize",
67              new String[] {
68                  Integer.class.getName(),
69                  
70              "java.lang.Integer", "java.lang.Integer",
71                  "com.liferay.portal.kernel.util.OrderByComparator"
72              });
73      public static final FinderPath FINDER_PATH_COUNT_BY_SIZE = new FinderPath(ImageModelImpl.ENTITY_CACHE_ENABLED,
74              ImageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
75              "countBySize", new String[] { Integer.class.getName() });
76      public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(ImageModelImpl.ENTITY_CACHE_ENABLED,
77              ImageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
78              "findAll", new String[0]);
79      public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(ImageModelImpl.ENTITY_CACHE_ENABLED,
80              ImageModelImpl.FINDER_CACHE_ENABLED, FINDER_CLASS_NAME_LIST,
81              "countAll", new String[0]);
82  
83      public void cacheResult(Image image) {
84          EntityCacheUtil.putResult(ImageModelImpl.ENTITY_CACHE_ENABLED,
85              ImageImpl.class, image.getPrimaryKey(), image);
86      }
87  
88      public void cacheResult(List<Image> images) {
89          for (Image image : images) {
90              if (EntityCacheUtil.getResult(ImageModelImpl.ENTITY_CACHE_ENABLED,
91                          ImageImpl.class, image.getPrimaryKey(), this) == null) {
92                  cacheResult(image);
93              }
94          }
95      }
96  
97      public void clearCache() {
98          CacheRegistry.clear(ImageImpl.class.getName());
99          EntityCacheUtil.clearCache(ImageImpl.class.getName());
100         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
101         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
102     }
103 
104     public Image create(long imageId) {
105         Image image = new ImageImpl();
106 
107         image.setNew(true);
108         image.setPrimaryKey(imageId);
109 
110         return image;
111     }
112 
113     public Image remove(long imageId)
114         throws NoSuchImageException, SystemException {
115         Session session = null;
116 
117         try {
118             session = openSession();
119 
120             Image image = (Image)session.get(ImageImpl.class, new Long(imageId));
121 
122             if (image == null) {
123                 if (_log.isWarnEnabled()) {
124                     _log.warn("No Image exists with the primary key " +
125                         imageId);
126                 }
127 
128                 throw new NoSuchImageException(
129                     "No Image exists with the primary key " + imageId);
130             }
131 
132             return remove(image);
133         }
134         catch (NoSuchImageException nsee) {
135             throw nsee;
136         }
137         catch (Exception e) {
138             throw processException(e);
139         }
140         finally {
141             closeSession(session);
142         }
143     }
144 
145     public Image remove(Image image) throws SystemException {
146         for (ModelListener<Image> listener : listeners) {
147             listener.onBeforeRemove(image);
148         }
149 
150         image = removeImpl(image);
151 
152         for (ModelListener<Image> listener : listeners) {
153             listener.onAfterRemove(image);
154         }
155 
156         return image;
157     }
158 
159     protected Image removeImpl(Image image) throws SystemException {
160         Session session = null;
161 
162         try {
163             session = openSession();
164 
165             if (image.isCachedModel() || BatchSessionUtil.isEnabled()) {
166                 Object staleObject = session.get(ImageImpl.class,
167                         image.getPrimaryKeyObj());
168 
169                 if (staleObject != null) {
170                     session.evict(staleObject);
171                 }
172             }
173 
174             session.delete(image);
175 
176             session.flush();
177         }
178         catch (Exception e) {
179             throw processException(e);
180         }
181         finally {
182             closeSession(session);
183         }
184 
185         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
186 
187         EntityCacheUtil.removeResult(ImageModelImpl.ENTITY_CACHE_ENABLED,
188             ImageImpl.class, image.getPrimaryKey());
189 
190         return image;
191     }
192 
193     /**
194      * @deprecated Use <code>update(Image image, boolean merge)</code>.
195      */
196     public Image update(Image image) throws SystemException {
197         if (_log.isWarnEnabled()) {
198             _log.warn(
199                 "Using the deprecated update(Image image) method. Use update(Image image, boolean merge) instead.");
200         }
201 
202         return update(image, false);
203     }
204 
205     /**
206      * Add, update, or merge, the entity. This method also calls the model
207      * listeners to trigger the proper events associated with adding, deleting,
208      * or updating an entity.
209      *
210      * @param        image the entity to add, update, or merge
211      * @param        merge boolean value for whether to merge the entity. The
212      *                default value is false. Setting merge to true is more
213      *                expensive and should only be true when image is
214      *                transient. See LEP-5473 for a detailed discussion of this
215      *                method.
216      * @return        true if the portlet can be displayed via Ajax
217      */
218     public Image update(Image image, boolean merge) throws SystemException {
219         boolean isNew = image.isNew();
220 
221         for (ModelListener<Image> listener : listeners) {
222             if (isNew) {
223                 listener.onBeforeCreate(image);
224             }
225             else {
226                 listener.onBeforeUpdate(image);
227             }
228         }
229 
230         image = updateImpl(image, merge);
231 
232         for (ModelListener<Image> listener : listeners) {
233             if (isNew) {
234                 listener.onAfterCreate(image);
235             }
236             else {
237                 listener.onAfterUpdate(image);
238             }
239         }
240 
241         return image;
242     }
243 
244     public Image updateImpl(com.liferay.portal.model.Image image, boolean merge)
245         throws SystemException {
246         Session session = null;
247 
248         try {
249             session = openSession();
250 
251             BatchSessionUtil.update(session, image, merge);
252 
253             image.setNew(false);
254         }
255         catch (Exception e) {
256             throw processException(e);
257         }
258         finally {
259             closeSession(session);
260         }
261 
262         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
263 
264         EntityCacheUtil.putResult(ImageModelImpl.ENTITY_CACHE_ENABLED,
265             ImageImpl.class, image.getPrimaryKey(), image);
266 
267         return image;
268     }
269 
270     public Image findByPrimaryKey(long imageId)
271         throws NoSuchImageException, SystemException {
272         Image image = fetchByPrimaryKey(imageId);
273 
274         if (image == null) {
275             if (_log.isWarnEnabled()) {
276                 _log.warn("No Image exists with the primary key " + imageId);
277             }
278 
279             throw new NoSuchImageException(
280                 "No Image exists with the primary key " + imageId);
281         }
282 
283         return image;
284     }
285 
286     public Image fetchByPrimaryKey(long imageId) throws SystemException {
287         Image image = (Image)EntityCacheUtil.getResult(ImageModelImpl.ENTITY_CACHE_ENABLED,
288                 ImageImpl.class, imageId, this);
289 
290         if (image == null) {
291             Session session = null;
292 
293             try {
294                 session = openSession();
295 
296                 image = (Image)session.get(ImageImpl.class, new Long(imageId));
297             }
298             catch (Exception e) {
299                 throw processException(e);
300             }
301             finally {
302                 if (image != null) {
303                     cacheResult(image);
304                 }
305 
306                 closeSession(session);
307             }
308         }
309 
310         return image;
311     }
312 
313     public List<Image> findBySize(int size) throws SystemException {
314         Object[] finderArgs = new Object[] { new Integer(size) };
315 
316         List<Image> list = (List<Image>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_SIZE,
317                 finderArgs, this);
318 
319         if (list == null) {
320             Session session = null;
321 
322             try {
323                 session = openSession();
324 
325                 StringBuilder query = new StringBuilder();
326 
327                 query.append("SELECT image FROM Image image WHERE ");
328 
329                 query.append("image.size < ?");
330 
331                 query.append(" ");
332 
333                 query.append("ORDER BY ");
334 
335                 query.append("image.imageId ASC");
336 
337                 Query q = session.createQuery(query.toString());
338 
339                 QueryPos qPos = QueryPos.getInstance(q);
340 
341                 qPos.add(size);
342 
343                 list = q.list();
344             }
345             catch (Exception e) {
346                 throw processException(e);
347             }
348             finally {
349                 if (list == null) {
350                     list = new ArrayList<Image>();
351                 }
352 
353                 cacheResult(list);
354 
355                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_SIZE, finderArgs,
356                     list);
357 
358                 closeSession(session);
359             }
360         }
361 
362         return list;
363     }
364 
365     public List<Image> findBySize(int size, int start, int end)
366         throws SystemException {
367         return findBySize(size, start, end, null);
368     }
369 
370     public List<Image> findBySize(int size, int start, int end,
371         OrderByComparator obc) throws SystemException {
372         Object[] finderArgs = new Object[] {
373                 new Integer(size),
374                 
375                 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
376             };
377 
378         List<Image> list = (List<Image>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_SIZE,
379                 finderArgs, this);
380 
381         if (list == null) {
382             Session session = null;
383 
384             try {
385                 session = openSession();
386 
387                 StringBuilder query = new StringBuilder();
388 
389                 query.append("SELECT image FROM Image image WHERE ");
390 
391                 query.append("image.size < ?");
392 
393                 query.append(" ");
394 
395                 if (obc != null) {
396                     query.append("ORDER BY ");
397 
398                     String[] orderByFields = obc.getOrderByFields();
399 
400                     for (int i = 0; i < orderByFields.length; i++) {
401                         query.append("image.");
402                         query.append(orderByFields[i]);
403 
404                         if (obc.isAscending()) {
405                             query.append(" ASC");
406                         }
407                         else {
408                             query.append(" DESC");
409                         }
410 
411                         if ((i + 1) < orderByFields.length) {
412                             query.append(", ");
413                         }
414                     }
415                 }
416 
417                 else {
418                     query.append("ORDER BY ");
419 
420                     query.append("image.imageId ASC");
421                 }
422 
423                 Query q = session.createQuery(query.toString());
424 
425                 QueryPos qPos = QueryPos.getInstance(q);
426 
427                 qPos.add(size);
428 
429                 list = (List<Image>)QueryUtil.list(q, getDialect(), start, end);
430             }
431             catch (Exception e) {
432                 throw processException(e);
433             }
434             finally {
435                 if (list == null) {
436                     list = new ArrayList<Image>();
437                 }
438 
439                 cacheResult(list);
440 
441                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_SIZE,
442                     finderArgs, list);
443 
444                 closeSession(session);
445             }
446         }
447 
448         return list;
449     }
450 
451     public Image findBySize_First(int size, OrderByComparator obc)
452         throws NoSuchImageException, SystemException {
453         List<Image> list = findBySize(size, 0, 1, obc);
454 
455         if (list.isEmpty()) {
456             StringBuilder msg = new StringBuilder();
457 
458             msg.append("No Image exists with the key {");
459 
460             msg.append("size=" + size);
461 
462             msg.append(StringPool.CLOSE_CURLY_BRACE);
463 
464             throw new NoSuchImageException(msg.toString());
465         }
466         else {
467             return list.get(0);
468         }
469     }
470 
471     public Image findBySize_Last(int size, OrderByComparator obc)
472         throws NoSuchImageException, SystemException {
473         int count = countBySize(size);
474 
475         List<Image> list = findBySize(size, count - 1, count, obc);
476 
477         if (list.isEmpty()) {
478             StringBuilder msg = new StringBuilder();
479 
480             msg.append("No Image exists with the key {");
481 
482             msg.append("size=" + size);
483 
484             msg.append(StringPool.CLOSE_CURLY_BRACE);
485 
486             throw new NoSuchImageException(msg.toString());
487         }
488         else {
489             return list.get(0);
490         }
491     }
492 
493     public Image[] findBySize_PrevAndNext(long imageId, int size,
494         OrderByComparator obc) throws NoSuchImageException, SystemException {
495         Image image = findByPrimaryKey(imageId);
496 
497         int count = countBySize(size);
498 
499         Session session = null;
500 
501         try {
502             session = openSession();
503 
504             StringBuilder query = new StringBuilder();
505 
506             query.append("SELECT image FROM Image image WHERE ");
507 
508             query.append("image.size < ?");
509 
510             query.append(" ");
511 
512             if (obc != null) {
513                 query.append("ORDER BY ");
514 
515                 String[] orderByFields = obc.getOrderByFields();
516 
517                 for (int i = 0; i < orderByFields.length; i++) {
518                     query.append("image.");
519                     query.append(orderByFields[i]);
520 
521                     if (obc.isAscending()) {
522                         query.append(" ASC");
523                     }
524                     else {
525                         query.append(" DESC");
526                     }
527 
528                     if ((i + 1) < orderByFields.length) {
529                         query.append(", ");
530                     }
531                 }
532             }
533 
534             else {
535                 query.append("ORDER BY ");
536 
537                 query.append("image.imageId ASC");
538             }
539 
540             Query q = session.createQuery(query.toString());
541 
542             QueryPos qPos = QueryPos.getInstance(q);
543 
544             qPos.add(size);
545 
546             Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc, image);
547 
548             Image[] array = new ImageImpl[3];
549 
550             array[0] = (Image)objArray[0];
551             array[1] = (Image)objArray[1];
552             array[2] = (Image)objArray[2];
553 
554             return array;
555         }
556         catch (Exception e) {
557             throw processException(e);
558         }
559         finally {
560             closeSession(session);
561         }
562     }
563 
564     public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery)
565         throws SystemException {
566         Session session = null;
567 
568         try {
569             session = openSession();
570 
571             dynamicQuery.compile(session);
572 
573             return dynamicQuery.list();
574         }
575         catch (Exception e) {
576             throw processException(e);
577         }
578         finally {
579             closeSession(session);
580         }
581     }
582 
583     public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery,
584         int start, int end) throws SystemException {
585         Session session = null;
586 
587         try {
588             session = openSession();
589 
590             dynamicQuery.setLimit(start, end);
591 
592             dynamicQuery.compile(session);
593 
594             return dynamicQuery.list();
595         }
596         catch (Exception e) {
597             throw processException(e);
598         }
599         finally {
600             closeSession(session);
601         }
602     }
603 
604     public List<Image> findAll() throws SystemException {
605         return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
606     }
607 
608     public List<Image> findAll(int start, int end) throws SystemException {
609         return findAll(start, end, null);
610     }
611 
612     public List<Image> findAll(int start, int end, OrderByComparator obc)
613         throws SystemException {
614         Object[] finderArgs = new Object[] {
615                 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
616             };
617 
618         List<Image> list = (List<Image>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
619                 finderArgs, this);
620 
621         if (list == null) {
622             Session session = null;
623 
624             try {
625                 session = openSession();
626 
627                 StringBuilder query = new StringBuilder();
628 
629                 query.append("SELECT image FROM Image image ");
630 
631                 if (obc != null) {
632                     query.append("ORDER BY ");
633 
634                     String[] orderByFields = obc.getOrderByFields();
635 
636                     for (int i = 0; i < orderByFields.length; i++) {
637                         query.append("image.");
638                         query.append(orderByFields[i]);
639 
640                         if (obc.isAscending()) {
641                             query.append(" ASC");
642                         }
643                         else {
644                             query.append(" DESC");
645                         }
646 
647                         if ((i + 1) < orderByFields.length) {
648                             query.append(", ");
649                         }
650                     }
651                 }
652 
653                 else {
654                     query.append("ORDER BY ");
655 
656                     query.append("image.imageId ASC");
657                 }
658 
659                 Query q = session.createQuery(query.toString());
660 
661                 if (obc == null) {
662                     list = (List<Image>)QueryUtil.list(q, getDialect(), start,
663                             end, false);
664 
665                     Collections.sort(list);
666                 }
667                 else {
668                     list = (List<Image>)QueryUtil.list(q, getDialect(), start,
669                             end);
670                 }
671             }
672             catch (Exception e) {
673                 throw processException(e);
674             }
675             finally {
676                 if (list == null) {
677                     list = new ArrayList<Image>();
678                 }
679 
680                 cacheResult(list);
681 
682                 FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
683 
684                 closeSession(session);
685             }
686         }
687 
688         return list;
689     }
690 
691     public void removeBySize(int size) throws SystemException {
692         for (Image image : findBySize(size)) {
693             remove(image);
694         }
695     }
696 
697     public void removeAll() throws SystemException {
698         for (Image image : findAll()) {
699             remove(image);
700         }
701     }
702 
703     public int countBySize(int size) throws SystemException {
704         Object[] finderArgs = new Object[] { new Integer(size) };
705 
706         Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_SIZE,
707                 finderArgs, this);
708 
709         if (count == null) {
710             Session session = null;
711 
712             try {
713                 session = openSession();
714 
715                 StringBuilder query = new StringBuilder();
716 
717                 query.append("SELECT COUNT(image) ");
718                 query.append("FROM Image image WHERE ");
719 
720                 query.append("image.size < ?");
721 
722                 query.append(" ");
723 
724                 Query q = session.createQuery(query.toString());
725 
726                 QueryPos qPos = QueryPos.getInstance(q);
727 
728                 qPos.add(size);
729 
730                 count = (Long)q.uniqueResult();
731             }
732             catch (Exception e) {
733                 throw processException(e);
734             }
735             finally {
736                 if (count == null) {
737                     count = Long.valueOf(0);
738                 }
739 
740                 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_SIZE,
741                     finderArgs, count);
742 
743                 closeSession(session);
744             }
745         }
746 
747         return count.intValue();
748     }
749 
750     public int countAll() throws SystemException {
751         Object[] finderArgs = new Object[0];
752 
753         Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
754                 finderArgs, this);
755 
756         if (count == null) {
757             Session session = null;
758 
759             try {
760                 session = openSession();
761 
762                 Query q = session.createQuery(
763                         "SELECT COUNT(image) FROM Image image");
764 
765                 count = (Long)q.uniqueResult();
766             }
767             catch (Exception e) {
768                 throw processException(e);
769             }
770             finally {
771                 if (count == null) {
772                     count = Long.valueOf(0);
773                 }
774 
775                 FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
776                     count);
777 
778                 closeSession(session);
779             }
780         }
781 
782         return count.intValue();
783     }
784 
785     public void afterPropertiesSet() {
786         String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
787                     com.liferay.portal.util.PropsUtil.get(
788                         "value.object.listener.com.liferay.portal.model.Image")));
789 
790         if (listenerClassNames.length > 0) {
791             try {
792                 List<ModelListener<Image>> listenersList = new ArrayList<ModelListener<Image>>();
793 
794                 for (String listenerClassName : listenerClassNames) {
795                     listenersList.add((ModelListener<Image>)Class.forName(
796                             listenerClassName).newInstance());
797                 }
798 
799                 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
800             }
801             catch (Exception e) {
802                 _log.error(e);
803             }
804         }
805     }
806 
807     @BeanReference(name = "com.liferay.portal.service.persistence.AccountPersistence.impl")
808     protected com.liferay.portal.service.persistence.AccountPersistence accountPersistence;
809     @BeanReference(name = "com.liferay.portal.service.persistence.AddressPersistence.impl")
810     protected com.liferay.portal.service.persistence.AddressPersistence addressPersistence;
811     @BeanReference(name = "com.liferay.portal.service.persistence.BrowserTrackerPersistence.impl")
812     protected com.liferay.portal.service.persistence.BrowserTrackerPersistence browserTrackerPersistence;
813     @BeanReference(name = "com.liferay.portal.service.persistence.ClassNamePersistence.impl")
814     protected com.liferay.portal.service.persistence.ClassNamePersistence classNamePersistence;
815     @BeanReference(name = "com.liferay.portal.service.persistence.CompanyPersistence.impl")
816     protected com.liferay.portal.service.persistence.CompanyPersistence companyPersistence;
817     @BeanReference(name = "com.liferay.portal.service.persistence.ContactPersistence.impl")
818     protected com.liferay.portal.service.persistence.ContactPersistence contactPersistence;
819     @BeanReference(name = "com.liferay.portal.service.persistence.CountryPersistence.impl")
820     protected com.liferay.portal.service.persistence.CountryPersistence countryPersistence;
821     @BeanReference(name = "com.liferay.portal.service.persistence.EmailAddressPersistence.impl")
822     protected com.liferay.portal.service.persistence.EmailAddressPersistence emailAddressPersistence;
823     @BeanReference(name = "com.liferay.portal.service.persistence.GroupPersistence.impl")
824     protected com.liferay.portal.service.persistence.GroupPersistence groupPersistence;
825     @BeanReference(name = "com.liferay.portal.service.persistence.ImagePersistence.impl")
826     protected com.liferay.portal.service.persistence.ImagePersistence imagePersistence;
827     @BeanReference(name = "com.liferay.portal.service.persistence.LayoutPersistence.impl")
828     protected com.liferay.portal.service.persistence.LayoutPersistence layoutPersistence;
829     @BeanReference(name = "com.liferay.portal.service.persistence.LayoutSetPersistence.impl")
830     protected com.liferay.portal.service.persistence.LayoutSetPersistence layoutSetPersistence;
831     @BeanReference(name = "com.liferay.portal.service.persistence.ListTypePersistence.impl")
832     protected com.liferay.portal.service.persistence.ListTypePersistence listTypePersistence;
833     @BeanReference(name = "com.liferay.portal.service.persistence.MembershipRequestPersistence.impl")
834     protected com.liferay.portal.service.persistence.MembershipRequestPersistence membershipRequestPersistence;
835     @BeanReference(name = "com.liferay.portal.service.persistence.OrganizationPersistence.impl")
836     protected com.liferay.portal.service.persistence.OrganizationPersistence organizationPersistence;
837     @BeanReference(name = "com.liferay.portal.service.persistence.OrgGroupPermissionPersistence.impl")
838     protected com.liferay.portal.service.persistence.OrgGroupPermissionPersistence orgGroupPermissionPersistence;
839     @BeanReference(name = "com.liferay.portal.service.persistence.OrgGroupRolePersistence.impl")
840     protected com.liferay.portal.service.persistence.OrgGroupRolePersistence orgGroupRolePersistence;
841     @BeanReference(name = "com.liferay.portal.service.persistence.OrgLaborPersistence.impl")
842     protected com.liferay.portal.service.persistence.OrgLaborPersistence orgLaborPersistence;
843     @BeanReference(name = "com.liferay.portal.service.persistence.PasswordPolicyPersistence.impl")
844     protected com.liferay.portal.service.persistence.PasswordPolicyPersistence passwordPolicyPersistence;
845     @BeanReference(name = "com.liferay.portal.service.persistence.PasswordPolicyRelPersistence.impl")
846     protected com.liferay.portal.service.persistence.PasswordPolicyRelPersistence passwordPolicyRelPersistence;
847     @BeanReference(name = "com.liferay.portal.service.persistence.PasswordTrackerPersistence.impl")
848     protected com.liferay.portal.service.persistence.PasswordTrackerPersistence passwordTrackerPersistence;
849     @BeanReference(name = "com.liferay.portal.service.persistence.PermissionPersistence.impl")
850     protected com.liferay.portal.service.persistence.PermissionPersistence permissionPersistence;
851     @BeanReference(name = "com.liferay.portal.service.persistence.PhonePersistence.impl")
852     protected com.liferay.portal.service.persistence.PhonePersistence phonePersistence;
853     @BeanReference(name = "com.liferay.portal.service.persistence.PluginSettingPersistence.impl")
854     protected com.liferay.portal.service.persistence.PluginSettingPersistence pluginSettingPersistence;
855     @BeanReference(name = "com.liferay.portal.service.persistence.PortletPersistence.impl")
856     protected com.liferay.portal.service.persistence.PortletPersistence portletPersistence;
857     @BeanReference(name = "com.liferay.portal.service.persistence.PortletItemPersistence.impl")
858     protected com.liferay.portal.service.persistence.PortletItemPersistence portletItemPersistence;
859     @BeanReference(name = "com.liferay.portal.service.persistence.PortletPreferencesPersistence.impl")
860     protected com.liferay.portal.service.persistence.PortletPreferencesPersistence portletPreferencesPersistence;
861     @BeanReference(name = "com.liferay.portal.service.persistence.RegionPersistence.impl")
862     protected com.liferay.portal.service.persistence.RegionPersistence regionPersistence;
863     @BeanReference(name = "com.liferay.portal.service.persistence.ReleasePersistence.impl")
864     protected com.liferay.portal.service.persistence.ReleasePersistence releasePersistence;
865     @BeanReference(name = "com.liferay.portal.service.persistence.ResourcePersistence.impl")
866     protected com.liferay.portal.service.persistence.ResourcePersistence resourcePersistence;
867     @BeanReference(name = "com.liferay.portal.service.persistence.ResourceActionPersistence.impl")
868     protected com.liferay.portal.service.persistence.ResourceActionPersistence resourceActionPersistence;
869     @BeanReference(name = "com.liferay.portal.service.persistence.ResourceCodePersistence.impl")
870     protected com.liferay.portal.service.persistence.ResourceCodePersistence resourceCodePersistence;
871     @BeanReference(name = "com.liferay.portal.service.persistence.ResourcePermissionPersistence.impl")
872     protected com.liferay.portal.service.persistence.ResourcePermissionPersistence resourcePermissionPersistence;
873     @BeanReference(name = "com.liferay.portal.service.persistence.RolePersistence.impl")
874     protected com.liferay.portal.service.persistence.RolePersistence rolePersistence;
875     @BeanReference(name = "com.liferay.portal.service.persistence.ServiceComponentPersistence.impl")
876     protected com.liferay.portal.service.persistence.ServiceComponentPersistence serviceComponentPersistence;
877     @BeanReference(name = "com.liferay.portal.service.persistence.ShardPersistence.impl")
878     protected com.liferay.portal.service.persistence.ShardPersistence shardPersistence;
879     @BeanReference(name = "com.liferay.portal.service.persistence.SubscriptionPersistence.impl")
880     protected com.liferay.portal.service.persistence.SubscriptionPersistence subscriptionPersistence;
881     @BeanReference(name = "com.liferay.portal.service.persistence.UserPersistence.impl")
882     protected com.liferay.portal.service.persistence.UserPersistence userPersistence;
883     @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupPersistence.impl")
884     protected com.liferay.portal.service.persistence.UserGroupPersistence userGroupPersistence;
885     @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupRolePersistence.impl")
886     protected com.liferay.portal.service.persistence.UserGroupRolePersistence userGroupRolePersistence;
887     @BeanReference(name = "com.liferay.portal.service.persistence.UserIdMapperPersistence.impl")
888     protected com.liferay.portal.service.persistence.UserIdMapperPersistence userIdMapperPersistence;
889     @BeanReference(name = "com.liferay.portal.service.persistence.UserTrackerPersistence.impl")
890     protected com.liferay.portal.service.persistence.UserTrackerPersistence userTrackerPersistence;
891     @BeanReference(name = "com.liferay.portal.service.persistence.UserTrackerPathPersistence.impl")
892     protected com.liferay.portal.service.persistence.UserTrackerPathPersistence userTrackerPathPersistence;
893     @BeanReference(name = "com.liferay.portal.service.persistence.WebDAVPropsPersistence.impl")
894     protected com.liferay.portal.service.persistence.WebDAVPropsPersistence webDAVPropsPersistence;
895     @BeanReference(name = "com.liferay.portal.service.persistence.WebsitePersistence.impl")
896     protected com.liferay.portal.service.persistence.WebsitePersistence websitePersistence;
897     private static Log _log = LogFactoryUtil.getLog(ImagePersistenceImpl.class);
898 }