Example usage for com.liferay.portal.kernel.search Summary getTitle

List of usage examples for com.liferay.portal.kernel.search Summary getTitle

Introduction

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

Prototype

public String getTitle() 

Source Link

Usage

From source file:com.liferay.document.library.internal.search.SearchResultUtilDLFileEntryTest.java

License:Open Source License

@Test
public void testDLFileEntryAttachment() throws Exception {
    Mockito.when(assetRenderer.getSearchSummary((Locale) Matchers.any()))
            .thenReturn(SearchTestUtil.SUMMARY_CONTENT);

    Mockito.when(assetRenderer.getTitle((Locale) Matchers.any())).thenReturn(SearchTestUtil.SUMMARY_TITLE);

    replace(method(AssetRendererFactoryRegistryUtil.class, "getAssetRendererFactoryByClassName", String.class))
            .with(new InvocationHandler() {

                @Override//from  w  ww  .j a  v  a  2 s. c o m
                public AssetRendererFactory<?> invoke(Object proxy, Method method, Object[] args)
                        throws Throwable {

                    String className = (String) args[0];

                    if (_DL_FILE_ENTRY_CLASS_NAME.equals(className)) {
                        return null;
                    }

                    if (SearchTestUtil.ATTACHMENT_OWNER_CLASS_NAME.equals(className)) {

                        return assetRendererFactory;
                    }

                    throw new IllegalArgumentException();
                }

            });

    Mockito.doReturn(assetRenderer).when(assetRendererFactory)
            .getAssetRenderer(SearchTestUtil.ATTACHMENT_OWNER_CLASS_PK);

    Mockito.when(_dlAppLocalService.getFileEntry(SearchTestUtil.ENTRY_CLASS_PK)).thenReturn(_fileEntry);

    Mockito.doThrow(new IllegalArgumentException()).when(_indexerRegistry).getIndexer(Mockito.anyString());

    Mockito.doReturn(_indexer).when(_indexerRegistry).getIndexer(_DL_FILE_ENTRY_CLASS_NAME);

    Mockito.doReturn(null).when(_indexerRegistry).getIndexer(SearchTestUtil.ATTACHMENT_OWNER_CLASS_NAME);

    String title = RandomTestUtil.randomString();
    String content = RandomTestUtil.randomString();

    Summary summary = new Summary(null, title, content);

    Mockito.doReturn(summary).when(_indexer).getSummary((Document) Matchers.any(), Matchers.anyString(),
            (PortletRequest) Matchers.isNull(), (PortletResponse) Matchers.isNull());

    SearchResult searchResult = assertOneSearchResult(
            SearchTestUtil.createAttachmentDocument(_DL_FILE_ENTRY_CLASS_NAME));

    Assert.assertEquals(SearchTestUtil.ATTACHMENT_OWNER_CLASS_NAME, searchResult.getClassName());
    Assert.assertEquals(SearchTestUtil.ATTACHMENT_OWNER_CLASS_PK, searchResult.getClassPK());

    Summary searchResultSummary = searchResult.getSummary();

    Assert.assertNotSame(summary, searchResultSummary);
    Assert.assertEquals(SearchTestUtil.SUMMARY_CONTENT, searchResultSummary.getContent());
    Assert.assertEquals(SearchTestUtil.SUMMARY_TITLE, searchResultSummary.getTitle());

    List<RelatedSearchResult<FileEntry>> relatedSearchResults = searchResult.getFileEntryRelatedSearchResults();

    Assert.assertEquals(relatedSearchResults.toString(), 1, relatedSearchResults.size());

    RelatedSearchResult<FileEntry> relatedSearchResult = relatedSearchResults.get(0);

    FileEntry relatedSearchResultFileEntry = relatedSearchResult.getModel();

    Assert.assertSame(_fileEntry, relatedSearchResultFileEntry);

    Summary relatedSearchResultSummary = relatedSearchResult.getSummary();

    Assert.assertSame(summary, relatedSearchResultSummary);
    Assert.assertEquals(content, relatedSearchResultSummary.getContent());
    Assert.assertEquals(title, relatedSearchResultSummary.getTitle());

    assertEmptyCommentRelatedSearchResults(searchResult);
    assertEmptyVersions(searchResult);
}

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

License:Open Source License

protected void assertSummary(String title, String content, Document document) throws Exception {

    Summary summary = getSummary(document);

    Assert.assertEquals(content, summary.getContent());
    Assert.assertEquals(title, summary.getTitle());
}

From source file:com.liferay.users.admin.indexer.test.UserIndexerTest.java

License:Open Source License

protected void assertSummary(String keywords, String title) throws Exception, SearchException {

    SearchContext searchContext = getSearchContext();

    QueryConfig queryConfig = searchContext.getQueryConfig();

    queryConfig.setHighlightEnabled(true);

    searchContext.setKeywords(keywords);

    Hits hits = search(searchContext);//w ww  .  j a  v a  2  s  .com

    Document document = getDocument(hits.getDocs(), _expectedUser.getUserId());

    Summary summary = _indexer.getSummary(document, null, null, null);

    Assert.assertEquals(StringPool.BLANK, summary.getContent());
    Assert.assertEquals(title, summary.getTitle());
}

From source file:com.vportal.portal.search.HitsOpenSearchImpl.java

License:Open Source License

public String search(HttpServletRequest request, long groupId, long userId, String keywords, int startPage,
        int itemsPerPage, String format) throws SearchException {

    try {/*from   www. ja v a2s  . com*/
        ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

        int start = (startPage * itemsPerPage) - itemsPerPage;
        int end = startPage * itemsPerPage;

        SearchContext searchContext = SearchContextFactory.getInstance(request);

        searchContext.setGroupIds(new long[] { groupId });
        searchContext.setEnd(end);
        searchContext.setKeywords(keywords);
        searchContext.setScopeStrict(false);
        searchContext.setStart(start);
        searchContext.setUserId(userId);

        addSearchAttributes(themeDisplay.getCompanyId(), searchContext, keywords);

        Portlet portlet = PortletLocalServiceUtil.getPortletById(themeDisplay.getCompanyId(), getPortletId());

        Indexer indexer = portlet.getIndexerInstance();

        Hits results = indexer.search(searchContext);

        String[] queryTerms = results.getQueryTerms();

        int total = results.getLength();

        Object[] values = addSearchResults(queryTerms, keywords, startPage, itemsPerPage, total, start,
                getTitle(keywords), getSearchPath(), format, themeDisplay);

        com.liferay.portal.kernel.xml.Document doc = (com.liferay.portal.kernel.xml.Document) values[0];
        Element root = (Element) values[1];

        for (int i = 0; i < results.getDocs().length; i++) {
            Document result = results.doc(i);

            String portletId = result.get(Field.PORTLET_ID);

            String snippet = results.snippet(i);

            long resultGroupId = GetterUtil.getLong(result.get(Field.GROUP_ID));

            PortletURL portletURL = getPortletURL(request, portletId, resultGroupId);

            Summary summary = getSummary(indexer, result, snippet, portletURL);

            String title = summary.getTitle();
            String url = getURL(themeDisplay, resultGroupId, result, portletURL);
            Date modifedDate = result.getDate(Field.MODIFIED);
            String content = summary.getContent();

            String[] tags = new String[0];

            Field assetTagNamesField = result.getFields().get(Field.ASSET_TAG_NAMES);

            if (assetTagNamesField != null) {
                tags = assetTagNamesField.getValues();
            }

            double ratings = 0.0;

            String entryClassName = result.get(Field.ENTRY_CLASS_NAME);
            long entryClassPK = GetterUtil.getLong(result.get(Field.ENTRY_CLASS_PK));

            if ((Validator.isNotNull(entryClassName)) && (entryClassPK > 0)) {

                RatingsStats stats = RatingsStatsLocalServiceUtil.getStats(entryClassName, entryClassPK);

                ratings = stats.getTotalScore();
            }

            double score = results.score(i);

            addSearchResult(root, resultGroupId, entryClassName, entryClassPK, title, url, modifedDate, content,
                    tags, ratings, score, format);
        }

        if (_log.isDebugEnabled()) {
            _log.debug("Return\n" + doc.asXML());
        }

        return doc.asXML();
    } catch (Exception e) {
        throw new SearchException(e);
    }
}