public class UsersPageProvider extends AbstractUsersPageProvider<DocumentModel>
This page provider requires two parameters: the first one to be filled with the search string, and the second one to
be filled with the selected letter when using the tabbed
listing mode.
This page provider requires the property AbstractUsersPageProvider.USERS_LISTING_MODE_PROPERTY
to be filled with a the listing mode to
use.
ALL_MODE, pageUsers, SEARCH_ONLY_MODE, SEARCH_OVERFLOW_ERROR_MESSAGE, TABBED_MODE, userCatalog, USERS_LISTING_MODE_PROPERTY
currentEntryIndex, currentHigherNonEmptyPageIndex, currentSelectPage, definition, error, errorMessage, highlights, maxPageSize, name, offset, PAGEPROVIDER_TRACK_PROPERTY_NAME, pageProviderChangedListener, pageSize, pageSizeOptions, parameters, properties, quickFilters, resultsCount, searchDocumentModel, selectedEntries, SKIPPED_SCHEMAS_FOR_SEARCHFIELD, sortable, sortInfos, tracking
DEFAULT_MAX_PAGE_SIZE, DEFAULT_MAX_PAGE_SIZE_RUNTIME_PROP, HIGHLIGHT_CTX_DATA, PAGE_LIMIT_UNKNOWN, UNKNOWN_SIZE, UNKNOWN_SIZE_AFTER_QUERY
Constructor and Description |
---|
UsersPageProvider() |
Modifier and Type | Method and Description |
---|---|
List<DocumentModel> |
getCurrentPage()
Returns the list of current page items.
|
computeCurrentPage, getCatalogLetters, getFirstParameter, getUserListingMode, isSortable, pageChanged, refresh, searchAllUsers, searchUsers, searchUsersFromCatalog, updateUserCatalog
addQuickFilter, addSortInfo, fireSearchEvent, firstPage, getAggregateDefinitions, getAggregates, getAvailableQuickFilters, getBooleanProperty, getCurrentEntry, getCurrentHigherNonEmptyPageIndex, getCurrentPageIndex, getCurrentPageOffset, getCurrentPageSize, getCurrentPageStatus, getCurrentSelectPage, getDefaultMaxPageSize, getDefinition, getError, getErrorMessage, getHighlights, getMaxNumberOfEmptyPages, getMaxPageSize, getMinMaxPageSize, getName, getNumberOfPages, getPageLimit, getPageSize, getPageSizeOptions, getParameters, getParametersChanged, getProperties, getQuickFilters, getResultsCount, getResultsCountLimit, getSearchDocumentModel, getSortInfo, getSortInfoIndex, getSortInfos, hasAggregateSupport, hasChangedParameters, hasError, incorporateAggregates, isLastPageAvailable, isNextEntryAvailable, isNextPageAvailable, isPreviousEntryAvailable, isPreviousPageAvailable, isTrackingEnabled, lastPage, nextEntry, nextPage, notifyPageChanged, notifyRefresh, previousEntry, previousPage, searchDocumentModelChanged, setCurrentEntry, setCurrentEntryIndex, setCurrentHigherNonEmptyPageIndex, setCurrentPage, setCurrentPageIndex, setCurrentPageOffset, setDefinition, setHighlights, setMaxPageSize, setName, setPageProviderChangedListener, setPageSize, setPageSizeOptions, setParameters, setProperties, setQuickFilters, setResultsCount, setSearchDocumentModel, setSelectedEntries, setSortable, setSortInfo, setSortInfo, setSortInfos, sortInfoChanged
public UsersPageProvider()
public List<DocumentModel> getCurrentPage()
AbstractPageProvider
Custom implementation can be added here, based on the page provider properties, parameters and
WhereClauseDefinition
on the PageProviderDefinition
, as well as search document, sort
information, etc...
Implementation of this method usually consists in setting a non-null value to a field caching current items, and
nullifying this field by overriding AbstractPageProvider.pageChanged()
and AbstractPageProvider.refresh()
.
Fields AbstractPageProvider.errorMessage
and AbstractPageProvider.error
can also be filled to provide accurate feedback in case an error
occurs during the search.
When items are retrieved, a call to AbstractPageProvider.setResultsCount(long)
should be made to ensure proper pagination as
implemented in this abstract class. The implementation in CoreQueryAndFetchPageProvider
is a good example
when the total results count is known.
If for performance reasons, for instance, the number of results cannot be known, a fall-back strategy can be
applied to provide the "next" button but not the "last" one, by calling
AbstractPageProvider.getCurrentHigherNonEmptyPageIndex()
and AbstractPageProvider.setCurrentHigherNonEmptyPageIndex(int)
. In this case,
CoreQueryDocumentPageProvider
is a good example.
getCurrentPage
in interface PageProvider<DocumentModel>
getCurrentPage
in class AbstractPageProvider<DocumentModel>
Copyright © 2018 Nuxeo. All rights reserved.