/** * Creates a new d l sync event with the primary key. Does not add the d l sync event to the * database. * * @param syncEventId the primary key for the new d l sync event * @return the new d l sync event */ @Override public DLSyncEvent create(long syncEventId) { DLSyncEvent dlSyncEvent = new DLSyncEventImpl(); dlSyncEvent.setNew(true); dlSyncEvent.setPrimaryKey(syncEventId); return dlSyncEvent; }
/** * Caches the d l sync event in the entity cache if it is enabled. * * @param dlSyncEvent the d l sync event */ @Override public void cacheResult(DLSyncEvent dlSyncEvent) { EntityCacheUtil.putResult( DLSyncEventModelImpl.ENTITY_CACHE_ENABLED, DLSyncEventImpl.class, dlSyncEvent.getPrimaryKey(), dlSyncEvent); FinderCacheUtil.putResult( FINDER_PATH_FETCH_BY_TYPEPK, new Object[] {dlSyncEvent.getTypePK()}, dlSyncEvent); dlSyncEvent.resetOriginalValues(); }
@Override public void clearCache(List<DLSyncEvent> dlSyncEvents) { FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITH_PAGINATION); FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION); for (DLSyncEvent dlSyncEvent : dlSyncEvents) { EntityCacheUtil.removeResult( DLSyncEventModelImpl.ENTITY_CACHE_ENABLED, DLSyncEventImpl.class, dlSyncEvent.getPrimaryKey()); clearUniqueFindersCache(dlSyncEvent); } }
/** * Caches the d l sync events in the entity cache if it is enabled. * * @param dlSyncEvents the d l sync events */ @Override public void cacheResult(List<DLSyncEvent> dlSyncEvents) { for (DLSyncEvent dlSyncEvent : dlSyncEvents) { if (EntityCacheUtil.getResult( DLSyncEventModelImpl.ENTITY_CACHE_ENABLED, DLSyncEventImpl.class, dlSyncEvent.getPrimaryKey()) == null) { cacheResult(dlSyncEvent); } else { dlSyncEvent.resetOriginalValues(); } } }
@Override protected DLSyncEvent removeImpl(DLSyncEvent dlSyncEvent) throws SystemException { dlSyncEvent = toUnwrappedModel(dlSyncEvent); Session session = null; try { session = openSession(); if (!session.contains(dlSyncEvent)) { dlSyncEvent = (DLSyncEvent) session.get(DLSyncEventImpl.class, dlSyncEvent.getPrimaryKeyObj()); } if (dlSyncEvent != null) { session.delete(dlSyncEvent); } } catch (Exception e) { throw processException(e); } finally { closeSession(session); } if (dlSyncEvent != null) { clearCache(dlSyncEvent); } return dlSyncEvent; }
@Override public DLSyncEvent updateImpl(com.liferay.portlet.documentlibrary.model.DLSyncEvent dlSyncEvent) throws SystemException { dlSyncEvent = toUnwrappedModel(dlSyncEvent); boolean isNew = dlSyncEvent.isNew(); Session session = null; try { session = openSession(); if (dlSyncEvent.isNew()) { session.save(dlSyncEvent); dlSyncEvent.setNew(false); } else { session.merge(dlSyncEvent); } } catch (Exception e) { throw processException(e); } finally { closeSession(session); } FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITH_PAGINATION); if (isNew || !DLSyncEventModelImpl.COLUMN_BITMASK_ENABLED) { FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION); } EntityCacheUtil.putResult( DLSyncEventModelImpl.ENTITY_CACHE_ENABLED, DLSyncEventImpl.class, dlSyncEvent.getPrimaryKey(), dlSyncEvent, false); clearUniqueFindersCache(dlSyncEvent); cacheUniqueFindersCache(dlSyncEvent); dlSyncEvent.resetOriginalValues(); return dlSyncEvent; }
protected SyncDLObject checkModifiedTime(SyncDLObject syncDLObject, long typePk) { DynamicQuery dynamicQuery = DLSyncEventLocalServiceUtil.dynamicQuery(); dynamicQuery.add(RestrictionsFactoryUtil.eq("typePK", typePk)); List<DLSyncEvent> dlSyncEvents = DLSyncEventLocalServiceUtil.dynamicQuery(dynamicQuery); if (dlSyncEvents.isEmpty()) { return syncDLObject; } DLSyncEvent dlSyncEvent = dlSyncEvents.get(0); syncDLObject.setModifiedTime(dlSyncEvent.getModifiedTime()); return syncDLObject; }
protected void cacheUniqueFindersCache(DLSyncEvent dlSyncEvent) { if (dlSyncEvent.isNew()) { Object[] args = new Object[] {dlSyncEvent.getTypePK()}; FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_TYPEPK, args, Long.valueOf(1)); FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_TYPEPK, args, dlSyncEvent); } else { DLSyncEventModelImpl dlSyncEventModelImpl = (DLSyncEventModelImpl) dlSyncEvent; if ((dlSyncEventModelImpl.getColumnBitmask() & FINDER_PATH_FETCH_BY_TYPEPK.getColumnBitmask()) != 0) { Object[] args = new Object[] {dlSyncEvent.getTypePK()}; FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_TYPEPK, args, Long.valueOf(1)); FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_TYPEPK, args, dlSyncEvent); } } }
protected void clearUniqueFindersCache(DLSyncEvent dlSyncEvent) { DLSyncEventModelImpl dlSyncEventModelImpl = (DLSyncEventModelImpl) dlSyncEvent; Object[] args = new Object[] {dlSyncEvent.getTypePK()}; FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_TYPEPK, args); FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_TYPEPK, args); if ((dlSyncEventModelImpl.getColumnBitmask() & FINDER_PATH_FETCH_BY_TYPEPK.getColumnBitmask()) != 0) { args = new Object[] {dlSyncEventModelImpl.getOriginalTypePK()}; FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_TYPEPK, args); FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_TYPEPK, args); } }
protected DLSyncEvent toUnwrappedModel(DLSyncEvent dlSyncEvent) { if (dlSyncEvent instanceof DLSyncEventImpl) { return dlSyncEvent; } DLSyncEventImpl dlSyncEventImpl = new DLSyncEventImpl(); dlSyncEventImpl.setNew(dlSyncEvent.isNew()); dlSyncEventImpl.setPrimaryKey(dlSyncEvent.getPrimaryKey()); dlSyncEventImpl.setSyncEventId(dlSyncEvent.getSyncEventId()); dlSyncEventImpl.setModifiedTime(dlSyncEvent.getModifiedTime()); dlSyncEventImpl.setEvent(dlSyncEvent.getEvent()); dlSyncEventImpl.setType(dlSyncEvent.getType()); dlSyncEventImpl.setTypePK(dlSyncEvent.getTypePK()); return dlSyncEventImpl; }
/** * Returns the d l sync event where typePK = ? or returns <code>null</code> if it could not be * found, optionally using the finder cache. * * @param typePK the type p k * @param retrieveFromCache whether to use the finder cache * @return the matching d l sync event, or <code>null</code> if a matching d l sync event could * not be found * @throws SystemException if a system exception occurred */ @Override public DLSyncEvent fetchByTypePK(long typePK, boolean retrieveFromCache) throws SystemException { Object[] finderArgs = new Object[] {typePK}; Object result = null; if (retrieveFromCache) { result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_TYPEPK, finderArgs, this); } if (result instanceof DLSyncEvent) { DLSyncEvent dlSyncEvent = (DLSyncEvent) result; if ((typePK != dlSyncEvent.getTypePK())) { result = null; } } if (result == null) { StringBundler query = new StringBundler(3); query.append(_SQL_SELECT_DLSYNCEVENT_WHERE); query.append(_FINDER_COLUMN_TYPEPK_TYPEPK_2); String sql = query.toString(); Session session = null; try { session = openSession(); Query q = session.createQuery(sql); QueryPos qPos = QueryPos.getInstance(q); qPos.add(typePK); List<DLSyncEvent> list = q.list(); if (list.isEmpty()) { FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_TYPEPK, finderArgs, list); } else { DLSyncEvent dlSyncEvent = list.get(0); result = dlSyncEvent; cacheResult(dlSyncEvent); if ((dlSyncEvent.getTypePK() != typePK)) { FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_TYPEPK, finderArgs, dlSyncEvent); } } } catch (Exception e) { FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_TYPEPK, finderArgs); throw processException(e); } finally { closeSession(session); } } if (result instanceof List<?>) { return null; } else { return (DLSyncEvent) result; } }
/** * Returns an ordered range of all the d l sync events where modifiedTime > ?. * * <p>Useful when paginating results. Returns a maximum of <code>end - start</code> instances. * <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result * set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start * </code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} * will return the full result set. If <code>orderByComparator</code> is specified, then the query * will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and * pagination is required (<code>start</code> and <code>end</code> are not {@link * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default * ORDER BY logic from {@link * com.liferay.portlet.documentlibrary.model.impl.DLSyncEventModelImpl}. If both <code> * orderByComparator</code> and pagination are absent, for performance reasons, the query will not * have an ORDER BY clause and the returned result set will be sorted on by the primary key in an * ascending order. * * @param modifiedTime the modified time * @param start the lower bound of the range of d l sync events * @param end the upper bound of the range of d l sync events (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of matching d l sync events * @throws SystemException if a system exception occurred */ @Override public List<DLSyncEvent> findByModifiedTime( long modifiedTime, int start, int end, OrderByComparator orderByComparator) throws SystemException { boolean pagination = true; FinderPath finderPath = null; Object[] finderArgs = null; finderPath = FINDER_PATH_WITH_PAGINATION_FIND_BY_MODIFIEDTIME; finderArgs = new Object[] {modifiedTime, start, end, orderByComparator}; List<DLSyncEvent> list = (List<DLSyncEvent>) FinderCacheUtil.getResult(finderPath, finderArgs, this); if ((list != null) && !list.isEmpty()) { for (DLSyncEvent dlSyncEvent : list) { if ((modifiedTime >= dlSyncEvent.getModifiedTime())) { list = null; break; } } } if (list == null) { StringBundler query = null; if (orderByComparator != null) { query = new StringBundler(3 + (orderByComparator.getOrderByFields().length * 3)); } else { query = new StringBundler(3); } query.append(_SQL_SELECT_DLSYNCEVENT_WHERE); query.append(_FINDER_COLUMN_MODIFIEDTIME_MODIFIEDTIME_2); if (orderByComparator != null) { appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); } else if (pagination) { query.append(DLSyncEventModelImpl.ORDER_BY_JPQL); } String sql = query.toString(); Session session = null; try { session = openSession(); Query q = session.createQuery(sql); QueryPos qPos = QueryPos.getInstance(q); qPos.add(modifiedTime); if (!pagination) { list = (List<DLSyncEvent>) QueryUtil.list(q, getDialect(), start, end, false); Collections.sort(list); list = Collections.unmodifiableList(list); } else { list = (List<DLSyncEvent>) QueryUtil.list(q, getDialect(), start, end); } cacheResult(list); FinderCacheUtil.putResult(finderPath, finderArgs, list); } catch (Exception e) { FinderCacheUtil.removeResult(finderPath, finderArgs); throw processException(e); } finally { closeSession(session); } } return list; }