Example usage for com.liferay.portal.kernel.util StringPool LIKE

List of usage examples for com.liferay.portal.kernel.util StringPool LIKE

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.util StringPool LIKE.

Prototype

String LIKE

To view the source code for com.liferay.portal.kernel.util StringPool LIKE.

Click Source Link

Usage

From source file:com.liferay.portlet.dynamicdatalists.service.persistence.DDLRecordSetFinderImpl.java

License:Open Source License

protected int doCountByC_G_N_D_S(long companyId, long groupId, String[] names, String[] descriptions, int scope,
        boolean andOperator) throws SystemException {

    names = CustomSQLUtil.keywords(names);
    descriptions = CustomSQLUtil.keywords(descriptions, false);

    Session session = null;//from   www .j  a  v  a2 s. c  o m

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(COUNT_BY_C_G_N_D_S);

        if (groupId <= 0) {
            sql = StringUtil.replace(sql, "(groupId = ?) AND", "");
        }

        if (scope == DDLRecordSetConstants.SCOPE_ANY) {
            sql = StringUtil.replace(sql, "(scope = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "lower(name)", StringPool.LIKE, false, names);
        sql = CustomSQLUtil.replaceKeywords(sql, "description", StringPool.LIKE, true, descriptions);
        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);

        SQLQuery q = session.createSQLQuery(sql);

        q.addScalar(COUNT_COLUMN_NAME, Type.LONG);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);

        if (groupId > 0) {
            qPos.add(groupId);
        }

        if (scope != DDLRecordSetConstants.SCOPE_ANY) {
            qPos.add(scope);
        }

        qPos.add(names, 2);
        qPos.add(descriptions, 2);

        Iterator<Long> itr = q.iterate();

        if (itr.hasNext()) {
            Long count = itr.next();

            if (count != null) {
                return count.intValue();
            }
        }

        return 0;
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.portlet.dynamicdatalists.service.persistence.DDLRecordSetFinderImpl.java

License:Open Source License

protected List<DDLRecordSet> doFindByC_G_N_D_S(long companyId, long groupId, String[] names,
        String[] descriptions, int scope, boolean andOperator, int start, int end,
        OrderByComparator orderByComparator) throws SystemException {

    names = CustomSQLUtil.keywords(names);
    descriptions = CustomSQLUtil.keywords(descriptions, false);

    Session session = null;/*from  w w w .  j  a v a 2s .c om*/

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(FIND_BY_C_G_N_D_S);

        if (groupId <= 0) {
            sql = StringUtil.replace(sql, "(groupId = ?) AND", "");
        }

        if (scope == DDLRecordSetConstants.SCOPE_ANY) {
            sql = StringUtil.replace(sql, "(scope = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "lower(name)", StringPool.LIKE, false, names);
        sql = CustomSQLUtil.replaceKeywords(sql, "description", StringPool.LIKE, true, descriptions);
        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);
        sql = CustomSQLUtil.replaceOrderBy(sql, orderByComparator);

        SQLQuery q = session.createSQLQuery(sql);

        q.addEntity("DDLRecordSet", DDLRecordSetImpl.class);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);

        if (groupId > 0) {
            qPos.add(groupId);
        }

        if (scope != DDLRecordSetConstants.SCOPE_ANY) {
            qPos.add(scope);
        }

        qPos.add(names, 2);
        qPos.add(descriptions, 2);

        return (List<DDLRecordSet>) QueryUtil.list(q, getDialect(), start, end);
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.portlet.dynamicdatamapping.service.persistence.DDMStructureFinderImpl.java

License:Open Source License

public int countByC_G_C_N_D_S_T(long companyId, long[] groupIds, long[] classNameIds, String[] names,
        String[] descriptions, String[] storageTypes, int type, boolean andOperator) throws SystemException {

    String[] classNameIdsString = null;

    if (classNameIds == null) {
        classNameIdsString = new String[] { null };
    } else {/*from w ww .j  a  va 2  s .  c  om*/
        classNameIdsString = ArrayUtil.toStringArray(classNameIds);
    }

    names = CustomSQLUtil.keywords(names);
    descriptions = CustomSQLUtil.keywords(descriptions, false);
    storageTypes = CustomSQLUtil.keywords(storageTypes, false);

    Session session = null;

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(COUNT_BY_C_G_C_N_D_S_T);

        sql = StringUtil.replace(sql, "[$GROUP_ID$]", getGroupIds(groupIds));
        sql = CustomSQLUtil.replaceKeywords(sql, "classNameId", StringPool.EQUAL, false, classNameIdsString);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(name)", StringPool.LIKE, false, names);
        sql = CustomSQLUtil.replaceKeywords(sql, "description", StringPool.LIKE, false, descriptions);
        sql = CustomSQLUtil.replaceKeywords(sql, "storageType", StringPool.LIKE, true, storageTypes);
        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);

        SQLQuery q = session.createSQLQuery(sql);

        q.addScalar(COUNT_COLUMN_NAME, Type.LONG);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);
        qPos.add(groupIds);
        qPos.add(classNameIds, 2);
        qPos.add(names, 2);
        qPos.add(descriptions, 2);
        qPos.add(storageTypes, 2);
        qPos.add(type);

        Iterator<Long> itr = q.iterate();

        if (itr.hasNext()) {
            Long count = itr.next();

            if (count != null) {
                return count.intValue();
            }
        }

        return 0;
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.portlet.dynamicdatamapping.service.persistence.DDMStructureFinderImpl.java

License:Open Source License

public List<DDMStructure> findByC_G_C_N_D_S_T(long companyId, long[] groupIds, long[] classNameIds,
        String[] names, String[] descriptions, String[] storageTypes, int type, boolean andOperator, int start,
        int end, OrderByComparator orderByComparator) throws SystemException {

    String[] classNameIdsString = null;

    if (classNameIds == null) {
        classNameIdsString = new String[] { null };
    } else {//from  w  w  w . ja v a 2s. c om
        classNameIdsString = ArrayUtil.toStringArray(classNameIds);
    }

    names = CustomSQLUtil.keywords(names);
    descriptions = CustomSQLUtil.keywords(descriptions, false);
    storageTypes = CustomSQLUtil.keywords(storageTypes, false);

    Session session = null;

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(FIND_BY_C_G_C_N_D_S_T);

        sql = StringUtil.replace(sql, "[$GROUP_ID$]", getGroupIds(groupIds));
        sql = CustomSQLUtil.replaceKeywords(sql, "classNameId", StringPool.EQUAL, false, classNameIdsString);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(name)", StringPool.LIKE, false, names);
        sql = CustomSQLUtil.replaceKeywords(sql, "description", StringPool.LIKE, false, descriptions);
        sql = CustomSQLUtil.replaceKeywords(sql, "storageType", StringPool.LIKE, true, storageTypes);
        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);

        if (orderByComparator != null) {
            String orderByFields = StringUtil.merge(orderByComparator.getOrderByFields(), StringPool.COMMA);

            sql = StringUtil.replace(sql, "structureId DESC", orderByFields.concat(" DESC"));
        }

        SQLQuery q = session.createSQLQuery(sql);

        q.addEntity("DDMStructure", DDMStructureImpl.class);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);
        qPos.add(groupIds);
        qPos.add(classNameIds, 2);
        qPos.add(names, 2);
        qPos.add(descriptions, 2);
        qPos.add(storageTypes, 2);
        qPos.add(type);

        return (List<DDMStructure>) QueryUtil.list(q, getDialect(), start, end);
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.portlet.dynamicdatamapping.service.persistence.DDMTemplateFinderImpl.java

License:Open Source License

public int countByC_G_S_N_D_T_M_L(long companyId, long groupId, long structureId, String[] names,
        String[] descriptions, String[] types, String[] modes, String[] languages, boolean andOperator)
        throws SystemException {

    names = CustomSQLUtil.keywords(names);
    descriptions = CustomSQLUtil.keywords(descriptions, false);
    types = CustomSQLUtil.keywords(types, false);
    modes = CustomSQLUtil.keywords(modes, false);
    languages = CustomSQLUtil.keywords(languages, false);

    Session session = null;/*  w  w  w.  ja va2  s  .c o m*/

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(COUNT_BY_C_G_S_N_D_T_M_L);

        if (groupId <= 0) {
            sql = StringUtil.replace(sql, "(groupId = ?) AND", "");
        }

        if (structureId <= 0) {
            sql = StringUtil.replace(sql, "(structureId = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "lower(name)", StringPool.LIKE, false, names);
        sql = CustomSQLUtil.replaceKeywords(sql, "description", StringPool.LIKE, false, descriptions);
        sql = CustomSQLUtil.replaceKeywords(sql, "type", StringPool.LIKE, false, types);
        sql = CustomSQLUtil.replaceKeywords(sql, "mode", StringPool.LIKE, false, modes);
        sql = CustomSQLUtil.replaceKeywords(sql, "language", StringPool.LIKE, false, languages);
        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);

        SQLQuery q = session.createSQLQuery(sql);

        q.addScalar(COUNT_COLUMN_NAME, Type.LONG);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);

        if (groupId > 0) {
            qPos.add(groupId);
        }

        if (structureId > 0) {
            qPos.add(structureId);
        }

        qPos.add(names, 2);
        qPos.add(descriptions, 2);
        qPos.add(types, 2);
        qPos.add(modes, 2);
        qPos.add(languages, 2);

        Iterator<Long> itr = q.iterate();

        if (itr.hasNext()) {
            Long count = itr.next();

            if (count != null) {
                return count.intValue();
            }
        }

        return 0;
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.portlet.dynamicdatamapping.service.persistence.DDMTemplateFinderImpl.java

License:Open Source License

public List<DDMTemplate> findByC_G_S_N_D_T_M_L(long companyId, long groupId, long structureId, String[] names,
        String[] descriptions, String[] types, String[] modes, String[] languages, boolean andOperator,
        int start, int end, OrderByComparator orderByComparator) throws SystemException {

    names = CustomSQLUtil.keywords(names);
    descriptions = CustomSQLUtil.keywords(descriptions, false);
    types = CustomSQLUtil.keywords(types, false);
    modes = CustomSQLUtil.keywords(modes, false);
    languages = CustomSQLUtil.keywords(languages, false);

    Session session = null;//w w w . jav a2s.  c om

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(FIND_BY_C_G_S_N_D_T_M_L);

        if (groupId <= 0) {
            sql = StringUtil.replace(sql, "(groupId = ?) AND", "");
        }

        if (structureId <= 0) {
            sql = StringUtil.replace(sql, "(structureId = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "lower(name)", StringPool.LIKE, false, names);
        sql = CustomSQLUtil.replaceKeywords(sql, "description", StringPool.LIKE, false, descriptions);
        sql = CustomSQLUtil.replaceKeywords(sql, "type", StringPool.LIKE, false, types);
        sql = CustomSQLUtil.replaceKeywords(sql, "mode", StringPool.LIKE, false, modes);
        sql = CustomSQLUtil.replaceKeywords(sql, "language", StringPool.LIKE, false, languages);
        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);

        if (orderByComparator != null) {
            String orderByFields = StringUtil.merge(orderByComparator.getOrderByFields(), StringPool.COMMA);

            sql = StringUtil.replace(sql, "templateId DESC", orderByFields.concat(" DESC"));
        }

        SQLQuery q = session.createSQLQuery(sql);

        q.addEntity("DDMTemplate", DDMTemplateImpl.class);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);

        if (groupId > 0) {
            qPos.add(groupId);
        }

        if (structureId > 0) {
            qPos.add(structureId);
        }

        qPos.add(names, 2);
        qPos.add(descriptions, 2);
        qPos.add(types, 2);
        qPos.add(modes, 2);
        qPos.add(languages, 2);

        return (List<DDMTemplate>) QueryUtil.list(q, getDialect(), start, end);
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.portlet.journal.service.persistence.JournalArticleFinderImpl.java

License:Open Source License

protected int doCountByC_G_C_A_V_T_D_C_T_S_T_D_S_R(long companyId, long groupId, long classNameId,
        String[] articleIds, Double version, String[] titles, String[] descriptions, String[] contents,
        String type, String[] structureIds, String[] templateIds, Date displayDateGT, Date displayDateLT,
        int status, Date reviewDate, boolean andOperator, boolean inlineSQLHelper) throws SystemException {

    articleIds = CustomSQLUtil.keywords(articleIds, false);
    titles = CustomSQLUtil.keywords(titles);
    descriptions = CustomSQLUtil.keywords(descriptions, false);
    contents = CustomSQLUtil.keywords(contents, false);
    structureIds = CustomSQLUtil.keywords(structureIds, false);
    templateIds = CustomSQLUtil.keywords(templateIds, false);
    Timestamp displayDateGT_TS = CalendarUtil.getTimestamp(displayDateGT);
    Timestamp displayDateLT_TS = CalendarUtil.getTimestamp(displayDateLT);
    Timestamp reviewDate_TS = CalendarUtil.getTimestamp(reviewDate);

    Session session = null;//from   ww  w.j ava 2s  .c  o m

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(COUNT_BY_C_G_C_A_V_T_D_C_T_S_T_D_S_R);

        if (groupId <= 0) {
            sql = StringUtil.replace(sql, "(groupId = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "articleId", StringPool.LIKE, false, articleIds);

        if ((version == null) || (version <= 0)) {
            sql = StringUtil.replace(sql, "(version = ?) [$AND_OR_CONNECTOR$]", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "lower(title)", StringPool.LIKE, false, titles);
        sql = CustomSQLUtil.replaceKeywords(sql, "description", StringPool.LIKE, false, descriptions);
        sql = CustomSQLUtil.replaceKeywords(sql, "content", StringPool.LIKE, false, contents);
        sql = CustomSQLUtil.replaceKeywords(sql, "structureId", StringPool.LIKE, false, structureIds);
        sql = CustomSQLUtil.replaceKeywords(sql, "templateId", StringPool.LIKE, false, templateIds);

        if (status == WorkflowConstants.STATUS_ANY) {
            sql = StringUtil.replace(sql, "(status = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);

        if ((articleIds != null)
                && ((articleIds.length > 1) || ((articleIds.length == 1) && (articleIds[0] != null)))
                && (version == null)) {

            sql = StringUtil.replace(sql, "MAX(version) AS tempVersion", "version AS tempVersion");
            sql = StringUtil.replace(sql, "[$GROUP_BY_CLAUSE$]", "");
        } else {
            sql = StringUtil.replace(sql, "[$GROUP_BY_CLAUSE$]", "GROUP BY groupId, articleId");
        }

        if (inlineSQLHelper) {
            sql = InlineSQLHelperUtil.replacePermissionCheck(sql, JournalArticle.class.getName(),
                    "JournalArticle.resourcePrimKey", groupId);

            sql = StringUtil.replace(sql, "(companyId", "(JournalArticle.companyId");
        }

        SQLQuery q = session.createSQLQuery(sql);

        q.addScalar(COUNT_COLUMN_NAME, Type.LONG);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);

        if (groupId > 0) {
            qPos.add(groupId);
        }

        qPos.add(classNameId);
        qPos.add(articleIds, 2);

        if ((version != null) && (version > 0)) {
            qPos.add(version);
        }

        qPos.add(titles, 2);
        qPos.add(descriptions, 2);
        qPos.add(contents, 2);
        qPos.add(type);
        qPos.add(type);
        qPos.add(structureIds, 2);
        qPos.add(templateIds, 2);
        qPos.add(displayDateGT_TS);
        qPos.add(displayDateGT_TS);
        qPos.add(displayDateLT_TS);
        qPos.add(displayDateLT_TS);

        if (status != WorkflowConstants.STATUS_ANY) {
            qPos.add(status);
        }

        qPos.add(reviewDate_TS);
        qPos.add(reviewDate_TS);

        Iterator<Long> itr = q.iterate();

        if (itr.hasNext()) {
            Long count = itr.next();

            if (count != null) {
                return count.intValue();
            }
        }

        return 0;
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.portlet.journal.service.persistence.JournalArticleFinderImpl.java

License:Open Source License

protected List<JournalArticle> doFindByC_G_C_A_V_T_D_C_T_S_T_D_S_R(long companyId, long groupId,
        long classNameId, String[] articleIds, Double version, String[] titles, String[] descriptions,
        String[] contents, String type, String[] structureIds, String[] templateIds, Date displayDateGT,
        Date displayDateLT, int status, Date reviewDate, boolean andOperator, int start, int end,
        OrderByComparator orderByComparator, boolean inlineSQLHelper) throws SystemException {

    articleIds = CustomSQLUtil.keywords(articleIds, false);
    titles = CustomSQLUtil.keywords(titles);
    descriptions = CustomSQLUtil.keywords(descriptions, false);
    contents = CustomSQLUtil.keywords(contents, false);
    structureIds = CustomSQLUtil.keywords(structureIds, false);
    templateIds = CustomSQLUtil.keywords(templateIds, false);
    Timestamp displayDateGT_TS = CalendarUtil.getTimestamp(displayDateGT);
    Timestamp displayDateLT_TS = CalendarUtil.getTimestamp(displayDateLT);
    Timestamp reviewDate_TS = CalendarUtil.getTimestamp(reviewDate);

    Session session = null;/*from  ww w. j  a  v a 2  s.c om*/

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(FIND_BY_C_G_C_A_V_T_D_C_T_S_T_D_S_R);

        if (groupId <= 0) {
            sql = StringUtil.replace(sql, "(groupId = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "articleId", StringPool.LIKE, false, articleIds);

        if ((version == null) || (version <= 0)) {
            sql = StringUtil.replace(sql, "(version = ?) [$AND_OR_CONNECTOR$]", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "lower(title)", StringPool.LIKE, false, titles);
        sql = CustomSQLUtil.replaceKeywords(sql, "description", StringPool.LIKE, false, descriptions);
        sql = CustomSQLUtil.replaceKeywords(sql, "content", StringPool.LIKE, false, contents);
        sql = CustomSQLUtil.replaceKeywords(sql, "structureId", StringPool.LIKE, false, structureIds);
        sql = CustomSQLUtil.replaceKeywords(sql, "templateId", StringPool.LIKE, false, templateIds);

        if (status == WorkflowConstants.STATUS_ANY) {
            sql = StringUtil.replace(sql, "(status = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);

        if ((articleIds != null)
                && ((articleIds.length > 1) || ((articleIds.length == 1) && (articleIds[0] != null)))
                && (version == null)) {

            sql = StringUtil.replace(sql, "MAX(version) AS tempVersion", "version AS tempVersion");
            sql = StringUtil.replace(sql, "[$GROUP_BY_CLAUSE$]", "");
        } else {
            sql = StringUtil.replace(sql, "[$GROUP_BY_CLAUSE$]", "GROUP BY groupId, articleId");
        }

        sql = CustomSQLUtil.replaceOrderBy(sql, orderByComparator);

        if (inlineSQLHelper) {
            sql = InlineSQLHelperUtil.replacePermissionCheck(sql, JournalArticle.class.getName(),
                    "JournalArticle.resourcePrimKey", groupId);

            sql = StringUtil.replace(sql, "(companyId", "(JournalArticle.companyId");
        }

        SQLQuery q = session.createSQLQuery(sql);

        q.addEntity("JournalArticle", JournalArticleImpl.class);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);

        if (groupId > 0) {
            qPos.add(groupId);
        }

        qPos.add(classNameId);
        qPos.add(articleIds, 2);

        if ((version != null) && (version > 0)) {
            qPos.add(version);
        }

        qPos.add(titles, 2);
        qPos.add(descriptions, 2);
        qPos.add(contents, 2);
        qPos.add(type);
        qPos.add(type);
        qPos.add(structureIds, 2);
        qPos.add(templateIds, 2);
        qPos.add(displayDateGT_TS);
        qPos.add(displayDateGT_TS);
        qPos.add(displayDateLT_TS);
        qPos.add(displayDateLT_TS);

        if (status != WorkflowConstants.STATUS_ANY) {
            qPos.add(status);
        }

        qPos.add(reviewDate_TS);
        qPos.add(reviewDate_TS);

        return (List<JournalArticle>) QueryUtil.list(q, getDialect(), start, end);
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.portlet.journal.service.persistence.JournalFeedFinderImpl.java

License:Open Source License

public int countByC_G_F_N_D(long companyId, long groupId, String[] feedIds, String[] names,
        String[] descriptions, boolean andOperator) throws SystemException {

    feedIds = CustomSQLUtil.keywords(feedIds, false);
    names = CustomSQLUtil.keywords(names);
    descriptions = CustomSQLUtil.keywords(descriptions);

    Session session = null;//from  w  w w.j  a v a  2  s.co  m

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(COUNT_BY_C_G_F_N_D);

        if (groupId <= 0) {
            sql = StringUtil.replace(sql, "(groupId = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "feedId", StringPool.LIKE, false, feedIds);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(name)", StringPool.LIKE, false, names);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(description)", StringPool.LIKE, true, descriptions);

        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);

        SQLQuery q = session.createSQLQuery(sql);

        q.addScalar(COUNT_COLUMN_NAME, Type.LONG);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);

        if (groupId > 0) {
            qPos.add(groupId);
        }

        qPos.add(feedIds, 2);
        qPos.add(names, 2);
        qPos.add(descriptions, 2);

        Iterator<Long> itr = q.iterate();

        if (itr.hasNext()) {
            Long count = itr.next();

            if (count != null) {
                return count.intValue();
            }
        }

        return 0;
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.portlet.journal.service.persistence.JournalFeedFinderImpl.java

License:Open Source License

public List<JournalFeed> findByC_G_F_N_D(long companyId, long groupId, String[] feedIds, String[] names,
        String[] descriptions, boolean andOperator, int start, int end, OrderByComparator obc)
        throws SystemException {

    feedIds = CustomSQLUtil.keywords(feedIds, false);
    names = CustomSQLUtil.keywords(names);
    descriptions = CustomSQLUtil.keywords(descriptions);

    Session session = null;//from   w w  w  . j a va  2  s.c  o  m

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(FIND_BY_C_G_F_N_D);

        if (groupId <= 0) {
            sql = StringUtil.replace(sql, "(groupId = ?) AND", "");
        }

        sql = CustomSQLUtil.replaceKeywords(sql, "feedId", StringPool.LIKE, false, feedIds);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(name)", StringPool.LIKE, false, names);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(description)", StringPool.LIKE, true, descriptions);

        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);
        sql = CustomSQLUtil.replaceOrderBy(sql, obc);

        SQLQuery q = session.createSQLQuery(sql);

        q.addEntity("JournalFeed", JournalFeedImpl.class);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);

        if (groupId > 0) {
            qPos.add(groupId);
        }

        qPos.add(feedIds, 2);
        qPos.add(names, 2);
        qPos.add(descriptions, 2);

        return (List<JournalFeed>) QueryUtil.list(q, getDialect(), start, end);
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}