Example usage for com.liferay.portal.kernel.search SearchContext setLocale

List of usage examples for com.liferay.portal.kernel.search SearchContext setLocale

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.search SearchContext setLocale.

Prototype

public void setLocale(Locale locale) 

Source Link

Usage

From source file:com.liferay.asset.test.util.BaseAssetSearchTestCase.java

License:Open Source License

protected void testOrderByTitle(final AssetEntryQuery assetEntryQuery, String orderByType,
        List<Map<Locale, String>> titleMaps, final List<Map<Locale, String>> orderedTitleMaps, Locale[] locales)
        throws Exception {

    ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext(_group1.getGroupId());

    BaseModel<?> parentBaseModel = getParentBaseModel(_group1, serviceContext);

    for (Map<Locale, String> titleMap : titleMaps) {
        addBaseModel(parentBaseModel, titleMap, serviceContext);
    }//from  w ww .  j  av  a2 s  . c o  m

    assetEntryQuery.setOrderByCol1("title");
    assetEntryQuery.setOrderByType1(orderByType);

    final SearchContext searchContext = SearchContextTestUtil.getSearchContext();

    searchContext.setGroupIds(assetEntryQuery.getGroupIds());

    for (final Locale locale : locales) {
        searchContext.setLocale(locale);

        List<AssetEntry> assetEntries = search(assetEntryQuery, searchContext);

        Assert.assertEquals(ArrayUtils.toString(getOrderedTitles(orderedTitleMaps, locale)),
                ArrayUtils.toString(getTitles(assetEntries, locale)));
    }
}

From source file:com.liferay.calendar.search.test.CalendarSearchFixture.java

License:Open Source License

public SearchContext getSearchContext(String keywords, Locale locale) {
    SearchContext searchContext = new SearchContext();

    try {/* ww  w  . j a va 2s.  c o  m*/
        searchContext.setCompanyId(TestPropsValues.getCompanyId());
        searchContext.setUserId(getUserId());
    } catch (PortalException pe) {
        throw new RuntimeException(pe);
    }

    searchContext.setGroupIds(new long[] { _group.getGroupId() });
    searchContext.setKeywords(keywords);
    searchContext.setLocale(Objects.requireNonNull(locale));

    QueryConfig queryConfig = searchContext.getQueryConfig();

    queryConfig.setSelectedFieldNames(StringPool.STAR);

    return searchContext;
}

From source file:com.liferay.configuration.admin.web.internal.portlet.action.SearchMVCRenderCommand.java

License:Open Source License

@Override
public String render(RenderRequest renderRequest, RenderResponse renderResponse) throws PortletException {

    Indexer indexer = _indexerRegistry.nullSafeGetIndexer(ConfigurationModel.class);

    SearchContext searchContext = new SearchContext();

    searchContext.setAndSearch(false);// w  w w . j av  a2s .  co m
    searchContext.setCompanyId(CompanyConstants.SYSTEM);
    searchContext.setLocale(renderRequest.getLocale());

    String keywords = renderRequest.getParameter("keywords");

    if (Validator.isNotNull(keywords)) {
        searchContext.setKeywords(keywords);
    }

    QueryConfig queryConfig = searchContext.getQueryConfig();

    queryConfig.setHighlightEnabled(true);
    queryConfig.setLocale(renderRequest.getLocale());
    queryConfig.setScoreEnabled(true);

    try {
        Hits hits = indexer.search(searchContext);

        Document[] documents = hits.getDocs();

        Map<String, ConfigurationModel> configurationModels = _configurationModelRetriever
                .getConfigurationModels();

        List<ConfigurationModel> searchResults = new ArrayList<>(documents.length);

        for (Document document : documents) {
            String configurationModelId = document.get(FieldNames.CONFIGURATION_MODEL_ID);

            ConfigurationModel configurationModel = configurationModels.get(configurationModelId);

            if (configurationModel == null) {
                String configurationModelFactoryId = document.get(FieldNames.CONFIGURATION_MODEL_FACTORY_PID);

                configurationModel = configurationModels.get(configurationModelFactoryId);
            }

            if (configurationModel != null) {
                searchResults.add(configurationModel);
            }
        }

        ConfigurationModelIterator configurationModelIterator = new ConfigurationModelIterator(searchResults);

        renderRequest.setAttribute(ConfigurationAdminWebKeys.CONFIGURATION_MODEL_ITERATOR,
                configurationModelIterator);

        renderRequest.setAttribute(ConfigurationAdminWebKeys.RESOURCE_BUNDLE_LOADER_PROVIDER,
                _resourceBundleLoaderProvider);
    } catch (Exception e) {
        throw new PortletException(e);
    }

    return "/view.jsp";
}

From source file:com.liferay.document.library.search.test.DLFileEntryIndexerLocalizedContentTest.java

License:Open Source License

private SearchContext _getSearchContext(String searchTerm, Locale locale, long groupId) throws Exception {

    SearchContext searchContext = SearchContextTestUtil.getSearchContext(groupId);

    searchContext.setKeywords(searchTerm);
    searchContext.setLocale(locale);

    QueryConfig queryConfig = searchContext.getQueryConfig();

    queryConfig.setSelectedFieldNames(StringPool.STAR);

    return searchContext;
}

From source file:com.liferay.journal.search.test.JournalArticleIndexerLocalizedContentTest.java

License:Open Source License

private SearchContext _getSearchContext(String searchTerm, Locale locale) throws Exception {

    SearchContext searchContext = SearchContextTestUtil.getSearchContext(_group.getGroupId());

    searchContext.setKeywords(searchTerm);

    searchContext.setLocale(locale);

    QueryConfig queryConfig = searchContext.getQueryConfig();

    queryConfig.setSelectedFieldNames(StringPool.STAR);

    return searchContext;
}

From source file:com.liferay.journal.search.test.JournalIndexerTest.java

License:Open Source License

@Test
public void testRemoveArticleLocale() throws Exception {
    SearchContext searchContext1 = SearchContextTestUtil.getSearchContext(_group.getGroupId());

    searchContext1.setKeywords("Arquitectura");
    searchContext1.setLocale(LocaleUtil.SPAIN);

    assertSearchCount(0, _group.getGroupId(), searchContext1);

    SearchContext searchContext2 = SearchContextTestUtil.getSearchContext(_group.getGroupId());

    searchContext2.setKeywords("Architectural");
    searchContext2.setLocale(LocaleUtil.SPAIN);

    assertSearchCount(0, _group.getGroupId(), searchContext2);

    Map<Locale, String> titleMap = new HashMap<>();

    titleMap.put(LocaleUtil.GERMANY, "Titel");
    titleMap.put(LocaleUtil.SPAIN, "Titulo");
    titleMap.put(LocaleUtil.US, "Title");

    Map<Locale, String> contentMap = new HashMap<>();

    contentMap.put(LocaleUtil.GERMANY, "Liferay Architektur Ansatz");
    contentMap.put(LocaleUtil.SPAIN, "Liferay Arquitectura Aproximacion");
    contentMap.put(LocaleUtil.US, "Liferay Architectural Approach");

    JournalArticle article = JournalTestUtil.addArticleWithWorkflow(_group.getGroupId(), titleMap, titleMap,
            contentMap, true);/*ww  w .  j a  v  a 2  s  .  c o m*/

    assertSearchCount(1, _group.getGroupId(), searchContext1);

    JournalArticleLocalServiceUtil.removeArticleLocale(_group.getGroupId(), article.getArticleId(),
            article.getVersion(), LocaleUtil.toLanguageId(LocaleUtil.SPAIN));

    assertSearchCount(0, _group.getGroupId(), searchContext1);
    assertSearchCount(1, _group.getGroupId(), searchContext2);
}

From source file:com.liferay.journal.search.test.JournalIndexerTest.java

License:Open Source License

@Test
public void testUpdateArticleTranslation() throws Exception {
    ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext(_group.getGroupId());

    SearchContext searchContext1 = SearchContextTestUtil.getSearchContext(_group.getGroupId());

    searchContext1.setKeywords("Arquitectura");
    searchContext1.setLocale(LocaleUtil.SPAIN);

    assertSearchCount(0, _group.getGroupId(), searchContext1);

    SearchContext searchContext2 = SearchContextTestUtil.getSearchContext(_group.getGroupId());

    searchContext2.setKeywords("Apple");
    searchContext2.setLocale(LocaleUtil.SPAIN);

    assertSearchCount(0, _group.getGroupId(), searchContext2);

    Map<Locale, String> titleMap = new HashMap<>();

    titleMap.put(LocaleUtil.GERMANY, "Titel");
    titleMap.put(LocaleUtil.SPAIN, "Titulo");
    titleMap.put(LocaleUtil.US, "Title");

    Map<Locale, String> contentMap = new HashMap<>();

    contentMap.put(LocaleUtil.GERMANY, "Liferay Architektur Ansatz");
    contentMap.put(LocaleUtil.SPAIN, "Liferay Arquitectura Aproximacion");
    contentMap.put(LocaleUtil.US, "Liferay Architectural Approach");

    JournalArticle article = JournalTestUtil.addArticleWithWorkflow(_group.getGroupId(), titleMap, titleMap,
            contentMap, true);/*from w  w w.j  a v  a  2  s.c  o  m*/

    assertSearchCount(1, _group.getGroupId(), searchContext1);

    contentMap.put(LocaleUtil.SPAIN, "Apple manzana tablet");

    String defaultLanguageId = LanguageUtil.getLanguageId(LocaleUtil.getDefault());

    String content = DDMStructureTestUtil.getSampleStructuredContent(contentMap, defaultLanguageId);

    article = JournalArticleLocalServiceUtil.updateArticleTranslation(_group.getGroupId(),
            article.getArticleId(), article.getVersion(), LocaleUtil.SPAIN, article.getTitle(LocaleUtil.SPAIN),
            article.getDescription(LocaleUtil.SPAIN), content, null, serviceContext);

    assertSearchCount(0, _group.getGroupId(), searchContext2);

    User user = UserTestUtil.addUser(_group.getGroupId(), LocaleUtil.SPAIN);

    serviceContext.setWorkflowAction(WorkflowConstants.ACTION_PUBLISH);

    JournalArticleLocalServiceUtil.updateArticle(user.getUserId(), article.getGroupId(), article.getFolderId(),
            article.getArticleId(), article.getVersion(), article.getContent(), serviceContext);

    assertSearchCount(1, _group.getGroupId(), searchContext2);
}