Example usage for com.liferay.portal.kernel.dao.search SearchContainer setResults

List of usage examples for com.liferay.portal.kernel.dao.search SearchContainer setResults

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.dao.search SearchContainer setResults.

Prototype

public void setResults(List<R> results) 

Source Link

Usage

From source file:it.gebhard.qa.QAPortlet.java

License:Open Source License

private static void fillSearchContainer(RenderRequest renderRequest, RenderResponse renderResponse,
        String sortParameter, String searchParameter) {
    PortletConfig portletConfig = (PortletConfig) renderRequest
            .getAttribute(JavaConstants.JAVAX_PORTLET_CONFIG);
    ThemeDisplay themeDisplay = (ThemeDisplay) renderRequest.getAttribute(WebKeys.THEME_DISPLAY);
    List<Question> questionList = new ArrayList<Question>();

    Map<String, String> paramMap = new HashMap<String, String>();
    paramMap.put("qa-sort-value", sortParameter);
    paramMap.put("qa-search-input", searchParameter);
    boolean unansweredFirst = sortParameter.equals("unanswered");

    // Creating IteratorURL and in that we will pass tab parameter
    PortletURL iteratorURL = renderResponse.createRenderURL();
    Iterator<Map.Entry<String, String>> entries = paramMap.entrySet().iterator();
    while (entries.hasNext()) {
        Map.Entry<String, String> entry = entries.next();
        iteratorURL.setParameter(entry.getKey(), entry.getValue());
    }/*  w  w  w .  j  a  v  a 2 s.  com*/

    // Creating SearchContainer
    SearchContainer<Question> searchContainer = new SearchContainer<Question>(renderRequest, null, null,
            SearchContainer.DEFAULT_CUR_PARAM,
            ParamUtil.getInteger(renderRequest, SearchContainer.DEFAULT_DELTA_PARAM, 10), iteratorURL, null,
            LanguageUtil.get(portletConfig, themeDisplay.getLocale(),
                    getTranslatedString("qa-no-questions-found", themeDisplay.getLocale(), renderRequest)));
    int total = 0;
    try {
        // Fetching all the User Group from the Current Company and added that into the userGroupList
        questionList = QuestionLocalServiceUtil.filterQuestions(unansweredFirst, searchParameter);
        total = questionList.size();
    } catch (SystemException e) {
        SessionErrors.add(renderRequest, SystemException.class.getName());
    }

    // Sub listing the userGroupList depending on the delta parameter we have set in the SearchContainer.
    questionList = ListUtil.subList(questionList, searchContainer.getStart(), searchContainer.getEnd());
    searchContainer.setTotal(total);
    searchContainer.setResults(questionList);
    renderRequest.setAttribute("questionSearchContainer", searchContainer);
}

From source file:jorgediazest.indexchecker.output.IndexCheckerOutput.java

License:Open Source License

public static SearchContainer<Comparison> generateSearchContainer(PortletConfig portletConfig,
        RenderRequest renderRequest, boolean groupBySite, Map<Long, List<Comparison>> resultDataMap,
        PortletURL serverURL) throws SystemException {

    Locale locale = renderRequest.getLocale();

    ResourceBundle resourceBundle = portletConfig.getResourceBundle(locale);

    String[] headerKeys;//from ww  w.  j  av  a  2 s. c om

    if (groupBySite) {
        headerKeys = new String[] { "output.groupid", "output.groupname", "output.entityclass",
                "output.entityname", "output.errortype", "output.count", "output.primarykeys" };
    } else {
        headerKeys = new String[] { "output.entityclass", "output.entityname", "output.errortype",
                "output.count", "output.primarykeys" };
    }

    List<String> headerNames = OutputUtils.getHeaders(portletConfig, locale, headerKeys);

    SearchContainer<Comparison> searchContainer = new SearchContainer<Comparison>(renderRequest, null, null,
            SearchContainer.DEFAULT_CUR_PARAM, SearchContainer.MAX_DELTA, serverURL, headerNames, null);

    int numberOfRows = 0;

    for (Entry<Long, List<Comparison>> entry : resultDataMap.entrySet()) {

        String groupIdOutput = null;
        String groupNameOutput = null;

        if (groupBySite) {
            Group group = GroupLocalServiceUtil.fetchGroup(entry.getKey());

            if (group == null) {
                groupIdOutput = LanguageUtil.get(resourceBundle, "output.not-applicable-groupid");
                groupNameOutput = LanguageUtil.get(resourceBundle, "output.not-applicable-groupname");
            } else {
                groupIdOutput = "" + group.getGroupId();
                groupNameOutput = group.getName();
            }
        }

        List<Comparison> results = searchContainer.getResults();

        if ((results == null) || (results.size() == 0)) {
            results = new ArrayList<Comparison>();
        }

        results.addAll(entry.getValue());

        results = ListUtil.subList(results, searchContainer.getStart(), searchContainer.getEnd());

        searchContainer.setResults(results);

        List<ResultRow> resultRows = searchContainer.getResultRows();

        for (Comparison comp : entry.getValue()) {
            ResultRow rowError = generateSearchContainerRow(resourceBundle, comp, groupIdOutput,
                    groupNameOutput, "error", locale, numberOfRows, comp.getError(), "");

            if (rowError != null) {
                numberOfRows++;
                resultRows.add(rowError);
            }

            for (String type : comp.getOutputTypes()) {
                ResultRow row = generateSearchContainerRow(resourceBundle, comp, groupIdOutput, groupNameOutput,
                        type, locale, numberOfRows);

                if (row != null) {
                    numberOfRows++;
                    resultRows.add(row);
                }
            }
        }
    }

    searchContainer.setTotal(numberOfRows);

    return searchContainer;
}

From source file:jorgediazest.missingrefchecker.output.MissingRefCheckerOutput.java

License:Open Source License

public static SearchContainer<MissingRefInfo> generateSearchContainerCheckReferences(
        PortletConfig portletConfig, RenderRequest renderRequest, List<MissingRefInfo> listMissingRefInfo,
        PortletURL serverURL) throws SystemException {

    Locale locale = renderRequest.getLocale();

    String[] headerKeys = new String[] { "output.entity-class"/*,"output.entity-name"*/, "output.attributes",
            "output.relation-type", "output.destination", "output.missing-references", "output.other" };

    List<String> headers = OutputUtils.getHeaders(portletConfig, locale, headerKeys);

    SearchContainer<MissingRefInfo> searchContainer = new SearchContainer<MissingRefInfo>(renderRequest, null,
            null, SearchContainer.DEFAULT_CUR_PARAM, SearchContainer.MAX_DELTA, serverURL, headers, null);

    listMissingRefInfo = ListUtil.subList(listMissingRefInfo, searchContainer.getStart(),
            searchContainer.getEnd());// w  ww. j a v a 2 s . c  o  m

    searchContainer.setResults(listMissingRefInfo);

    List<ResultRow> resultRows = searchContainer.getResultRows();

    int numberOfRows = 0;

    for (MissingRefInfo missingRefInfo : listMissingRefInfo) {
        ResultRow row = generateSearchContainerRowCheckReferences(portletConfig, missingRefInfo, locale,
                numberOfRows);

        if (row != null) {
            numberOfRows++;
            resultRows.add(row);
        }
    }

    searchContainer.setTotal(numberOfRows);

    return searchContainer;
}

From source file:jorgediazest.missingrefchecker.output.MissingRefCheckerOutput.java

License:Open Source License

public static SearchContainer<Reference> generateSearchContainerMappingList(PortletConfig portletConfig,
        RenderRequest renderRequest, List<Reference> referecesList, PortletURL serverURL)
        throws SystemException {

    Locale locale = renderRequest.getLocale();

    String[] headerKeys = new String[] { "output.entity-class", /*"output.entity-name",*/"output.attributes",
            "output.relation-type", "output.destination" };

    List<String> headers = OutputUtils.getHeaders(portletConfig, locale, headerKeys);

    SearchContainer<Reference> searchContainer = new SearchContainer<Reference>(renderRequest, null, null,
            SearchContainer.DEFAULT_CUR_PARAM, SearchContainer.MAX_DELTA, serverURL, headers, null);

    referecesList = ListUtil.subList(referecesList, searchContainer.getStart(), searchContainer.getEnd());

    searchContainer.setResults(referecesList);

    List<ResultRow> resultRows = searchContainer.getResultRows();

    int numberOfRows = 0;

    for (Reference reference : referecesList) {
        ResultRow row = generateSearchContainerRowMappingList(portletConfig, reference, locale, numberOfRows);

        if (row != null) {
            numberOfRows++;//from   w w  w .j a  v  a  2  s  . c o m
            resultRows.add(row);
        }
    }

    searchContainer.setTotal(numberOfRows);

    return searchContainer;
}

From source file:jorgediazest.stagingchecker.output.StagingCheckerOutput.java

License:Open Source License

public static SearchContainer<Comparison> generateSearchContainer(PortletConfig portletConfig,
        RenderRequest renderRequest, boolean groupBySite, Map<Long, List<Comparison>> resultDataMap,
        PortletURL serverURL) throws SystemException {

    Locale locale = renderRequest.getLocale();

    ResourceBundle resourceBundle = portletConfig.getResourceBundle(locale);

    String[] headerKeys;//from   w ww .j a va  2 s  . co  m

    if (groupBySite) {
        headerKeys = new String[] { "output.groupid", "output.groupname", "output.entityclass",
                "output.entityname", "output.errortype", "output.count", "output.primarykeys" };
    } else {
        headerKeys = new String[] { "output.entityclass", "output.entityname", "output.errortype",
                "output.count", "output.primarykeys" };
    }

    List<String> headerNames = OutputUtils.getHeaders(portletConfig, locale, headerKeys);

    SearchContainer<Comparison> searchContainer = new SearchContainer<Comparison>(renderRequest, null, null,
            SearchContainer.DEFAULT_CUR_PARAM, SearchContainer.MAX_DELTA, serverURL, headerNames, null);

    int numberOfRows = 0;

    for (Entry<Long, List<Comparison>> entry : resultDataMap.entrySet()) {

        String groupIdOutput = null;
        String groupNameOutput = null;

        if (groupBySite) {
            Group group = GroupLocalServiceUtil.fetchGroup(entry.getKey());

            if (group == null) {
                groupIdOutput = LanguageUtil.get(resourceBundle, "output.not-applicable-groupid");
                groupNameOutput = LanguageUtil.get(resourceBundle, "output.not-applicable-groupname");
            } else {
                groupIdOutput = "" + group.getGroupId();
                groupNameOutput = group.getName();
            }
        }

        List<Comparison> results = searchContainer.getResults();

        if ((results == null) || (results.size() == 0)) {
            results = new ArrayList<Comparison>();
        }

        results.addAll(entry.getValue());

        results = ListUtil.subList(results, searchContainer.getStart(), searchContainer.getEnd());

        searchContainer.setResults(results);

        List<ResultRow> resultRows = searchContainer.getResultRows();

        for (Comparison comp : entry.getValue()) {
            ResultRow rowError = OutputUtils.generateSearchContainerRow(resourceBundle, comp, groupIdOutput,
                    groupNameOutput, "error", locale, numberOfRows, comp.getError());

            if (rowError != null) {
                numberOfRows++;
                resultRows.add(rowError);
            }

            for (String type : comp.getOutputTypes()) {
                String attribute = "uuid";

                int maxSize = 10;

                ResultRow row = OutputUtils.generateSearchContainerRow(resourceBundle, comp, groupIdOutput,
                        groupNameOutput, type, attribute, locale, numberOfRows, maxSize);

                if (row != null) {
                    numberOfRows++;
                    resultRows.add(row);
                }
            }
        }
    }

    searchContainer.setTotal(numberOfRows);

    return searchContainer;
}

From source file:org.lsug.quota.portlet.SitesQuotaPortlet.java

License:Open Source License

@Override
public void doView(RenderRequest renderRequest, RenderResponse renderResponse)
        throws IOException, PortletException {

    // Parametro para identificar la pestaa en la que estamos
    final String tabs2 = ParamUtil.getString(renderRequest, "tabs2", "sites");

    final int cur = ParamUtil.getInteger(renderRequest, "cur", 0);
    final int paramDelta = ParamUtil.getInteger(renderRequest, "delta", SearchContainer.DEFAULT_DELTA);

    // Url del searchContainer
    final PortletURL portletURL = renderResponse.createRenderURL();
    portletURL.setParameter("tabs2", tabs2);

    // OrderByComparator
    final String orderByCol = ParamUtil.getString(renderRequest, "orderByCol", "quotaUsed");
    final String orderByType = ParamUtil.getString(renderRequest, "orderByType", "desc");
    final OrderByComparator orderByComparator = QuotaUtil.getQuotaOrderByComparator(orderByCol, orderByType);

    // Crear searchContainer
    SearchContainer<Quota> searchContainer = new SearchContainer<Quota>(renderRequest, null, null,
            SearchContainer.DEFAULT_CUR_PARAM, cur, paramDelta, portletURL, null, null);
    searchContainer.setDelta(paramDelta);
    searchContainer.setDeltaConfigurable(false);
    searchContainer.setOrderByCol(orderByCol);
    searchContainer.setOrderByType(orderByType);

    try {// www .  j a v a2s. com

        // Identificador instancia de Liferay
        final long companyId = PortalUtil.getCompanyId(renderRequest);

        // Si la pestaa es sites obtenemos los sitios web de una instancia
        if (tabs2.equalsIgnoreCase("sites")) {
            final List<Quota> results = QuotaUtil.getSitesQuotas(companyId, searchContainer.getStart(),
                    searchContainer.getEnd(), orderByComparator);
            final int total = QuotaUtil.getSitesQuotasCount(companyId);

            searchContainer.setResults(results);
            searchContainer.setTotal(total);

        } else if (tabs2.equalsIgnoreCase("user-sites")) {

            // Obtenemos los sitios de usuario de una instancia
            final List<Quota> results = QuotaUtil.getSitesUsersQuotas(companyId, searchContainer.getStart(),
                    searchContainer.getEnd(), orderByComparator);
            final int total = QuotaUtil.getSitesUsersQuotasCount(companyId);

            searchContainer.setResults(results);
            searchContainer.setTotal(total);
        }

    } catch (SystemException e) {
        LOGGER.error(e);
        throw new PortletException(e);
    } catch (PortalException e) {
        LOGGER.error(e);
        throw new PortletException(e);
    }

    renderRequest.setAttribute("tabs2", tabs2);
    renderRequest.setAttribute("searchContainer", searchContainer);

    super.doView(renderRequest, renderResponse);
}

From source file:org.lsug.quota.web.internal.portlet.SitesQuotaWebPortlet.java

License:Open Source License

@Override
public void doView(RenderRequest renderRequest, RenderResponse renderResponse)
        throws IOException, PortletException {

    // Parametro para identificar la pestaa en la que estamos

    final String tabs2 = ParamUtil.getString(renderRequest, "tabs2", "sites");

    final int cur = ParamUtil.getInteger(renderRequest, "cur", 0);
    final int paramDelta = ParamUtil.getInteger(renderRequest, "delta", SearchContainer.DEFAULT_DELTA);

    // Url del searchContainer

    final PortletURL portletURL = renderResponse.createRenderURL();
    portletURL.setParameter("tabs2", tabs2);

    // OrderByComparator

    final String orderByCol = ParamUtil.getString(renderRequest, "orderByCol", "quotaUsed");
    final String orderByType = ParamUtil.getString(renderRequest, "orderByType", "desc");
    final OrderByComparator<Quota> orderByComparator = QuotaUtil.getQuotaOrderByComparator(orderByCol,
            orderByType);//from   ww  w. j av  a2  s. co  m

    // Crear searchContainer

    SearchContainer<Quota> searchContainer = new SearchContainer<Quota>(renderRequest, null, null,
            SearchContainer.DEFAULT_CUR_PARAM, cur, paramDelta, portletURL, null, null);
    searchContainer.setDelta(paramDelta);
    searchContainer.setDeltaConfigurable(false);
    searchContainer.setOrderByCol(orderByCol);
    searchContainer.setOrderByType(orderByType);

    try {

        // Identificador instancia de Liferay

        final long companyId = PortalUtil.getCompanyId(renderRequest);

        int total = 0;
        List<Quota> results = null;

        long[] classNameIds = null;

        // Si la pestaa es sites obtenemos los sitios web de una instancia

        if (tabs2.equalsIgnoreCase("sites")) {
            classNameIds = new long[] { PortalUtil.getClassNameId(Group.class.getName()),
                    PortalUtil.getClassNameId(Organization.class.getName()) };

        } else if (tabs2.equalsIgnoreCase("user-sites")) {
            classNameIds = new long[] { PortalUtil.getClassNameId(User.class.getName()) };
        }

        results = _quotaLocalService.getQuotaByCompanyIdClassNameIds(companyId, classNameIds,
                searchContainer.getStart(), searchContainer.getEnd(), orderByComparator);
        total = _quotaLocalService.countByCompanyIdClassNameIds(companyId, classNameIds);

        searchContainer.setResults(results);
        searchContainer.setTotal(total);

    } catch (SystemException e) {
        LOGGER.error(e);
        throw new PortletException(e);
    }

    renderRequest.setAttribute("tabs2", tabs2);
    renderRequest.setAttribute("searchContainer", searchContainer);

    super.doView(renderRequest, renderResponse);
}