001    /**
002     * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.social.service.persistence;
016    
017    import com.liferay.portal.NoSuchModelException;
018    import com.liferay.portal.kernel.annotation.BeanReference;
019    import com.liferay.portal.kernel.cache.CacheRegistryUtil;
020    import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
021    import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
022    import com.liferay.portal.kernel.dao.orm.FinderPath;
023    import com.liferay.portal.kernel.dao.orm.Query;
024    import com.liferay.portal.kernel.dao.orm.QueryUtil;
025    import com.liferay.portal.kernel.dao.orm.Session;
026    import com.liferay.portal.kernel.exception.SystemException;
027    import com.liferay.portal.kernel.log.Log;
028    import com.liferay.portal.kernel.log.LogFactoryUtil;
029    import com.liferay.portal.kernel.util.GetterUtil;
030    import com.liferay.portal.kernel.util.InstanceFactory;
031    import com.liferay.portal.kernel.util.OrderByComparator;
032    import com.liferay.portal.kernel.util.StringBundler;
033    import com.liferay.portal.kernel.util.StringUtil;
034    import com.liferay.portal.model.ModelListener;
035    import com.liferay.portal.service.persistence.BatchSessionUtil;
036    import com.liferay.portal.service.persistence.ResourcePersistence;
037    import com.liferay.portal.service.persistence.UserPersistence;
038    import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
039    
040    import com.liferay.portlet.social.NoSuchEquityHistoryException;
041    import com.liferay.portlet.social.model.SocialEquityHistory;
042    import com.liferay.portlet.social.model.impl.SocialEquityHistoryImpl;
043    import com.liferay.portlet.social.model.impl.SocialEquityHistoryModelImpl;
044    
045    import java.io.Serializable;
046    
047    import java.util.ArrayList;
048    import java.util.Collections;
049    import java.util.List;
050    
051    /**
052     * @author    Brian Wing Shun Chan
053     * @see       SocialEquityHistoryPersistence
054     * @see       SocialEquityHistoryUtil
055     * @generated
056     */
057    public class SocialEquityHistoryPersistenceImpl extends BasePersistenceImpl<SocialEquityHistory>
058            implements SocialEquityHistoryPersistence {
059            public static final String FINDER_CLASS_NAME_ENTITY = SocialEquityHistoryImpl.class.getName();
060            public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
061                    ".List";
062            public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(SocialEquityHistoryModelImpl.ENTITY_CACHE_ENABLED,
063                            SocialEquityHistoryModelImpl.FINDER_CACHE_ENABLED,
064                            FINDER_CLASS_NAME_LIST, "findAll", new String[0]);
065            public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(SocialEquityHistoryModelImpl.ENTITY_CACHE_ENABLED,
066                            SocialEquityHistoryModelImpl.FINDER_CACHE_ENABLED,
067                            FINDER_CLASS_NAME_LIST, "countAll", new String[0]);
068    
069            public void cacheResult(SocialEquityHistory socialEquityHistory) {
070                    EntityCacheUtil.putResult(SocialEquityHistoryModelImpl.ENTITY_CACHE_ENABLED,
071                            SocialEquityHistoryImpl.class, socialEquityHistory.getPrimaryKey(),
072                            socialEquityHistory);
073            }
074    
075            public void cacheResult(List<SocialEquityHistory> socialEquityHistories) {
076                    for (SocialEquityHistory socialEquityHistory : socialEquityHistories) {
077                            if (EntityCacheUtil.getResult(
078                                                    SocialEquityHistoryModelImpl.ENTITY_CACHE_ENABLED,
079                                                    SocialEquityHistoryImpl.class,
080                                                    socialEquityHistory.getPrimaryKey(), this) == null) {
081                                    cacheResult(socialEquityHistory);
082                            }
083                    }
084            }
085    
086            public void clearCache() {
087                    CacheRegistryUtil.clear(SocialEquityHistoryImpl.class.getName());
088                    EntityCacheUtil.clearCache(SocialEquityHistoryImpl.class.getName());
089                    FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
090                    FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
091            }
092    
093            public void clearCache(SocialEquityHistory socialEquityHistory) {
094                    EntityCacheUtil.removeResult(SocialEquityHistoryModelImpl.ENTITY_CACHE_ENABLED,
095                            SocialEquityHistoryImpl.class, socialEquityHistory.getPrimaryKey());
096            }
097    
098            public SocialEquityHistory create(long equityHistoryId) {
099                    SocialEquityHistory socialEquityHistory = new SocialEquityHistoryImpl();
100    
101                    socialEquityHistory.setNew(true);
102                    socialEquityHistory.setPrimaryKey(equityHistoryId);
103    
104                    return socialEquityHistory;
105            }
106    
107            public SocialEquityHistory remove(Serializable primaryKey)
108                    throws NoSuchModelException, SystemException {
109                    return remove(((Long)primaryKey).longValue());
110            }
111    
112            public SocialEquityHistory remove(long equityHistoryId)
113                    throws NoSuchEquityHistoryException, SystemException {
114                    Session session = null;
115    
116                    try {
117                            session = openSession();
118    
119                            SocialEquityHistory socialEquityHistory = (SocialEquityHistory)session.get(SocialEquityHistoryImpl.class,
120                                            new Long(equityHistoryId));
121    
122                            if (socialEquityHistory == null) {
123                                    if (_log.isWarnEnabled()) {
124                                            _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
125                                                    equityHistoryId);
126                                    }
127    
128                                    throw new NoSuchEquityHistoryException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
129                                            equityHistoryId);
130                            }
131    
132                            return remove(socialEquityHistory);
133                    }
134                    catch (NoSuchEquityHistoryException nsee) {
135                            throw nsee;
136                    }
137                    catch (Exception e) {
138                            throw processException(e);
139                    }
140                    finally {
141                            closeSession(session);
142                    }
143            }
144    
145            protected SocialEquityHistory removeImpl(
146                    SocialEquityHistory socialEquityHistory) throws SystemException {
147                    socialEquityHistory = toUnwrappedModel(socialEquityHistory);
148    
149                    Session session = null;
150    
151                    try {
152                            session = openSession();
153    
154                            if (socialEquityHistory.isCachedModel() ||
155                                            BatchSessionUtil.isEnabled()) {
156                                    Object staleObject = session.get(SocialEquityHistoryImpl.class,
157                                                    socialEquityHistory.getPrimaryKeyObj());
158    
159                                    if (staleObject != null) {
160                                            session.evict(staleObject);
161                                    }
162                            }
163    
164                            session.delete(socialEquityHistory);
165    
166                            session.flush();
167                    }
168                    catch (Exception e) {
169                            throw processException(e);
170                    }
171                    finally {
172                            closeSession(session);
173                    }
174    
175                    FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
176    
177                    EntityCacheUtil.removeResult(SocialEquityHistoryModelImpl.ENTITY_CACHE_ENABLED,
178                            SocialEquityHistoryImpl.class, socialEquityHistory.getPrimaryKey());
179    
180                    return socialEquityHistory;
181            }
182    
183            public SocialEquityHistory updateImpl(
184                    com.liferay.portlet.social.model.SocialEquityHistory socialEquityHistory,
185                    boolean merge) throws SystemException {
186                    socialEquityHistory = toUnwrappedModel(socialEquityHistory);
187    
188                    Session session = null;
189    
190                    try {
191                            session = openSession();
192    
193                            BatchSessionUtil.update(session, socialEquityHistory, merge);
194    
195                            socialEquityHistory.setNew(false);
196                    }
197                    catch (Exception e) {
198                            throw processException(e);
199                    }
200                    finally {
201                            closeSession(session);
202                    }
203    
204                    FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
205    
206                    EntityCacheUtil.putResult(SocialEquityHistoryModelImpl.ENTITY_CACHE_ENABLED,
207                            SocialEquityHistoryImpl.class, socialEquityHistory.getPrimaryKey(),
208                            socialEquityHistory);
209    
210                    return socialEquityHistory;
211            }
212    
213            protected SocialEquityHistory toUnwrappedModel(
214                    SocialEquityHistory socialEquityHistory) {
215                    if (socialEquityHistory instanceof SocialEquityHistoryImpl) {
216                            return socialEquityHistory;
217                    }
218    
219                    SocialEquityHistoryImpl socialEquityHistoryImpl = new SocialEquityHistoryImpl();
220    
221                    socialEquityHistoryImpl.setNew(socialEquityHistory.isNew());
222                    socialEquityHistoryImpl.setPrimaryKey(socialEquityHistory.getPrimaryKey());
223    
224                    socialEquityHistoryImpl.setEquityHistoryId(socialEquityHistory.getEquityHistoryId());
225                    socialEquityHistoryImpl.setGroupId(socialEquityHistory.getGroupId());
226                    socialEquityHistoryImpl.setCompanyId(socialEquityHistory.getCompanyId());
227                    socialEquityHistoryImpl.setUserId(socialEquityHistory.getUserId());
228                    socialEquityHistoryImpl.setCreateDate(socialEquityHistory.getCreateDate());
229                    socialEquityHistoryImpl.setPersonalEquity(socialEquityHistory.getPersonalEquity());
230    
231                    return socialEquityHistoryImpl;
232            }
233    
234            public SocialEquityHistory findByPrimaryKey(Serializable primaryKey)
235                    throws NoSuchModelException, SystemException {
236                    return findByPrimaryKey(((Long)primaryKey).longValue());
237            }
238    
239            public SocialEquityHistory findByPrimaryKey(long equityHistoryId)
240                    throws NoSuchEquityHistoryException, SystemException {
241                    SocialEquityHistory socialEquityHistory = fetchByPrimaryKey(equityHistoryId);
242    
243                    if (socialEquityHistory == null) {
244                            if (_log.isWarnEnabled()) {
245                                    _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + equityHistoryId);
246                            }
247    
248                            throw new NoSuchEquityHistoryException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
249                                    equityHistoryId);
250                    }
251    
252                    return socialEquityHistory;
253            }
254    
255            public SocialEquityHistory fetchByPrimaryKey(Serializable primaryKey)
256                    throws SystemException {
257                    return fetchByPrimaryKey(((Long)primaryKey).longValue());
258            }
259    
260            public SocialEquityHistory fetchByPrimaryKey(long equityHistoryId)
261                    throws SystemException {
262                    SocialEquityHistory socialEquityHistory = (SocialEquityHistory)EntityCacheUtil.getResult(SocialEquityHistoryModelImpl.ENTITY_CACHE_ENABLED,
263                                    SocialEquityHistoryImpl.class, equityHistoryId, this);
264    
265                    if (socialEquityHistory == null) {
266                            Session session = null;
267    
268                            try {
269                                    session = openSession();
270    
271                                    socialEquityHistory = (SocialEquityHistory)session.get(SocialEquityHistoryImpl.class,
272                                                    new Long(equityHistoryId));
273                            }
274                            catch (Exception e) {
275                                    throw processException(e);
276                            }
277                            finally {
278                                    if (socialEquityHistory != null) {
279                                            cacheResult(socialEquityHistory);
280                                    }
281    
282                                    closeSession(session);
283                            }
284                    }
285    
286                    return socialEquityHistory;
287            }
288    
289            public List<SocialEquityHistory> findAll() throws SystemException {
290                    return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
291            }
292    
293            public List<SocialEquityHistory> findAll(int start, int end)
294                    throws SystemException {
295                    return findAll(start, end, null);
296            }
297    
298            public List<SocialEquityHistory> findAll(int start, int end,
299                    OrderByComparator orderByComparator) throws SystemException {
300                    Object[] finderArgs = new Object[] {
301                                    String.valueOf(start), String.valueOf(end),
302                                    String.valueOf(orderByComparator)
303                            };
304    
305                    List<SocialEquityHistory> list = (List<SocialEquityHistory>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
306                                    finderArgs, this);
307    
308                    if (list == null) {
309                            Session session = null;
310    
311                            try {
312                                    session = openSession();
313    
314                                    StringBundler query = null;
315                                    String sql = null;
316    
317                                    if (orderByComparator != null) {
318                                            query = new StringBundler(2 +
319                                                            (orderByComparator.getOrderByFields().length * 3));
320    
321                                            query.append(_SQL_SELECT_SOCIALEQUITYHISTORY);
322    
323                                            appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
324                                                    orderByComparator);
325    
326                                            sql = query.toString();
327                                    }
328                                    else {
329                                            sql = _SQL_SELECT_SOCIALEQUITYHISTORY;
330                                    }
331    
332                                    Query q = session.createQuery(sql);
333    
334                                    if (orderByComparator == null) {
335                                            list = (List<SocialEquityHistory>)QueryUtil.list(q,
336                                                            getDialect(), start, end, false);
337    
338                                            Collections.sort(list);
339                                    }
340                                    else {
341                                            list = (List<SocialEquityHistory>)QueryUtil.list(q,
342                                                            getDialect(), start, end);
343                                    }
344                            }
345                            catch (Exception e) {
346                                    throw processException(e);
347                            }
348                            finally {
349                                    if (list == null) {
350                                            list = new ArrayList<SocialEquityHistory>();
351                                    }
352    
353                                    cacheResult(list);
354    
355                                    FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
356    
357                                    closeSession(session);
358                            }
359                    }
360    
361                    return list;
362            }
363    
364            public void removeAll() throws SystemException {
365                    for (SocialEquityHistory socialEquityHistory : findAll()) {
366                            remove(socialEquityHistory);
367                    }
368            }
369    
370            public int countAll() throws SystemException {
371                    Object[] finderArgs = new Object[0];
372    
373                    Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
374                                    finderArgs, this);
375    
376                    if (count == null) {
377                            Session session = null;
378    
379                            try {
380                                    session = openSession();
381    
382                                    Query q = session.createQuery(_SQL_COUNT_SOCIALEQUITYHISTORY);
383    
384                                    count = (Long)q.uniqueResult();
385                            }
386                            catch (Exception e) {
387                                    throw processException(e);
388                            }
389                            finally {
390                                    if (count == null) {
391                                            count = Long.valueOf(0);
392                                    }
393    
394                                    FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
395                                            count);
396    
397                                    closeSession(session);
398                            }
399                    }
400    
401                    return count.intValue();
402            }
403    
404            public void afterPropertiesSet() {
405                    String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
406                                            com.liferay.portal.util.PropsUtil.get(
407                                                    "value.object.listener.com.liferay.portlet.social.model.SocialEquityHistory")));
408    
409                    if (listenerClassNames.length > 0) {
410                            try {
411                                    List<ModelListener<SocialEquityHistory>> listenersList = new ArrayList<ModelListener<SocialEquityHistory>>();
412    
413                                    for (String listenerClassName : listenerClassNames) {
414                                            listenersList.add((ModelListener<SocialEquityHistory>)InstanceFactory.newInstance(
415                                                            listenerClassName));
416                                    }
417    
418                                    listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
419                            }
420                            catch (Exception e) {
421                                    _log.error(e);
422                            }
423                    }
424            }
425    
426            @BeanReference(type = SocialActivityPersistence.class)
427            protected SocialActivityPersistence socialActivityPersistence;
428            @BeanReference(type = SocialEquityAssetEntryPersistence.class)
429            protected SocialEquityAssetEntryPersistence socialEquityAssetEntryPersistence;
430            @BeanReference(type = SocialEquityHistoryPersistence.class)
431            protected SocialEquityHistoryPersistence socialEquityHistoryPersistence;
432            @BeanReference(type = SocialEquityLogPersistence.class)
433            protected SocialEquityLogPersistence socialEquityLogPersistence;
434            @BeanReference(type = SocialEquitySettingPersistence.class)
435            protected SocialEquitySettingPersistence socialEquitySettingPersistence;
436            @BeanReference(type = SocialEquityUserPersistence.class)
437            protected SocialEquityUserPersistence socialEquityUserPersistence;
438            @BeanReference(type = SocialRelationPersistence.class)
439            protected SocialRelationPersistence socialRelationPersistence;
440            @BeanReference(type = SocialRequestPersistence.class)
441            protected SocialRequestPersistence socialRequestPersistence;
442            @BeanReference(type = ResourcePersistence.class)
443            protected ResourcePersistence resourcePersistence;
444            @BeanReference(type = UserPersistence.class)
445            protected UserPersistence userPersistence;
446            private static final String _SQL_SELECT_SOCIALEQUITYHISTORY = "SELECT socialEquityHistory FROM SocialEquityHistory socialEquityHistory";
447            private static final String _SQL_COUNT_SOCIALEQUITYHISTORY = "SELECT COUNT(socialEquityHistory) FROM SocialEquityHistory socialEquityHistory";
448            private static final String _ORDER_BY_ENTITY_ALIAS = "socialEquityHistory.";
449            private static final String _NO_SUCH_ENTITY_WITH_PRIMARY_KEY = "No SocialEquityHistory exists with the primary key ";
450            private static Log _log = LogFactoryUtil.getLog(SocialEquityHistoryPersistenceImpl.class);
451    }