public class LuceneMemberSearchEngine extends LuceneDataSearchEngine implements JcmsConstants
LuceneDataSearchEngine.IndexingLatch
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ALLFIELDS_FIELD |
static java.lang.String |
CDATE_FIELD |
static java.lang.String |
DEPARTMENT_FIELD |
static java.lang.String |
EMAIL_FIELD |
static java.lang.String |
ENABLED_FIELD |
static java.lang.String |
FIRSTNAME_FIELD |
static java.lang.String |
GROUPS_FIELD |
static java.lang.String |
ID_FIELD |
static java.lang.String |
INDEXING_DATE_EXTRAINFO |
static java.lang.String |
INDEXING_DATE_FIELD |
static java.lang.String |
JOBTITLE_FIELD |
static java.lang.String |
LASTNAME_FIELD |
static java.lang.String |
LOGIN_FIELD |
static java.lang.String |
MAXIMUM_RESULTS_NUMBER_REACHED
QueryHandler handler attribute indicating that the maximum number of
results allowed in a member search was exceeded.
|
static java.lang.String |
MDATE_FIELD |
protected static java.lang.String |
MEMBER_ENGINE_NAME |
protected static java.lang.String |
MEMBER_INDEX_DIRECTORY |
static java.lang.String |
ORGANIZATION_FIELD |
static java.lang.String |
PHONES_FIELD |
static java.lang.String |
POSTALCODE_FIELD |
static java.lang.String |
REVISION |
static java.lang.String |
USAGE_FIELD |
alarmMgr, channel, directoryName, engineName, indexAccessLock, langList, langToIndexDirMap, langToIndexWriterMap, multilingual
ADATE_SEARCH, ADMIN_NOTES_PROP, ADVANCED_TAB, AJAX_MODE_ATTR, ARCHIVES_DIR, ASCII_WIDTH, CATEGORY_TAB, CDATE_SEARCH, COMMON_ALARM, CONTENT_TAB, COOKIE_MAX_AGE, COUNTRY_SPRITE, CTRL_TOPIC_INTERNAL, CTRL_TOPIC_REF, CTRL_TOPIC_VALUE, CTRL_TOPIC_WRITE, CUSTOM_PROP, DOCCHOOSER_HEIGHT, DOCCHOOSER_WIDTH, DOCS_DIR, EDATE_SEARCH, EMAIL_REGEXP, ERROR_MSG, FORBIDDEN_FILE_ACCESS, FORBIDDEN_REDIRECT, FORCE_REDIRECT, GLYPH_ICON_PREFIX, ICON_ARCHIVE, ICON_ICON_PREFIX, ICON_LOCK, ICON_LOCK_STRONG, ICON_PREFIX_PROP, ICON_WARN, ICON_WH_BOOK_CLOSED, ICON_WH_BOOK_OPEN, INFORMATION_MSG, JALIOS_JUNIT_PROP, JCMS_CADDY, JCMS_MSG_LIST, JCMS_TOASTR_COLLECTION, JSYNC_DOWNLOAD_DIR, JSYNC_SYNC_ALARM, LANG_SPRITE, LOG_FILE, LOG_TOPIC_SECURITY, LOGGER_PROP, LOGGER_XMLPROP, MBR_PHOTO_DIR, MDATE_SEARCH, MONITOR_XML, OP_CREATE, OP_CREATE_STR, OP_DEEP_COPY, OP_DEEP_COPY_STR, OP_DEEP_DELETE, OP_DEEP_DELETE_STR, OP_DELETE, OP_DELETE_STR, OP_MERGE, OP_MERGE_STR, OP_UPDATE, OP_UPDATE_STR, ORGANIZATION_ROOT_GROUP_PROP, PDATE_SEARCH, PHOTO_DIR, PHOTO_ICON, PHOTO_ICON_HEIGHT, PHOTO_ICON_PROP_PREFIX, PHOTO_ICON_WIDTH, PHOTO_LARGE, PHOTO_LARGE_HEIGHT, PHOTO_LARGE_PROP_PREFIX, PHOTO_LARGE_WIDTH, PHOTO_NORMAL, PHOTO_NORMAL_HEIGHT, PHOTO_NORMAL_PROP_PREFIX, PHOTO_NORMAL_WIDTH, PHOTO_SMALL, PHOTO_SMALL_HEIGHT, PHOTO_SMALL_PROP_PREFIX, PHOTO_SMALL_WIDTH, PHOTO_TINY, PHOTO_TINY_HEIGHT, PHOTO_TINY_PROP_PREFIX, PHOTO_TINY_WIDTH, PREVIOUS_TAB, PRINT_VIEW, PRIVATE_FILE_ACCESS, PUBLIC_FILE_ACCESS, READ_RIGHT_TAB, SDATE_SEARCH, SEARCHENGINE_ALARM, SESSION_AUTHORIZED_FILENAMES_SET, SPRITE_ICON_PREFIX, STATS_REPORT_DIR, STATUS_PROP, STORE_XML, SUCCESS_MSG, TEMPLATE_TAB, THUMBNAIL_LARGE_HEIGHT, THUMBNAIL_LARGE_WIDTH, THUMBNAIL_SMALL_HEIGHT, THUMBNAIL_SMALL_WIDTH, TTCARD_MEDIA_HEIGHT, TTCARD_MEDIA_WIDTH, TYPES_ICON_ALT_PROP, TYPES_ICON_SUFFIX_PROP, TYPES_ICON_TITLE_PROP, TYPES_PREFIX_PROP, TYPES_THUMB_SUFFIX_PROP, UDATE_SEARCH, UPDATE_RIGHT_TAB, UPLOAD_DIR, URL_REGEXP, WARNING_MSG, WEBAPP_PROP, WFEXPRESS_ALARM, WFREMINDER_ALARM, WORKFLOW_TAB, WORKFLOW_XML
CRLF, MILLIS_IN_ONE_DAY, MILLIS_IN_ONE_HOUR, MILLIS_IN_ONE_MINUTE, MILLIS_IN_ONE_MONTH, MILLIS_IN_ONE_SECOND, MILLIS_IN_ONE_WEEK, MILLIS_IN_ONE_YEAR
Modifier and Type | Method and Description |
---|---|
void |
add(Member mbr)
Add the specified Member to the lucene index.
|
protected com.jalios.jcms.search.DataIterator<Data> |
getAllDataIterator()
This methods must be implemented by the LuceneSearchEngine.
|
org.apache.lucene.store.FSDirectory |
getDirectory()
Returns the lucene directory used by this LuceneMemberSearchEngine.
|
java.util.Date |
getIndexingDate(Member mbr)
Retrieve the Date at which the specified Member was indexed.
|
static LuceneMemberSearchEngine |
getInstance()
Retrieve the LuceneMemberSearchEngine singleton.
|
protected org.apache.log4j.Logger |
getLogger()
This methods must be implemented by the LuceneSearchEngine.
|
org.apache.lucene.document.Document |
getLuceneDocument(Member mbr)
Retrieve a new lucene Document for the specified Member in preparation of indexing.
|
static int |
getMaximumResults()
Retrieve the maximum number of results allowed to be return for a search.
|
protected void |
indexData(org.apache.lucene.index.IndexWriter writer,
Data data,
java.lang.String lang)
This methods index the specified Member.
|
void |
optimize()
Realize a Lucene optimization of the Lucene Member Index.
|
void |
remove(Member mbr)
Remove the specified Member from the lucene index.
|
java.util.LinkedHashMap<java.lang.String,java.lang.Float> |
search(AllMemberQueryHandler amqh)
Search all members (Member and DBMember) using the specified criteria (paging excepted).
|
PageResult<Member> |
searchPage(AllMemberQueryHandler amqh)
Search all members (Member and DBMember) using the specified criteria.
|
void |
update(Member mbr)
Update the specified Member in the lucene index.
|
acquireSearcher, addData, addDataCollection, clearIndices, clearSearcher, deleteData, deleteDataCollection, getAnalyzer, getDirectory, getIndexingDate, getIndexingDate, getIndexingLatch, getIndexWriter, getLastOptimizeDateSinceRestart, getLastOptimizeDuration, getLastReindexDateSinceRestart, getLastReindexDuration, getLuceneDocument, getOperationStartTime, getPrimaryTerm, getProgressState, getSearcherManager, getSimilarity, index, index, isOperationRunning, optimizeIndices, reindexAll, releaseSearcher, remove, updateData, updateDataCollection
public static final java.lang.String REVISION
protected static final java.lang.String MEMBER_ENGINE_NAME
protected static final java.lang.String MEMBER_INDEX_DIRECTORY
public static final java.lang.String ID_FIELD
public static final java.lang.String CDATE_FIELD
public static final java.lang.String MDATE_FIELD
public static final java.lang.String ALLFIELDS_FIELD
public static final java.lang.String INDEXING_DATE_FIELD
public static final java.lang.String INDEXING_DATE_EXTRAINFO
public static final java.lang.String LOGIN_FIELD
public static final java.lang.String FIRSTNAME_FIELD
public static final java.lang.String LASTNAME_FIELD
public static final java.lang.String EMAIL_FIELD
public static final java.lang.String JOBTITLE_FIELD
public static final java.lang.String DEPARTMENT_FIELD
public static final java.lang.String ORGANIZATION_FIELD
public static final java.lang.String POSTALCODE_FIELD
public static final java.lang.String GROUPS_FIELD
public static final java.lang.String USAGE_FIELD
public static final java.lang.String PHONES_FIELD
public static final java.lang.String ENABLED_FIELD
public static final java.lang.String MAXIMUM_RESULTS_NUMBER_REACHED
Attribute value is the number of results obtained.
Authorized limit can be retrieved using getMaximumResults()
.
public static LuceneMemberSearchEngine getInstance() throws java.lang.Exception
After engine has been started during Channel startup, use Channel.getMemberSearchEngine()
to retrieve singleton getter without having to catch exception.
java.lang.Exception
- if was not initialized and the initialization failed.public org.apache.lucene.store.FSDirectory getDirectory()
public java.util.Date getIndexingDate(Member mbr)
mbr
- the Member
for which to retrieve the indexing date.public PageResult<Member> searchPage(AllMemberQueryHandler amqh)
No more than getMaximumResults()
Members will be returned, if this limit is reached,
attribute MAXIMUM_RESULTS_NUMBER_REACHED
is added to the AllMemberQueryHandler
with the total count of Member retrieved.
amqh
- the AllMemberQueryHandler instance specifying search criteria.public java.util.LinkedHashMap<java.lang.String,java.lang.Float> search(AllMemberQueryHandler amqh)
No more than getMaximumResults()
Members will be returned, if this limit is reached,
attribute MAXIMUM_RESULTS_NUMBER_REACHED
is added to the AllMemberQueryHandler
with the total count of Member retrieved.
amqh
- the AllMemberQueryHandler instance specifying search criteria.public static int getMaximumResults()
Can be configured using property query.lucene.mbr.max-results
public void add(Member mbr)
mbr
- the Member to be added to lucene.public void update(Member mbr)
mbr
- the Member to be update in lucene.public void remove(Member mbr)
mbr
- the Member to be removed from lucene.public org.apache.lucene.document.Document getLuceneDocument(Member mbr)
mbr
- the Member to index (must no be null).public void optimize()
Warning: This is a potentially long and heavy process on large index, do not call without being sure of what you do. It is run against the indexing thread, it will not return as long as the indexing process is not done, and will block the indexing thread from running when doing its job.
protected org.apache.log4j.Logger getLogger()
LuceneDataSearchEngine
getLogger
in class LuceneDataSearchEngine
Logger
of this engine.protected com.jalios.jcms.search.DataIterator<Data> getAllDataIterator()
LuceneDataSearchEngine
LuceneDataSearchEngine.reindexAll()
.getAllDataIterator
in class LuceneDataSearchEngine
protected void indexData(org.apache.lucene.index.IndexWriter writer, Data data, java.lang.String lang) throws java.io.IOException
indexData
in class LuceneDataSearchEngine
java.io.IOException
Copyright © 2001-2017 Jalios SA. All Rights Reserved.