|
Jive API (3.0.13) Core Javadocs | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface ProfileSearchManager
Manages the search feature of Jive Expert User Search by defining properties of the search indexer. Indexing can either be done real-time by calling addToIndex(...) every time a new object is created, or by running the indexer in timed update mode. The latter mode is preferable since it allows for faster object posting.
The automated updating mode can be adjusted by setting how often batch indexing is done. You can adjust this interval to suit your needs. Frequent updates mean that entries/comments will be searchable more quickly. Less frequent updates use fewer system resources.
If you are not using the Jive Expert User Search system at all (for example, if you have your own search technology that you'd rather use), you should disable the search feature entirely.
The following Jive properties correspond to the profile search manager settings:
| Nested Class Summary | |
|---|---|
static class |
ProfileSearchManager.SortType
|
| Method Summary | |
|---|---|
void |
addToIndex(User user)
Adds an individual user to the index. |
int |
getAutoIndexInterval()
Returns the number of minutes that the indexer waits between each update. |
int |
getCurrentCount()
Returns the number of entries that have been indexed if an indexing operation is currently active (i.e., isBusy() returns true). |
String |
getEveryoneQuery()
Return a Lucene query string to find all users in the system. |
Date |
getLastIndexedDate()
Returns the date that the last update to the index was made. |
ProfileSearchResults |
getNewestMembers(int limit)
Get results corresponding to the recent members in the system. |
int |
getPercentComplete()
Returns the percent complete that an indexing operation is if an indexing operation is currently active (i.e., isBusy() returns true). |
Set<String> |
getPrefixCharacters()
Returns a set of one-character Strings corresponding to the first character (or symbol) of all usernames, names, first names, and last names in the system. |
ProfileSearchResults |
getSimilarUserResults(long userID,
int limit)
Returns the hits that are similar to the specified user. |
org.apache.lucene.search.Sort |
getSort(ProfileSearchManager.SortType sortType)
Return a Lucene Sort object for the specified field |
org.apache.lucene.search.Sort |
getSort(ProfileSearchManager.SortType sortType,
Locale locale)
Return a Lucene Sort object for the specified field and locale. |
ProfileSearchResults |
getTopMembers(int limit)
Get results corresponding to the top members in the system. |
int |
getTotalCount()
Returns the total number of entries that are to be indexed if an indexing operation is currently active (i.e., isBusy() returns true). |
boolean |
isAutoIndexEnabled()
Returns true if auto indexing is turned on. |
boolean |
isBusy()
Returns true if the search manager is currently busy with an search indexing task. |
boolean |
isEmailVisible()
Determines whether or not user email addresses are visible when performing a user search. |
boolean |
isSearchEnabled()
Returns true if the profile search feature is turned on. |
void |
optimize()
Optimizes the underlying search index for maximum speed. |
void |
rebuildIndex()
Manually rebuild the entire index. |
void |
removeFromIndex(User user)
Removes an individual user from the index. |
ProfileSearchResults |
search(ProfileSearchQuery query)
Returns a ProfileSearchResults that corresponds to the search query. |
void |
setAddDefaultPrefixCharacters(boolean addDefaultPrefix)
If true, we will always populate the prefix set with "a" through "z", in addition to automatically. |
void |
setAutoIndexEnabled(boolean value)
Enables or disables auto indexing. |
void |
setAutoIndexInterval(int minutes)
Sets the number of minutes that indexer should wait between updating the index. |
void |
setEmailVisible(boolean emailVisible)
Determines whether or not user email addresses are visible when performing a user search. |
void |
setFilterSymbolPrefixCharacters(boolean filterSymbolsOnPrefixCharacters)
If true, will remove "symbol" chars from automatcally generated prefix character list, i.e. any character that doesn't match the \p{L} regex. |
void |
setSearchEnabled(boolean searchEnabled)
Enables or disables the profile search feature. |
void |
updateIndex()
Manually update the index to include all new objects since the last update. |
| Methods inherited from interface com.jivesoftware.community.JiveManager |
|---|
destroy |
| Method Detail |
|---|
boolean isSearchEnabled()
void setSearchEnabled(boolean searchEnabled)
throws UnauthorizedException
searchEnabled - true to enable the search feature, false to disable.
UnauthorizedException - if not the system admin.boolean isEmailVisible()
void setEmailVisible(boolean emailVisible)
throws UnauthorizedException
emailVisible - true if user email addresses are visible, false otherwise.
UnauthorizedException - if not the system admin.
void setAddDefaultPrefixCharacters(boolean addDefaultPrefix)
throws UnauthorizedException
UnauthorizedException - if not the system admin.
void setFilterSymbolPrefixCharacters(boolean filterSymbolsOnPrefixCharacters)
throws UnauthorizedException
filterSymbolsOnPrefixCharacters -
UnauthorizedException - if not the system admin.ProfileSearchResults search(ProfileSearchQuery query)
query - the profile search query
ProfileSearchResults getSimilarUserResults(long userID,
int limit)
userID - the userID that other user records will be similar tolimit - The limit of results returned.
ProfileSearchResults getTopMembers(int limit)
limit -
ProfileSearchResults getNewestMembers(int limit)
limit -
boolean isBusy()
rebuildIndex() will do nothing. If you'd like to query the status of the indexing
operation while the manager is busy, use the getPercentComplete() method.
int getPercentComplete()
isBusy() returns true). Valid percentages returned are from 0 to 100. If no indexing operation is
active, this method will return -1.
int getTotalCount()
isBusy() returns true).
int getCurrentCount()
isBusy() returns true).
boolean isAutoIndexEnabled()
void setAutoIndexEnabled(boolean value)
throws UnauthorizedException
value - true to turn auto indexing on, false to turn it off.
UnauthorizedException - if not the system admin.int getAutoIndexInterval()
void setAutoIndexInterval(int minutes)
throws UnauthorizedException
minutes - the number of minutes between automatic index updates.
UnauthorizedException - if not the system admin.Date getLastIndexedDate()
void addToIndex(User user)
user - the user to add to the index.void removeFromIndex(User user)
user - the user to remove from the index.
void updateIndex()
throws UnauthorizedException
UnauthorizedException - if not the system admin.
void rebuildIndex()
throws UnauthorizedException
UnauthorizedException - if not the system admin.
void optimize()
throws UnauthorizedException
UnauthorizedException - if not the system admin.Set<String> getPrefixCharacters()
String getEveryoneQuery()
org.apache.lucene.search.Sort getSort(ProfileSearchManager.SortType sortType)
sortType - the field by which to sort the results
org.apache.lucene.search.Sort getSort(ProfileSearchManager.SortType sortType,
Locale locale)
sortType - the field by which to sort the resultslocale - locale which defines the collator to use for sorting text
|
Jive Product Page | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||