Example usage for com.liferay.portal.kernel.search Document addDate

List of usage examples for com.liferay.portal.kernel.search Document addDate

Introduction

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

Prototype

public void addDate(String name, Date[] values);

Source Link

Usage

From source file:ca.efendi.datafeeds.search.CJProductIndexer.java

License:Apache License

@Override
protected Document doGetDocument(final CJProduct object) throws Exception {
    final Document document = getBaseModelDocument(CLASS_NAME, object);
    document.addText(Field.CAPTION, object.getName());
    document.addText(Field.CONTENT, HtmlUtil.extractText(object.getDescription()));
    document.addText(Field.DESCRIPTION, object.getDescription());
    document.addDate(Field.MODIFIED_DATE, object.getModifiedDate());
    //document.addText(Field.SUBTITLE, blogsEntry.getSubtitle());
    document.addText(Field.TITLE, object.getName());
    return document;
}

From source file:com.liferay.blogs.internal.search.BlogsEntryIndexer.java

License:Open Source License

@Override
protected Document doGetDocument(BlogsEntry blogsEntry) throws Exception {
    Document document = getBaseModelDocument(CLASS_NAME, blogsEntry);

    document.addText(Field.CAPTION, blogsEntry.getCoverImageCaption());
    document.addText(Field.CONTENT, HtmlUtil.extractText(blogsEntry.getContent()));
    document.addText(Field.DESCRIPTION, blogsEntry.getDescription());
    document.addDate(Field.MODIFIED_DATE, blogsEntry.getModifiedDate());
    document.addText(Field.SUBTITLE, blogsEntry.getSubtitle());
    document.addText(Field.TITLE, blogsEntry.getTitle());

    return document;
}

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

License:Open Source License

protected void adjustDatePrecision(String field, Document document, DateFormat dateFormat) throws Exception {

    Date date1 = document.getDate(field);

    Date date2 = dateFormat.parse(dateFormat.format(date1));

    document.addDate(field, date2);
    document.addKeyword(field.concat("_sortable"), date2.getTime());
}

From source file:com.liferay.docs.guestbook.search.GuestbookEntryModelDocumentContributor.java

License:Open Source License

@Override
public void contribute(Document document, GuestbookEntry entry) {
    try {/*  ww w  .  ja  v  a  2 s  .  com*/
        Locale defaultLocale = PortalUtil.getSiteDefaultLocale(entry.getGroupId());

        document.addDate(Field.MODIFIED_DATE, entry.getModifiedDate());
        document.addText("entryEmail", entry.getEmail());

        String localizedTitle = LocalizationUtil.getLocalizedName(Field.TITLE, defaultLocale.toString());
        String localizedContent = LocalizationUtil.getLocalizedName(Field.CONTENT, defaultLocale.toString());

        document.addText(localizedTitle, entry.getName());
        document.addText(localizedContent, entry.getMessage());

        long guestbookId = entry.getGuestbookId();

        Guestbook guestbook = _guestbookLocalService.getGuestbook(guestbookId);

        String guestbookName = guestbook.getName();

        String localizedGbName = LocalizationUtil.getLocalizedName(Field.NAME, defaultLocale.toString());

        document.addText(localizedGbName, guestbookName);
    } catch (PortalException pe) {
        if (_log.isWarnEnabled()) {
            _log.warn("Unable to index entry " + entry.getEntryId(), pe);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:com.liferay.docs.guestbook.search.GuestbookModelDocumentContributor.java

License:Open Source License

@Override
public void contribute(Document document, Guestbook guestbook) {
    try {//from  w  w w.j av  a2 s .c o  m
        document.addDate(Field.MODIFIED_DATE, guestbook.getModifiedDate());

        Locale defaultLocale = PortalUtil.getSiteDefaultLocale(guestbook.getGroupId());

        String localizedTitle = LocalizationUtil.getLocalizedName(Field.TITLE, defaultLocale.toString());

        document.addText(localizedTitle, guestbook.getName());
    } catch (PortalException pe) {
        if (_log.isWarnEnabled()) {
            _log.warn("Unable to index guestbook " + guestbook.getGuestbookId(), pe);
        }
    }
}

From source file:com.liferay.exportimport.search.ExportImportConfigurationIndexer.java

License:Open Source License

protected void populateDates(Document document, Map<String, Serializable> settingsMap) {

    if (settingsMap.containsKey("endDate")) {
        Date endDate = (Date) settingsMap.get("endDate");

        document.addDate(_PREFIX_SETTING + "endDate", endDate);
    }//from   www  .j  av  a 2 s . c o  m

    if (settingsMap.containsKey("startDate")) {
        Date startDate = (Date) settingsMap.get("startDate");

        document.addDate(_PREFIX_SETTING + "startDate", startDate);
    }
}

From source file:com.liferay.journal.search.JournalArticleIndexer.java

License:Open Source License

@Override
protected Document doGetDocument(JournalArticle journalArticle) throws Exception {

    Document document = getBaseModelDocument(CLASS_NAME, journalArticle);

    long classPK = journalArticle.getId();

    if (!isIndexAllArticleVersions()) {
        classPK = journalArticle.getResourcePrimKey();
    }//from   w  w  w  .  j a va  2s  .  c om

    document.addUID(CLASS_NAME, classPK);

    String articleDefaultLanguageId = LocalizationUtil.getDefaultLanguageId(journalArticle.getDocument());

    String[] languageIds = LocalizationUtil.getAvailableLanguageIds(journalArticle.getDocument());

    for (String languageId : languageIds) {
        String content = extractDDMContent(journalArticle, languageId);

        String description = journalArticle.getDescription(languageId);

        String title = journalArticle.getTitle(languageId);

        if (languageId.equals(articleDefaultLanguageId)) {
            document.addText(Field.CONTENT, content);
            document.addText(Field.DESCRIPTION, description);
            document.addText("defaultLanguageId", languageId);
        }

        document.addText(LocalizationUtil.getLocalizedName(Field.CONTENT, languageId), content);
        document.addText(LocalizationUtil.getLocalizedName(Field.DESCRIPTION, languageId), description);
        document.addText(LocalizationUtil.getLocalizedName(Field.TITLE, languageId), title);
    }

    document.addKeyword(Field.FOLDER_ID, journalArticle.getFolderId());

    String articleId = journalArticle.getArticleId();

    if (journalArticle.isInTrash()) {
        articleId = TrashUtil.getOriginalTitle(articleId);
    }

    document.addKeywordSortable(Field.ARTICLE_ID, articleId);

    document.addKeyword(Field.LAYOUT_UUID, journalArticle.getLayoutUuid());
    document.addKeyword(Field.TREE_PATH, StringUtil.split(journalArticle.getTreePath(), CharPool.SLASH));
    document.addKeyword(Field.VERSION, journalArticle.getVersion());

    document.addKeyword("ddmStructureKey", journalArticle.getDDMStructureKey());
    document.addKeyword("ddmTemplateKey", journalArticle.getDDMTemplateKey());
    document.addDate("displayDate", journalArticle.getDisplayDate());
    document.addKeyword("head", JournalUtil.isHead(journalArticle));

    boolean headListable = JournalUtil.isHeadListable(journalArticle);

    document.addKeyword("headListable", headListable);

    // Scheduled listable articles should be visible in asset browser

    if (journalArticle.isScheduled() && headListable) {
        boolean visible = GetterUtil.getBoolean(document.get("visible"));

        if (!visible) {
            document.addKeyword("visible", true);
        }
    }

    addDDMStructureAttributes(document, journalArticle);

    return document;
}

From source file:com.liferay.portlet.blogs.util.BlogsIndexer.java

License:Open Source License

@Override
protected Document doGetDocument(Object obj) throws Exception {
    BlogsEntry entry = (BlogsEntry) obj;

    Document document = getBaseModelDocument(PORTLET_ID, entry);

    document.addText(Field.CONTENT, HtmlUtil.extractText(entry.getContent()));
    document.addDate(Field.MODIFIED_DATE, entry.getDisplayDate());
    document.addText(Field.TITLE, entry.getTitle());

    return document;
}

From source file:com.liferay.portlet.documentlibrary.util.DLIndexer.java

License:Open Source License

@Override
protected Document doGetDocument(Object obj) throws Exception {
    DLFileEntry dlFileEntry = (DLFileEntry) obj;

    if (_log.isDebugEnabled()) {
        _log.debug("Indexing document " + dlFileEntry);
    }//  w  w  w .j  av a  2 s  . c  om

    boolean indexContent = true;

    InputStream is = null;

    try {
        if (PropsValues.DL_FILE_INDEXING_MAX_SIZE == 0) {
            indexContent = false;
        } else if (PropsValues.DL_FILE_INDEXING_MAX_SIZE != -1) {
            if (dlFileEntry.getSize() > PropsValues.DL_FILE_INDEXING_MAX_SIZE) {

                indexContent = false;
            }
        }

        if (indexContent) {
            String[] ignoreExtensions = PrefsPropsUtil
                    .getStringArray(PropsKeys.DL_FILE_INDEXING_IGNORE_EXTENSIONS, StringPool.COMMA);

            if (ArrayUtil.contains(ignoreExtensions, StringPool.PERIOD + dlFileEntry.getExtension())) {

                indexContent = false;
            }
        }

        if (indexContent) {
            is = dlFileEntry.getFileVersion().getContentStream(false);
        }
    } catch (Exception e) {
    }

    if (indexContent && (is == null)) {
        if (_log.isDebugEnabled()) {
            _log.debug("Document " + dlFileEntry + " does not have any content");
        }

        return null;
    }

    try {
        Document document = new DocumentImpl();

        long fileEntryId = dlFileEntry.getFileEntryId();

        document.addUID(PORTLET_ID, fileEntryId);

        List<AssetCategory> assetCategories = AssetCategoryLocalServiceUtil
                .getCategories(DLFileEntry.class.getName(), fileEntryId);

        long[] assetCategoryIds = StringUtil
                .split(ListUtil.toString(assetCategories, AssetCategory.CATEGORY_ID_ACCESSOR), 0L);

        document.addKeyword(Field.ASSET_CATEGORY_IDS, assetCategoryIds);

        String[] assetCategoryNames = StringUtil
                .split(ListUtil.toString(assetCategories, AssetCategory.NAME_ACCESSOR));

        document.addKeyword(Field.ASSET_CATEGORY_NAMES, assetCategoryNames);

        String[] assetTagNames = AssetTagLocalServiceUtil.getTagNames(DLFileEntry.class.getName(), fileEntryId);

        document.addKeyword(Field.ASSET_TAG_NAMES, assetTagNames);

        document.addKeyword(Field.COMPANY_ID, dlFileEntry.getCompanyId());

        if (indexContent) {
            try {
                document.addFile(Field.CONTENT, is, dlFileEntry.getTitle());
            } catch (IOException ioe) {
                throw new SearchException("Cannot extract text from file" + dlFileEntry);
            }
        }

        document.addText(Field.DESCRIPTION, dlFileEntry.getDescription());
        document.addKeyword(Field.ENTRY_CLASS_NAME, DLFileEntry.class.getName());
        document.addKeyword(Field.ENTRY_CLASS_PK, fileEntryId);
        document.addKeyword(Field.FOLDER_ID, dlFileEntry.getFolderId());
        document.addKeyword(Field.GROUP_ID, getParentGroupId(dlFileEntry.getGroupId()));
        document.addDate(Field.MODIFIED_DATE, dlFileEntry.getModifiedDate());
        document.addKeyword(Field.PORTLET_ID, PORTLET_ID);
        document.addText(Field.PROPERTIES, dlFileEntry.getLuceneProperties());
        document.addKeyword(Field.SCOPE_GROUP_ID, dlFileEntry.getGroupId());

        DLFileVersion dlFileVersion = dlFileEntry.getFileVersion();

        document.addKeyword(Field.STATUS, dlFileVersion.getStatus());
        document.addText(Field.TITLE, dlFileEntry.getTitle());

        long userId = dlFileEntry.getUserId();

        document.addKeyword(Field.USER_ID, userId);
        document.addKeyword(Field.USER_NAME, PortalUtil.getUserName(userId, dlFileEntry.getUserName()), true);

        document.addKeyword("dataRepositoryId", dlFileEntry.getDataRepositoryId());
        document.addKeyword("extension", dlFileEntry.getExtension());
        document.addKeyword("fileEntryTypeId", dlFileEntry.getFileEntryTypeId());
        document.addKeyword("path", dlFileEntry.getTitle());

        ExpandoBridge expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(dlFileEntry.getCompanyId(),
                DLFileEntry.class.getName(), dlFileVersion.getFileVersionId());

        ExpandoBridgeIndexerUtil.addAttributes(document, expandoBridge);

        addFileEntryTypeAttributes(document, dlFileVersion);

        if (_log.isDebugEnabled()) {
            _log.debug("Document " + dlFileEntry + " indexed successfully");
        }

        return document;
    } finally {
        if (is != null) {
            try {
                is.close();
            } catch (IOException ioe) {
            }
        }
    }
}

From source file:com.liferay.portlet.dynamicdatamapping.util.DDMIndexerImpl.java

License:Open Source License

public void addAttributes(Document document, DDMStructure ddmStructure, Fields fields) {

    Iterator<Field> itr = fields.iterator();

    while (itr.hasNext()) {
        Field field = itr.next();

        String name = encodeName(ddmStructure.getStructureId(), field.getName());

        Serializable value = field.getValue();

        if (value instanceof Boolean) {
            document.addKeyword(name, (Boolean) value);
        } else if (value instanceof Date) {
            document.addDate(name, (Date) value);
        } else if (value instanceof Double) {
            document.addKeyword(name, (Double) value);
        } else if (value instanceof Integer) {
            document.addKeyword(name, (Integer) value);
        } else {/*from   www  .ja v  a2  s  .  co m*/
            String valueString = String.valueOf(value);

            document.addText(name, valueString);
        }
    }
}