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

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

Introduction

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

Prototype

String NOT_LIKE

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

Click Source Link

Usage

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

License:Open Source License

protected int doCountByC_G_T_S_N_D(long companyId, long[] groupIds, String[] templateIds, String structureId,
        String structureIdComparator, String[] names, String[] descriptions, boolean andOperator,
        boolean inlineSQLHelper) throws SystemException {

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

    Session session = null;/*w ww .ja v  a2  s.c  om*/

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(COUNT_BY_C_G_T_S_N_D);

        sql = StringUtil.replace(sql, "[$GROUP_ID$]", getGroupIds(groupIds));
        sql = CustomSQLUtil.replaceKeywords(sql, "templateId", StringPool.LIKE, false, templateIds);

        if (structureIdComparator.equals(StringPool.NOT_LIKE)) {
            sql = replaceStructureIdComparator(sql);
        }

        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);

        if (inlineSQLHelper) {
            sql = InlineSQLHelperUtil.replacePermissionCheck(sql, JournalTemplate.class.getName(),
                    "JournalTemplate.id_", groupIds);

            sql = StringUtil.replace(sql, "(companyId", "(JournalTemplate.companyId");

            sql = StringUtil.replace(sql, "(name", "(JournalTemplate.name");
        }

        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(templateIds, 2);

        if (structureIdComparator.equals(StringPool.LIKE)) {
            qPos.add(structureId);
            qPos.add(structureId);
        }

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

        if (structureIdComparator.equals(StringPool.NOT_LIKE)) {
            if (CustomSQLUtil.isVendorOracle()) {
            } else {
                qPos.add(structureId);
            }
        }

        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.JournalTemplateFinderImpl.java

License:Open Source License

protected List<JournalTemplate> doFindByC_G_T_S_N_D(long companyId, long[] groupIds, String[] templateIds,
        String structureId, String structureIdComparator, String[] names, String[] descriptions,
        boolean andOperator, int start, int end, OrderByComparator obc, boolean inlineSQLHelper)
        throws SystemException {

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

    Session session = null;/*  w  w  w  .  java  2s . c  o  m*/

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(FIND_BY_C_G_T_S_N_D);

        sql = StringUtil.replace(sql, "[$GROUP_ID$]", getGroupIds(groupIds));
        sql = CustomSQLUtil.replaceKeywords(sql, "templateId", StringPool.LIKE, false, templateIds);

        if (structureIdComparator.equals(StringPool.NOT_LIKE)) {
            sql = replaceStructureIdComparator(sql);
        }

        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);

        if (inlineSQLHelper) {
            sql = InlineSQLHelperUtil.replacePermissionCheck(sql, JournalTemplate.class.getName(),
                    "JournalTemplate.id_", groupIds);

            sql = StringUtil.replace(sql, "(companyId", "(JournalTemplate.companyId");

            sql = StringUtil.replace(sql, "(name", "(JournalTemplate.name");
        }

        SQLQuery q = session.createSQLQuery(sql);

        q.addEntity("JournalTemplate", JournalTemplateImpl.class);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);
        qPos.add(groupIds);
        qPos.add(templateIds, 2);

        if (structureIdComparator.equals(StringPool.LIKE)) {
            qPos.add(structureId);
            qPos.add(structureId);
        }

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

        if (structureIdComparator.equals(StringPool.NOT_LIKE)) {
            if (CustomSQLUtil.isVendorOracle()) {
            } else {
                qPos.add(structureId);
            }
        }

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