protected void addOrder( Criteria criteria, OrderByComparator orderByComparator, String... skipFields) { if (orderByComparator == null) { return; } String[] orderByFields = orderByComparator.getOrderByFields(); Arrays.sort(skipFields); for (String orderByField : orderByFields) { Order order = null; String jbpmField = _fieldMap.get(orderByField); if (jbpmField == null) { jbpmField = orderByField; } if (Arrays.binarySearch(skipFields, jbpmField) < 0) { if (orderByComparator.isAscending()) { order = Order.asc(jbpmField); } else { order = Order.desc(jbpmField); } criteria.addOrder(order); } } }
public String replaceOrderBy(String sql, OrderByComparator obc) { if (obc == null) { return sql; } return removeOrderBy(sql).concat(_ORDER_BY_CLAUSE).concat(obc.getOrderBy()); }
/** * Returns an ordered range of all the layout sets where groupId = ?. * * <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. * * @param groupId the group ID * @param start the lower bound of the range of layout sets * @param end the upper bound of the range of layout sets (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of matching layout sets * @throws SystemException if a system exception occurred */ public List<LayoutSet> findByGroupId( long groupId, int start, int end, OrderByComparator orderByComparator) throws SystemException { Object[] finderArgs = new Object[] { groupId, String.valueOf(start), String.valueOf(end), String.valueOf(orderByComparator) }; List<LayoutSet> list = (List<LayoutSet>) FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_GROUPID, finderArgs, this); if (list == null) { StringBundler query = null; if (orderByComparator != null) { query = new StringBundler(3 + (orderByComparator.getOrderByFields().length * 3)); } else { query = new StringBundler(2); } query.append(_SQL_SELECT_LAYOUTSET_WHERE); query.append(_FINDER_COLUMN_GROUPID_GROUPID_2); if (orderByComparator != null) { appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); } String sql = query.toString(); Session session = null; try { session = openSession(); Query q = session.createQuery(sql); QueryPos qPos = QueryPos.getInstance(q); qPos.add(groupId); list = (List<LayoutSet>) QueryUtil.list(q, getDialect(), start, end); } catch (Exception e) { throw processException(e); } finally { if (list == null) { FinderCacheUtil.removeResult(FINDER_PATH_FIND_BY_GROUPID, finderArgs); } else { cacheResult(list); FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_GROUPID, finderArgs, list); } closeSession(session); } } return list; }
public List<ViewListTitleCompetencies> findByTitleId( int titleId, int start, int end, OrderByComparator obc) throws SystemException { Object[] finderArgs = new Object[] { new Integer(titleId), String.valueOf(start), String.valueOf(end), String.valueOf(obc) }; List<ViewListTitleCompetencies> list = (List<ViewListTitleCompetencies>) FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_TITLEID, finderArgs, this); if (list == null) { Session session = null; try { session = openSession(); StringBuilder query = new StringBuilder(); query.append("FROM larion.progate.cds.model.ViewListTitleCompetencies WHERE "); query.append("title_id = ?"); query.append(" "); if (obc != null) { query.append("ORDER BY "); query.append(obc.getOrderBy()); } else { query.append("ORDER BY "); query.append("competency_number_order ASC"); } Query q = session.createQuery(query.toString()); QueryPos qPos = QueryPos.getInstance(q); qPos.add(titleId); list = (List<ViewListTitleCompetencies>) QueryUtil.list(q, getDialect(), start, end); } catch (Exception e) { throw processException(e); } finally { if (list == null) { list = new ArrayList<ViewListTitleCompetencies>(); } cacheResult(list); FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_TITLEID, finderArgs, list); closeSession(session); } } return list; }
/** * Returns an ordered range of all the social equity histories. * * <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. * * @param start the lower bound of the range of social equity histories * @param end the upper bound of the range of social equity histories (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of social equity histories * @throws SystemException if a system exception occurred */ public List<SocialEquityHistory> findAll(int start, int end, OrderByComparator orderByComparator) throws SystemException { Object[] finderArgs = new Object[] { String.valueOf(start), String.valueOf(end), String.valueOf(orderByComparator) }; List<SocialEquityHistory> list = (List<SocialEquityHistory>) FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL, finderArgs, this); if (list == null) { StringBundler query = null; String sql = null; if (orderByComparator != null) { query = new StringBundler(2 + (orderByComparator.getOrderByFields().length * 3)); query.append(_SQL_SELECT_SOCIALEQUITYHISTORY); appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); sql = query.toString(); } else { sql = _SQL_SELECT_SOCIALEQUITYHISTORY; } Session session = null; try { session = openSession(); Query q = session.createQuery(sql); if (orderByComparator == null) { list = (List<SocialEquityHistory>) QueryUtil.list(q, getDialect(), start, end, false); Collections.sort(list); } else { list = (List<SocialEquityHistory>) QueryUtil.list(q, getDialect(), start, end); } } catch (Exception e) { throw processException(e); } finally { if (list == null) { FinderCacheUtil.removeResult(FINDER_PATH_FIND_ALL, finderArgs); } else { cacheResult(list); FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list); } closeSession(session); } } return list; }
public PmlEdmLevelSend[] findByLevelSendName_PrevAndNext( int levelSendId, String levelSendName, OrderByComparator obc) throws NoSuchPmlEdmLevelSendException, SystemException { PmlEdmLevelSend pmlEdmLevelSend = findByPrimaryKey(levelSendId); int count = countByLevelSendName(levelSendName); Session session = null; try { session = openSession(); StringBuilder query = new StringBuilder(); query.append("FROM com.sgs.portlet.pmllevelsend.model.PmlEdmLevelSend WHERE "); if (levelSendName == null) { query.append("levelsendname LIKE null"); } else { query.append("levelsendname LIKE ?"); } query.append(" "); if (obc != null) { query.append("ORDER BY "); query.append(obc.getOrderBy()); } else { query.append("ORDER BY "); query.append("levelsendname ASC"); } Query q = session.createQuery(query.toString()); QueryPos qPos = QueryPos.getInstance(q); if (levelSendName != null) { qPos.add(levelSendName); } Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc, pmlEdmLevelSend); PmlEdmLevelSend[] array = new PmlEdmLevelSendImpl[3]; array[0] = (PmlEdmLevelSend) objArray[0]; array[1] = (PmlEdmLevelSend) objArray[1]; array[2] = (PmlEdmLevelSend) objArray[2]; return array; } catch (Exception e) { throw processException(e); } finally { closeSession(session); } }
public List<ViewListTitleCompetencies> findAll(int start, int end, OrderByComparator obc) throws SystemException { Object[] finderArgs = new Object[] {String.valueOf(start), String.valueOf(end), String.valueOf(obc)}; List<ViewListTitleCompetencies> list = (List<ViewListTitleCompetencies>) FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL, finderArgs, this); if (list == null) { Session session = null; try { session = openSession(); StringBuilder query = new StringBuilder(); query.append("FROM larion.progate.cds.model.ViewListTitleCompetencies "); if (obc != null) { query.append("ORDER BY "); query.append(obc.getOrderBy()); } else { query.append("ORDER BY "); query.append("competency_number_order ASC"); } Query q = session.createQuery(query.toString()); if (obc == null) { list = (List<ViewListTitleCompetencies>) QueryUtil.list(q, getDialect(), start, end, false); Collections.sort(list); } else { list = (List<ViewListTitleCompetencies>) QueryUtil.list(q, getDialect(), start, end); } } catch (Exception e) { throw processException(e); } finally { if (list == null) { list = new ArrayList<ViewListTitleCompetencies>(); } cacheResult(list); FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list); closeSession(session); } } return list; }
public SoPhongVanBanNoiBo[] findByPhongVanBanNoiBo_PrevAndNext( SoPhongVanBanNoiBoPK soPhongVanBanNoiBoPK, String phongVanBanNoiBoId, OrderByComparator obc) throws NoSuchSoPhongVanBanNoiBoException, SystemException { SoPhongVanBanNoiBo soPhongVanBanNoiBo = findByPrimaryKey(soPhongVanBanNoiBoPK); int count = countByPhongVanBanNoiBo(phongVanBanNoiBoId); Session session = null; try { session = openSession(); StringBuilder query = new StringBuilder(); query.append("FROM com.sgs.portlet.sovanbannoibo.model.SoPhongVanBanNoiBo WHERE "); if (phongVanBanNoiBoId == null) { query.append("phongVanBanNoiBoId IS NULL"); } else { query.append("phongVanBanNoiBoId = ?"); } query.append(" "); if (obc != null) { query.append("ORDER BY "); query.append(obc.getOrderBy()); } Query q = session.createQuery(query.toString()); QueryPos qPos = QueryPos.getInstance(q); if (phongVanBanNoiBoId != null) { qPos.add(phongVanBanNoiBoId); } Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc, soPhongVanBanNoiBo); SoPhongVanBanNoiBo[] array = new SoPhongVanBanNoiBoImpl[3]; array[0] = (SoPhongVanBanNoiBo) objArray[0]; array[1] = (SoPhongVanBanNoiBo) objArray[1]; array[2] = (SoPhongVanBanNoiBo) objArray[2]; return array; } catch (Exception e) { throw processException(e); } finally { closeSession(session); } }
/** * Returns an ordered range of all the h r holidaies associated with the h r office. * * <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. * * @param pk the primary key of the h r office * @param start the lower bound of the range of h r offices * @param end the upper bound of the range of h r offices (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of h r holidaies associated with the h r office * @throws SystemException if a system exception occurred */ public List<com.liferay.hr.model.HRHoliday> getHRHolidaies( long pk, int start, int end, OrderByComparator orderByComparator) throws SystemException { Object[] finderArgs = new Object[] { pk, String.valueOf(start), String.valueOf(end), String.valueOf(orderByComparator) }; List<com.liferay.hr.model.HRHoliday> list = (List<com.liferay.hr.model.HRHoliday>) FinderCacheUtil.getResult(FINDER_PATH_GET_HRHOLIDAIES, finderArgs, this); if (list == null) { Session session = null; try { session = openSession(); String sql = null; if (orderByComparator != null) { sql = _SQL_GETHRHOLIDAIES.concat(ORDER_BY_CLAUSE).concat(orderByComparator.getOrderBy()); } else { sql = _SQL_GETHRHOLIDAIES; } SQLQuery q = session.createSQLQuery(sql); q.addEntity("HRHoliday", com.liferay.hr.model.impl.HRHolidayImpl.class); QueryPos qPos = QueryPos.getInstance(q); qPos.add(pk); list = (List<com.liferay.hr.model.HRHoliday>) QueryUtil.list(q, getDialect(), start, end); } catch (Exception e) { throw processException(e); } finally { if (list == null) { FinderCacheUtil.removeResult(FINDER_PATH_GET_HRHOLIDAIES, finderArgs); } else { hrHolidayPersistence.cacheResult(list); FinderCacheUtil.putResult(FINDER_PATH_GET_HRHOLIDAIES, finderArgs, list); } closeSession(session); } } return list; }
public ViewListTitleCompetencies[] findByTitleId_PrevAndNext( String id, int titleId, OrderByComparator obc) throws NoSuchViewListTitleCompetenciesException, SystemException { ViewListTitleCompetencies viewListTitleCompetencies = findByPrimaryKey(id); int count = countByTitleId(titleId); Session session = null; try { session = openSession(); StringBuilder query = new StringBuilder(); query.append("FROM larion.progate.cds.model.ViewListTitleCompetencies WHERE "); query.append("title_id = ?"); query.append(" "); if (obc != null) { query.append("ORDER BY "); query.append(obc.getOrderBy()); } else { query.append("ORDER BY "); query.append("competency_number_order ASC"); } Query q = session.createQuery(query.toString()); QueryPos qPos = QueryPos.getInstance(q); qPos.add(titleId); Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc, viewListTitleCompetencies); ViewListTitleCompetencies[] array = new ViewListTitleCompetenciesImpl[3]; array[0] = (ViewListTitleCompetencies) objArray[0]; array[1] = (ViewListTitleCompetencies) objArray[1]; array[2] = (ViewListTitleCompetencies) objArray[2]; return array; } catch (Exception e) { throw processException(e); } finally { closeSession(session); } }
/** * Returns an ordered range of all the shopping item fields where itemId = ?. * * <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. * * @param itemId the item ID * @param start the lower bound of the range of shopping item fields * @param end the upper bound of the range of shopping item fields (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of matching shopping item fields * @throws SystemException if a system exception occurred */ public List<ShoppingItemField> findByItemId( long itemId, int start, int end, OrderByComparator orderByComparator) throws SystemException { FinderPath finderPath = null; Object[] finderArgs = null; if ((start == QueryUtil.ALL_POS) && (end == QueryUtil.ALL_POS) && (orderByComparator == null)) { finderPath = FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_ITEMID; finderArgs = new Object[] {itemId}; } else { finderPath = FINDER_PATH_WITH_PAGINATION_FIND_BY_ITEMID; finderArgs = new Object[] {itemId, start, end, orderByComparator}; } List<ShoppingItemField> list = (List<ShoppingItemField>) FinderCacheUtil.getResult(finderPath, finderArgs, this); if ((list != null) && !list.isEmpty()) { for (ShoppingItemField shoppingItemField : list) { if ((itemId != shoppingItemField.getItemId())) { 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_SHOPPINGITEMFIELD_WHERE); query.append(_FINDER_COLUMN_ITEMID_ITEMID_2); if (orderByComparator != null) { appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); } else { query.append(ShoppingItemFieldModelImpl.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(itemId); list = (List<ShoppingItemField>) QueryUtil.list(q, getDialect(), start, end); } catch (Exception e) { throw processException(e); } finally { if (list == null) { FinderCacheUtil.removeResult(finderPath, finderArgs); } else { cacheResult(list); FinderCacheUtil.putResult(finderPath, finderArgs, list); } closeSession(session); } } return list; }
public List<PmlEdmLevelSend> findAll(int start, int end, OrderByComparator obc) throws SystemException { boolean finderClassNameCacheEnabled = PmlEdmLevelSendModelImpl.CACHE_ENABLED; String finderClassName = PmlEdmLevelSend.class.getName(); String finderMethodName = "findAll"; String[] finderParams = new String[] { "java.lang.Integer", "java.lang.Integer", "com.liferay.portal.kernel.util.OrderByComparator" }; Object[] finderArgs = new Object[] {String.valueOf(start), String.valueOf(end), String.valueOf(obc)}; Object result = null; if (finderClassNameCacheEnabled) { result = FinderCacheUtil.getResult( finderClassName, finderMethodName, finderParams, finderArgs, this); } if (result == null) { Session session = null; try { session = openSession(); StringBuilder query = new StringBuilder(); query.append("FROM com.sgs.portlet.pmllevelsend.model.PmlEdmLevelSend "); if (obc != null) { query.append("ORDER BY "); query.append(obc.getOrderBy()); } else { query.append("ORDER BY "); query.append("levelsendname ASC"); } Query q = session.createQuery(query.toString()); List<PmlEdmLevelSend> list = (List<PmlEdmLevelSend>) QueryUtil.list(q, getDialect(), start, end); if (obc == null) { Collections.sort(list); } FinderCacheUtil.putResult( finderClassNameCacheEnabled, finderClassName, finderMethodName, finderParams, finderArgs, list); return list; } catch (Exception e) { throw processException(e); } finally { closeSession(session); } } else { return (List<PmlEdmLevelSend>) result; } }
/** * Returns an ordered range of all the images where size < ?. * * <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. * * @param size the size * @param start the lower bound of the range of images * @param end the upper bound of the range of images (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of matching images * @throws SystemException if a system exception occurred */ public List<Image> findByLtSize(int size, int start, int end, OrderByComparator orderByComparator) throws SystemException { FinderPath finderPath = null; Object[] finderArgs = null; finderPath = FINDER_PATH_WITH_PAGINATION_FIND_BY_LTSIZE; finderArgs = new Object[] {size, start, end, orderByComparator}; List<Image> list = (List<Image>) FinderCacheUtil.getResult(finderPath, finderArgs, this); if ((list != null) && !list.isEmpty()) { for (Image image : list) { if ((size != image.getSize())) { 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_IMAGE_WHERE); query.append(_FINDER_COLUMN_LTSIZE_SIZE_2); if (orderByComparator != null) { appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); } else { query.append(ImageModelImpl.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(size); list = (List<Image>) QueryUtil.list(q, getDialect(), start, end); } catch (Exception e) { throw processException(e); } finally { if (list == null) { FinderCacheUtil.removeResult(finderPath, finderArgs); } else { cacheResult(list); FinderCacheUtil.putResult(finderPath, finderArgs, list); } closeSession(session); } } return list; }
protected ShoppingItemPrice getByItemId_PrevAndNext( Session session, ShoppingItemPrice shoppingItemPrice, long itemId, OrderByComparator<ShoppingItemPrice> orderByComparator, boolean previous) { StringBundler query = null; if (orderByComparator != null) { query = new StringBundler( 4 + (orderByComparator.getOrderByConditionFields().length * 3) + (orderByComparator.getOrderByFields().length * 3)); } else { query = new StringBundler(3); } query.append(_SQL_SELECT_SHOPPINGITEMPRICE_WHERE); query.append(_FINDER_COLUMN_ITEMID_ITEMID_2); if (orderByComparator != null) { String[] orderByConditionFields = orderByComparator.getOrderByConditionFields(); if (orderByConditionFields.length > 0) { query.append(WHERE_AND); } for (int i = 0; i < orderByConditionFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByConditionFields[i]); if ((i + 1) < orderByConditionFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN_HAS_NEXT); } else { query.append(WHERE_LESSER_THAN_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN); } else { query.append(WHERE_LESSER_THAN); } } } query.append(ORDER_BY_CLAUSE); String[] orderByFields = orderByComparator.getOrderByFields(); for (int i = 0; i < orderByFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByFields[i]); if ((i + 1) < orderByFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC_HAS_NEXT); } else { query.append(ORDER_BY_DESC_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC); } else { query.append(ORDER_BY_DESC); } } } } else { query.append(ShoppingItemPriceModelImpl.ORDER_BY_JPQL); } String sql = query.toString(); Query q = session.createQuery(sql); q.setFirstResult(0); q.setMaxResults(2); QueryPos qPos = QueryPos.getInstance(q); qPos.add(itemId); if (orderByComparator != null) { Object[] values = orderByComparator.getOrderByConditionValues(shoppingItemPrice); for (Object value : values) { qPos.add(value); } } List<ShoppingItemPrice> list = q.list(); if (list.size() == 2) { return list.get(1); } else { return null; } }
public DebateItemReference[] findByDebateItemIdItemVersionStatus_PrevAndNext( Long debateItemReferencePK, Long debateItemId, Long itemVersion, String status, OrderByComparator obc) throws NoSuchDebateItemReferenceException, SystemException { DebateItemReference debateItemReference = findByPrimaryKey(debateItemReferencePK); int count = countByDebateItemIdItemVersionStatus(debateItemId, itemVersion, status); Session session = null; try { session = openSession(); StringBuilder query = new StringBuilder(); query.append("FROM com.ext.portlet.debaterevision.model.DebateItemReference WHERE "); if (debateItemId == null) { query.append("debateItemId IS NULL"); } else { query.append("debateItemId = ?"); } query.append(" AND "); if (itemVersion == null) { query.append("itemVersion IS NULL"); } else { query.append("itemVersion = ?"); } query.append(" AND "); if (status == null) { query.append("status IS NULL"); } else { query.append("status = ?"); } query.append(" "); if (obc != null) { query.append("ORDER BY "); query.append(obc.getOrderBy()); } Query q = session.createQuery(query.toString()); QueryPos qPos = QueryPos.getInstance(q); if (debateItemId != null) { qPos.add(debateItemId.longValue()); } if (itemVersion != null) { qPos.add(itemVersion.longValue()); } if (status != null) { qPos.add(status); } Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc, debateItemReference); DebateItemReference[] array = new DebateItemReferenceImpl[3]; array[0] = (DebateItemReference) objArray[0]; array[1] = (DebateItemReference) objArray[1]; array[2] = (DebateItemReference) objArray[2]; return array; } catch (Exception e) { throw processException(e); } finally { closeSession(session); } }
/** * Returns an ordered range of all the class names. * * <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. * * @param start the lower bound of the range of class names * @param end the upper bound of the range of class names (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of class names * @throws SystemException if a system exception occurred */ public List<ClassName> findAll(int start, int end, OrderByComparator orderByComparator) throws SystemException { FinderPath finderPath = null; Object[] finderArgs = new Object[] {start, end, orderByComparator}; if ((start == QueryUtil.ALL_POS) && (end == QueryUtil.ALL_POS) && (orderByComparator == null)) { finderPath = FINDER_PATH_WITHOUT_PAGINATION_FIND_ALL; finderArgs = FINDER_ARGS_EMPTY; } else { finderPath = FINDER_PATH_WITH_PAGINATION_FIND_ALL; finderArgs = new Object[] {start, end, orderByComparator}; } List<ClassName> list = (List<ClassName>) FinderCacheUtil.getResult(finderPath, finderArgs, this); if (list == null) { StringBundler query = null; String sql = null; if (orderByComparator != null) { query = new StringBundler(2 + (orderByComparator.getOrderByFields().length * 3)); query.append(_SQL_SELECT_CLASSNAME); appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); sql = query.toString(); } else { sql = _SQL_SELECT_CLASSNAME; } Session session = null; try { session = openSession(); Query q = session.createQuery(sql); if (orderByComparator == null) { list = (List<ClassName>) QueryUtil.list(q, getDialect(), start, end, false); Collections.sort(list); } else { list = (List<ClassName>) QueryUtil.list(q, getDialect(), start, end); } } catch (Exception e) { throw processException(e); } finally { if (list == null) { FinderCacheUtil.removeResult(finderPath, finderArgs); } else { cacheResult(list); FinderCacheUtil.putResult(finderPath, finderArgs, list); } closeSession(session); } } return list; }
public List<SoPhongVanBanNoiBo> findBySoVanBanNoiBo_PhongVanBanNoiBo( long soVanBanNoiBoId, String phongVanBanNoiBoId, int start, int end, OrderByComparator obc) throws SystemException { boolean finderClassNameCacheEnabled = SoPhongVanBanNoiBoModelImpl.CACHE_ENABLED; String finderClassName = SoPhongVanBanNoiBo.class.getName(); String finderMethodName = "findBySoVanBanNoiBo_PhongVanBanNoiBo"; String[] finderParams = new String[] { Long.class.getName(), String.class.getName(), "java.lang.Integer", "java.lang.Integer", "com.liferay.portal.kernel.util.OrderByComparator" }; Object[] finderArgs = new Object[] { new Long(soVanBanNoiBoId), phongVanBanNoiBoId, String.valueOf(start), String.valueOf(end), String.valueOf(obc) }; Object result = null; if (finderClassNameCacheEnabled) { result = FinderCacheUtil.getResult( finderClassName, finderMethodName, finderParams, finderArgs, this); } if (result == null) { Session session = null; try { session = openSession(); StringBuilder query = new StringBuilder(); query.append("FROM com.sgs.portlet.sovanbannoibo.model.SoPhongVanBanNoiBo WHERE "); query.append("soVanBanNoiBoId = ?"); query.append(" AND "); if (phongVanBanNoiBoId == null) { query.append("phongVanBanNoiBoId IS NULL"); } else { query.append("phongVanBanNoiBoId = ?"); } query.append(" "); if (obc != null) { query.append("ORDER BY "); query.append(obc.getOrderBy()); } Query q = session.createQuery(query.toString()); QueryPos qPos = QueryPos.getInstance(q); qPos.add(soVanBanNoiBoId); if (phongVanBanNoiBoId != null) { qPos.add(phongVanBanNoiBoId); } List<SoPhongVanBanNoiBo> list = (List<SoPhongVanBanNoiBo>) QueryUtil.list(q, getDialect(), start, end); FinderCacheUtil.putResult( finderClassNameCacheEnabled, finderClassName, finderMethodName, finderParams, finderArgs, list); return list; } catch (Exception e) { throw processException(e); } finally { closeSession(session); } } else { return (List<SoPhongVanBanNoiBo>) 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; }
/** * Returns an ordered range of all the projects entries where userId = ?. * * <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.so.model.impl.ProjectsEntryModelImpl}. 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 userId the user ID * @param start the lower bound of the range of projects entries * @param end the upper bound of the range of projects entries (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of matching projects entries * @throws SystemException if a system exception occurred */ @Override public List<ProjectsEntry> findByUserId( long userId, int start, int end, OrderByComparator orderByComparator) throws SystemException { boolean pagination = true; FinderPath finderPath = null; Object[] finderArgs = null; if ((start == QueryUtil.ALL_POS) && (end == QueryUtil.ALL_POS) && (orderByComparator == null)) { pagination = false; finderPath = FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_USERID; finderArgs = new Object[] {userId}; } else { finderPath = FINDER_PATH_WITH_PAGINATION_FIND_BY_USERID; finderArgs = new Object[] {userId, start, end, orderByComparator}; } List<ProjectsEntry> list = (List<ProjectsEntry>) FinderCacheUtil.getResult(finderPath, finderArgs, this); if ((list != null) && !list.isEmpty()) { for (ProjectsEntry projectsEntry : list) { if ((userId != projectsEntry.getUserId())) { 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_PROJECTSENTRY_WHERE); query.append(_FINDER_COLUMN_USERID_USERID_2); if (orderByComparator != null) { appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); } else if (pagination) { query.append(ProjectsEntryModelImpl.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(userId); if (!pagination) { list = (List<ProjectsEntry>) QueryUtil.list(q, getDialect(), start, end, false); Collections.sort(list); list = Collections.unmodifiableList(list); } else { list = (List<ProjectsEntry>) 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; }
protected DLSyncEvent getByModifiedTime_PrevAndNext( Session session, DLSyncEvent dlSyncEvent, long modifiedTime, OrderByComparator orderByComparator, boolean previous) { StringBundler query = null; if (orderByComparator != null) { query = new StringBundler(6 + (orderByComparator.getOrderByFields().length * 6)); } else { query = new StringBundler(3); } query.append(_SQL_SELECT_DLSYNCEVENT_WHERE); query.append(_FINDER_COLUMN_MODIFIEDTIME_MODIFIEDTIME_2); if (orderByComparator != null) { String[] orderByConditionFields = orderByComparator.getOrderByConditionFields(); if (orderByConditionFields.length > 0) { query.append(WHERE_AND); } for (int i = 0; i < orderByConditionFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByConditionFields[i]); if ((i + 1) < orderByConditionFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN_HAS_NEXT); } else { query.append(WHERE_LESSER_THAN_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN); } else { query.append(WHERE_LESSER_THAN); } } } query.append(ORDER_BY_CLAUSE); String[] orderByFields = orderByComparator.getOrderByFields(); for (int i = 0; i < orderByFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByFields[i]); if ((i + 1) < orderByFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC_HAS_NEXT); } else { query.append(ORDER_BY_DESC_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC); } else { query.append(ORDER_BY_DESC); } } } } else { query.append(DLSyncEventModelImpl.ORDER_BY_JPQL); } String sql = query.toString(); Query q = session.createQuery(sql); q.setFirstResult(0); q.setMaxResults(2); QueryPos qPos = QueryPos.getInstance(q); qPos.add(modifiedTime); if (orderByComparator != null) { Object[] values = orderByComparator.getOrderByConditionValues(dlSyncEvent); for (Object value : values) { qPos.add(value); } } List<DLSyncEvent> list = q.list(); if (list.size() == 2) { return list.get(1); } else { return null; } }
public List<User> findByC_FN_MN_LN_SN_EA_S( long companyId, String[] firstNames, String[] middleNames, String[] lastNames, String[] screenNames, String[] emailAddresses, int status, LinkedHashMap<String, Object> params, boolean andOperator, int start, int end, OrderByComparator obc) throws SystemException { firstNames = CustomSQLUtil.keywords(firstNames); middleNames = CustomSQLUtil.keywords(middleNames); lastNames = CustomSQLUtil.keywords(lastNames); screenNames = CustomSQLUtil.keywords(screenNames); emailAddresses = CustomSQLUtil.keywords(emailAddresses); if (params == null) { params = _emptyLinkedHashMap; } Long[] groupIds = null; if (params.get("usersGroups") instanceof Long) { Long groupId = (Long) params.get("usersGroups"); if (groupId > 0) { groupIds = new Long[] {groupId}; } } else { groupIds = (Long[]) params.get("usersGroups"); } boolean inherit = GetterUtil.getBoolean(params.get("inherit")); boolean doUnion = Validator.isNotNull(groupIds) && inherit; LinkedHashMap<String, Object> params1 = params; LinkedHashMap<String, Object> params2 = null; LinkedHashMap<String, Object> params3 = null; if (doUnion) { params2 = new LinkedHashMap<String, Object>(params1); params2.remove("usersGroups"); params3 = new LinkedHashMap<String, Object>(params1); params3.remove("usersGroups"); List<Long> organizationIds = new ArrayList<Long>(); List<Long> userGroupIds = new ArrayList<Long>(); for (long groupId : groupIds) { Group group = GroupLocalServiceUtil.fetchGroup(groupId); if ((group != null) && group.isOrganization()) { organizationIds.add(group.getOrganizationId()); } List<Organization> organizations = GroupUtil.getOrganizations(groupId); for (Organization organization : organizations) { organizationIds.add(organization.getOrganizationId()); } List<UserGroup> userGroups = GroupUtil.getUserGroups(groupId); for (int i = 0; i < userGroups.size(); i++) { UserGroup userGroup = userGroups.get(i); userGroupIds.add(userGroup.getUserGroupId()); } } params2.put("usersOrgs", organizationIds.toArray(new Long[organizationIds.size()])); params3.put("usersUserGroups", userGroupIds.toArray(new Long[userGroupIds.size()])); } Session session = null; try { session = openSession(); String sql = CustomSQLUtil.get(FIND_BY_C_FN_MN_LN_SN_EA_S); sql = CustomSQLUtil.replaceKeywords( sql, "lower(User_.firstName)", StringPool.LIKE, false, firstNames); sql = CustomSQLUtil.replaceKeywords( sql, "lower(User_.middleName)", StringPool.LIKE, false, middleNames); sql = CustomSQLUtil.replaceKeywords( sql, "lower(User_.lastName)", StringPool.LIKE, false, lastNames); sql = CustomSQLUtil.replaceKeywords( sql, "lower(User_.screenName)", StringPool.LIKE, false, screenNames); sql = CustomSQLUtil.replaceKeywords( sql, "lower(User_.emailAddress)", StringPool.LIKE, true, emailAddresses); if (status == WorkflowConstants.STATUS_ANY) { sql = StringUtil.replace(sql, _STATUS_SQL, StringPool.BLANK); } StringBundler sb = new StringBundler(); sb.append(StringPool.OPEN_PARENTHESIS); sb.append(replaceJoinAndWhere(sql, params1)); sb.append(StringPool.CLOSE_PARENTHESIS); if (doUnion) { sb.append(" UNION ("); sb.append(replaceJoinAndWhere(sql, params2)); sb.append(") UNION ("); sb.append(replaceJoinAndWhere(sql, params3)); sb.append(StringPool.CLOSE_PARENTHESIS); } if (obc != null) { sb.append(" ORDER BY "); sb.append(obc.toString()); } sql = sb.toString(); sql = CustomSQLUtil.replaceAndOperator(sql, andOperator); SQLQuery q = session.createSQLQuery(sql); q.addScalar("userId", Type.LONG); QueryPos qPos = QueryPos.getInstance(q); setJoin(qPos, params1); qPos.add(companyId); qPos.add(false); qPos.add(firstNames, 2); qPos.add(middleNames, 2); qPos.add(lastNames, 2); qPos.add(screenNames, 2); qPos.add(emailAddresses, 2); if (status != WorkflowConstants.STATUS_ANY) { qPos.add(status); } if (doUnion) { setJoin(qPos, params2); qPos.add(companyId); qPos.add(false); qPos.add(firstNames, 2); qPos.add(middleNames, 2); qPos.add(lastNames, 2); qPos.add(screenNames, 2); qPos.add(emailAddresses, 2); if (status != WorkflowConstants.STATUS_ANY) { qPos.add(status); } setJoin(qPos, params3); qPos.add(companyId); qPos.add(false); qPos.add(firstNames, 2); qPos.add(middleNames, 2); qPos.add(lastNames, 2); qPos.add(screenNames, 2); qPos.add(emailAddresses, 2); if (status != WorkflowConstants.STATUS_ANY) { qPos.add(status); } } List<Long> userIds = (List<Long>) QueryUtil.list(q, getDialect(), start, end); List<User> users = new ArrayList<User>(userIds.size()); for (Long userId : userIds) { User user = UserUtil.findByPrimaryKey(userId); users.add(user); } return users; } catch (Exception e) { throw new SystemException(e); } finally { closeSession(session); } }
protected JIRAChangeItem getByJiraChangeGroupId_PrevAndNext( Session session, JIRAChangeItem jiraChangeItem, long jiraChangeGroupId, OrderByComparator orderByComparator, boolean previous) { StringBundler query = null; if (orderByComparator != null) { query = new StringBundler(6 + (orderByComparator.getOrderByFields().length * 6)); } else { query = new StringBundler(3); } query.append(_SQL_SELECT_JIRACHANGEITEM_WHERE); query.append(_FINDER_COLUMN_JIRACHANGEGROUPID_JIRACHANGEGROUPID_2); if (orderByComparator != null) { String[] orderByFields = orderByComparator.getOrderByFields(); if (orderByFields.length > 0) { query.append(WHERE_AND); } for (int i = 0; i < orderByFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByFields[i]); if ((i + 1) < orderByFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN_HAS_NEXT); } else { query.append(WHERE_LESSER_THAN_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN); } else { query.append(WHERE_LESSER_THAN); } } } query.append(ORDER_BY_CLAUSE); for (int i = 0; i < orderByFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByFields[i]); if ((i + 1) < orderByFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC_HAS_NEXT); } else { query.append(ORDER_BY_DESC_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC); } else { query.append(ORDER_BY_DESC); } } } } String sql = query.toString(); Query q = session.createQuery(sql); q.setFirstResult(0); q.setMaxResults(2); QueryPos qPos = QueryPos.getInstance(q); qPos.add(jiraChangeGroupId); if (orderByComparator != null) { Object[] values = orderByComparator.getOrderByValues(jiraChangeItem); for (Object value : values) { qPos.add(value); } } List<JIRAChangeItem> list = q.list(); if (list.size() == 2) { return list.get(1); } else { return null; } }
/** * Returns an ordered range of all the bars where text = ?. * * <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.testtransaction.model.impl.BarModelImpl}. 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 text the text * @param start the lower bound of the range of bars * @param end the upper bound of the range of bars (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of matching bars */ @Override public List<Bar> findByText( String text, int start, int end, OrderByComparator<Bar> orderByComparator) { boolean pagination = true; FinderPath finderPath = null; Object[] finderArgs = null; if ((start == QueryUtil.ALL_POS) && (end == QueryUtil.ALL_POS) && (orderByComparator == null)) { pagination = false; finderPath = FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_TEXT; finderArgs = new Object[] {text}; } else { finderPath = FINDER_PATH_WITH_PAGINATION_FIND_BY_TEXT; finderArgs = new Object[] {text, start, end, orderByComparator}; } List<Bar> list = (List<Bar>) FinderCacheUtil.getResult(finderPath, finderArgs, this); if ((list != null) && !list.isEmpty()) { for (Bar bar : list) { if (!Validator.equals(text, bar.getText())) { 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_BAR_WHERE); boolean bindText = false; if (text == null) { query.append(_FINDER_COLUMN_TEXT_TEXT_1); } else if (text.equals(StringPool.BLANK)) { query.append(_FINDER_COLUMN_TEXT_TEXT_3); } else { bindText = true; query.append(_FINDER_COLUMN_TEXT_TEXT_2); } if (orderByComparator != null) { appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); } else if (pagination) { query.append(BarModelImpl.ORDER_BY_JPQL); } String sql = query.toString(); Session session = null; try { session = openSession(); Query q = session.createQuery(sql); QueryPos qPos = QueryPos.getInstance(q); if (bindText) { qPos.add(text); } if (!pagination) { list = (List<Bar>) QueryUtil.list(q, getDialect(), start, end, false); Collections.sort(list); list = Collections.unmodifiableList(list); } else { list = (List<Bar>) 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; }
/** * Returns an ordered range of all the bars where text = ?. * * <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. * * @param text the text * @param start the lower bound of the range of bars * @param end the upper bound of the range of bars (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of matching bars * @throws SystemException if a system exception occurred */ public List<Bar> findByText(String text, int start, int end, OrderByComparator orderByComparator) throws SystemException { Object[] finderArgs = new Object[] { text, String.valueOf(start), String.valueOf(end), String.valueOf(orderByComparator) }; List<Bar> list = (List<Bar>) FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_TEXT, finderArgs, this); 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_BAR_WHERE); if (text == null) { query.append(_FINDER_COLUMN_TEXT_TEXT_1); } else { if (text.equals(StringPool.BLANK)) { query.append(_FINDER_COLUMN_TEXT_TEXT_3); } else { query.append(_FINDER_COLUMN_TEXT_TEXT_2); } } if (orderByComparator != null) { appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); } else { query.append(BarModelImpl.ORDER_BY_JPQL); } String sql = query.toString(); Session session = null; try { session = openSession(); Query q = session.createQuery(sql); QueryPos qPos = QueryPos.getInstance(q); if (text != null) { qPos.add(text); } list = (List<Bar>) QueryUtil.list(q, getDialect(), start, end); } catch (Exception e) { throw processException(e); } finally { if (list == null) { FinderCacheUtil.removeResult(FINDER_PATH_FIND_BY_TEXT, finderArgs); } else { cacheResult(list); FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_TEXT, finderArgs, list); } closeSession(session); } } return list; }
protected Bar getByText_PrevAndNext( Session session, Bar bar, String text, OrderByComparator<Bar> orderByComparator, boolean previous) { StringBundler query = null; if (orderByComparator != null) { query = new StringBundler(6 + (orderByComparator.getOrderByFields().length * 6)); } else { query = new StringBundler(3); } query.append(_SQL_SELECT_BAR_WHERE); boolean bindText = false; if (text == null) { query.append(_FINDER_COLUMN_TEXT_TEXT_1); } else if (text.equals(StringPool.BLANK)) { query.append(_FINDER_COLUMN_TEXT_TEXT_3); } else { bindText = true; query.append(_FINDER_COLUMN_TEXT_TEXT_2); } if (orderByComparator != null) { String[] orderByConditionFields = orderByComparator.getOrderByConditionFields(); if (orderByConditionFields.length > 0) { query.append(WHERE_AND); } for (int i = 0; i < orderByConditionFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByConditionFields[i]); if ((i + 1) < orderByConditionFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN_HAS_NEXT); } else { query.append(WHERE_LESSER_THAN_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN); } else { query.append(WHERE_LESSER_THAN); } } } query.append(ORDER_BY_CLAUSE); String[] orderByFields = orderByComparator.getOrderByFields(); for (int i = 0; i < orderByFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByFields[i]); if ((i + 1) < orderByFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC_HAS_NEXT); } else { query.append(ORDER_BY_DESC_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC); } else { query.append(ORDER_BY_DESC); } } } } else { query.append(BarModelImpl.ORDER_BY_JPQL); } String sql = query.toString(); Query q = session.createQuery(sql); q.setFirstResult(0); q.setMaxResults(2); QueryPos qPos = QueryPos.getInstance(q); if (bindText) { qPos.add(text); } if (orderByComparator != null) { Object[] values = orderByComparator.getOrderByConditionValues(bar); for (Object value : values) { qPos.add(value); } } List<Bar> list = q.list(); if (list.size() == 2) { return list.get(1); } else { return null; } }
/** * Returns an ordered range of all the shopping item prices where itemId = ?. * * <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 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 QueryUtil#ALL_POS}), then the query will include * the default ORDER BY logic from {@link ShoppingItemPriceModelImpl}. 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 itemId the item ID * @param start the lower bound of the range of shopping item prices * @param end the upper bound of the range of shopping item prices (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @param retrieveFromCache whether to retrieve from the finder cache * @return the ordered range of matching shopping item prices */ @Override public List<ShoppingItemPrice> findByItemId( long itemId, int start, int end, OrderByComparator<ShoppingItemPrice> orderByComparator, boolean retrieveFromCache) { boolean pagination = true; FinderPath finderPath = null; Object[] finderArgs = null; if ((start == QueryUtil.ALL_POS) && (end == QueryUtil.ALL_POS) && (orderByComparator == null)) { pagination = false; finderPath = FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_ITEMID; finderArgs = new Object[] {itemId}; } else { finderPath = FINDER_PATH_WITH_PAGINATION_FIND_BY_ITEMID; finderArgs = new Object[] {itemId, start, end, orderByComparator}; } List<ShoppingItemPrice> list = null; if (retrieveFromCache) { list = (List<ShoppingItemPrice>) finderCache.getResult(finderPath, finderArgs, this); if ((list != null) && !list.isEmpty()) { for (ShoppingItemPrice shoppingItemPrice : list) { if ((itemId != shoppingItemPrice.getItemId())) { list = null; break; } } } } if (list == null) { StringBundler query = null; if (orderByComparator != null) { query = new StringBundler(3 + (orderByComparator.getOrderByFields().length * 2)); } else { query = new StringBundler(3); } query.append(_SQL_SELECT_SHOPPINGITEMPRICE_WHERE); query.append(_FINDER_COLUMN_ITEMID_ITEMID_2); if (orderByComparator != null) { appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); } else if (pagination) { query.append(ShoppingItemPriceModelImpl.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(itemId); if (!pagination) { list = (List<ShoppingItemPrice>) QueryUtil.list(q, getDialect(), start, end, false); Collections.sort(list); list = Collections.unmodifiableList(list); } else { list = (List<ShoppingItemPrice>) QueryUtil.list(q, getDialect(), start, end); } cacheResult(list); finderCache.putResult(finderPath, finderArgs, list); } catch (Exception e) { finderCache.removeResult(finderPath, finderArgs); throw processException(e); } finally { closeSession(session); } } return list; }
/** * Returns an ordered range of all the projects entries. * * <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.so.model.impl.ProjectsEntryModelImpl}. 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 start the lower bound of the range of projects entries * @param end the upper bound of the range of projects entries (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of projects entries * @throws SystemException if a system exception occurred */ @Override public List<ProjectsEntry> findAll(int start, int end, OrderByComparator orderByComparator) throws SystemException { boolean pagination = true; FinderPath finderPath = null; Object[] finderArgs = null; if ((start == QueryUtil.ALL_POS) && (end == QueryUtil.ALL_POS) && (orderByComparator == null)) { pagination = false; finderPath = FINDER_PATH_WITHOUT_PAGINATION_FIND_ALL; finderArgs = FINDER_ARGS_EMPTY; } else { finderPath = FINDER_PATH_WITH_PAGINATION_FIND_ALL; finderArgs = new Object[] {start, end, orderByComparator}; } List<ProjectsEntry> list = (List<ProjectsEntry>) FinderCacheUtil.getResult(finderPath, finderArgs, this); if (list == null) { StringBundler query = null; String sql = null; if (orderByComparator != null) { query = new StringBundler(2 + (orderByComparator.getOrderByFields().length * 3)); query.append(_SQL_SELECT_PROJECTSENTRY); appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); sql = query.toString(); } else { sql = _SQL_SELECT_PROJECTSENTRY; if (pagination) { sql = sql.concat(ProjectsEntryModelImpl.ORDER_BY_JPQL); } } Session session = null; try { session = openSession(); Query q = session.createQuery(sql); if (!pagination) { list = (List<ProjectsEntry>) QueryUtil.list(q, getDialect(), start, end, false); Collections.sort(list); list = Collections.unmodifiableList(list); } else { list = (List<ProjectsEntry>) 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; }
public List<DebateItemReference> findByDebateItemIdItemVersionStatus( Long debateItemId, Long itemVersion, String status, int start, int end, OrderByComparator obc) throws SystemException { Object[] finderArgs = new Object[] { debateItemId, itemVersion, status, String.valueOf(start), String.valueOf(end), String.valueOf(obc) }; List<DebateItemReference> list = (List<DebateItemReference>) FinderCacheUtil.getResult( FINDER_PATH_FIND_BY_OBC_DEBATEITEMIDITEMVERSIONSTATUS, finderArgs, this); if (list == null) { Session session = null; try { session = openSession(); StringBuilder query = new StringBuilder(); query.append("FROM com.ext.portlet.debaterevision.model.DebateItemReference WHERE "); if (debateItemId == null) { query.append("debateItemId IS NULL"); } else { query.append("debateItemId = ?"); } query.append(" AND "); if (itemVersion == null) { query.append("itemVersion IS NULL"); } else { query.append("itemVersion = ?"); } query.append(" AND "); if (status == null) { query.append("status IS NULL"); } else { query.append("status = ?"); } query.append(" "); if (obc != null) { query.append("ORDER BY "); query.append(obc.getOrderBy()); } Query q = session.createQuery(query.toString()); QueryPos qPos = QueryPos.getInstance(q); if (debateItemId != null) { qPos.add(debateItemId.longValue()); } if (itemVersion != null) { qPos.add(itemVersion.longValue()); } if (status != null) { qPos.add(status); } list = (List<DebateItemReference>) QueryUtil.list(q, getDialect(), start, end); } catch (Exception e) { throw processException(e); } finally { if (list == null) { list = new ArrayList<DebateItemReference>(); } cacheResult(list); FinderCacheUtil.putResult( FINDER_PATH_FIND_BY_OBC_DEBATEITEMIDITEMVERSIONSTATUS, finderArgs, list); closeSession(session); } } return list; }
protected ProjectsEntry getByUserId_PrevAndNext( Session session, ProjectsEntry projectsEntry, long userId, OrderByComparator orderByComparator, boolean previous) { StringBundler query = null; if (orderByComparator != null) { query = new StringBundler(6 + (orderByComparator.getOrderByFields().length * 6)); } else { query = new StringBundler(3); } query.append(_SQL_SELECT_PROJECTSENTRY_WHERE); query.append(_FINDER_COLUMN_USERID_USERID_2); if (orderByComparator != null) { String[] orderByConditionFields = orderByComparator.getOrderByConditionFields(); if (orderByConditionFields.length > 0) { query.append(WHERE_AND); } for (int i = 0; i < orderByConditionFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByConditionFields[i]); if ((i + 1) < orderByConditionFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN_HAS_NEXT); } else { query.append(WHERE_LESSER_THAN_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(WHERE_GREATER_THAN); } else { query.append(WHERE_LESSER_THAN); } } } query.append(ORDER_BY_CLAUSE); String[] orderByFields = orderByComparator.getOrderByFields(); for (int i = 0; i < orderByFields.length; i++) { query.append(_ORDER_BY_ENTITY_ALIAS); query.append(orderByFields[i]); if ((i + 1) < orderByFields.length) { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC_HAS_NEXT); } else { query.append(ORDER_BY_DESC_HAS_NEXT); } } else { if (orderByComparator.isAscending() ^ previous) { query.append(ORDER_BY_ASC); } else { query.append(ORDER_BY_DESC); } } } } else { query.append(ProjectsEntryModelImpl.ORDER_BY_JPQL); } String sql = query.toString(); Query q = session.createQuery(sql); q.setFirstResult(0); q.setMaxResults(2); QueryPos qPos = QueryPos.getInstance(q); qPos.add(userId); if (orderByComparator != null) { Object[] values = orderByComparator.getOrderByConditionValues(projectsEntry); for (Object value : values) { qPos.add(value); } } List<ProjectsEntry> list = q.list(); if (list.size() == 2) { return list.get(1); } else { return null; } }
/** * Returns an ordered range of all the d l syncs where companyId = ? and modifiedDate > * ? and repositoryId = ?. * * <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.DLSyncModelImpl}. 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 companyId the company ID * @param modifiedDate the modified date * @param repositoryId the repository ID * @param start the lower bound of the range of d l syncs * @param end the upper bound of the range of d l syncs (not inclusive) * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) * @return the ordered range of matching d l syncs * @throws SystemException if a system exception occurred */ public List<DLSync> findByC_M_R( long companyId, long modifiedDate, long repositoryId, int start, int end, OrderByComparator orderByComparator) throws SystemException { boolean pagination = true; FinderPath finderPath = null; Object[] finderArgs = null; finderPath = FINDER_PATH_WITH_PAGINATION_FIND_BY_C_M_R; finderArgs = new Object[] { companyId, modifiedDate, repositoryId, start, end, orderByComparator }; List<DLSync> list = (List<DLSync>) FinderCacheUtil.getResult(finderPath, finderArgs, this); if ((list != null) && !list.isEmpty()) { for (DLSync dlSync : list) { if ((companyId != dlSync.getCompanyId()) || (modifiedDate != dlSync.getModifiedDate()) || (repositoryId != dlSync.getRepositoryId())) { list = null; break; } } } if (list == null) { StringBundler query = null; if (orderByComparator != null) { query = new StringBundler(5 + (orderByComparator.getOrderByFields().length * 3)); } else { query = new StringBundler(5); } query.append(_SQL_SELECT_DLSYNC_WHERE); query.append(_FINDER_COLUMN_C_M_R_COMPANYID_2); query.append(_FINDER_COLUMN_C_M_R_MODIFIEDDATE_2); query.append(_FINDER_COLUMN_C_M_R_REPOSITORYID_2); if (orderByComparator != null) { appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, orderByComparator); } else if (pagination) { query.append(DLSyncModelImpl.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(companyId); qPos.add(modifiedDate); qPos.add(repositoryId); if (!pagination) { list = (List<DLSync>) QueryUtil.list(q, getDialect(), start, end, false); Collections.sort(list); list = new UnmodifiableList<DLSync>(list); } else { list = (List<DLSync>) 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; }