public abstract class AbstractPageProvider<T> extends Object implements PageProvider<T>
PageProvider| Modifier and Type | Field and Description |
|---|---|
static Log |
log |
DEFAULT_MAX_PAGE_SIZE, DEFAULT_MAX_PAGE_SIZE_RUNTIME_PROP, PAGE_LIMIT_UNKNOWN, UNKNOWN_SIZE, UNKNOWN_SIZE_AFTER_QUERY| Constructor and Description |
|---|
AbstractPageProvider() |
| Modifier and Type | Method and Description |
|---|---|
void |
addSortInfo(String sortColumn,
boolean sortAscending)
Add the given sort info to the list of sorting infos.
|
void |
firstPage()
Go to the first page
|
T |
getCurrentEntry()
Returns the current entry.
|
int |
getCurrentHigherNonEmptyPageIndex()
Returns an integer keeping track of the higher page index giving
results.
|
abstract List<T> |
getCurrentPage()
Returns the current page of results.
|
long |
getCurrentPageIndex()
Returns the current page index as a zero-based integer.
|
long |
getCurrentPageOffset()
Returns the offset (starting from 0) of the first element in the current
page or
UNKNOWN_SIZE. |
long |
getCurrentPageSize()
Returns the number of elements in current page.
|
String |
getCurrentPageStatus()
Returns a simple formatted string for current pagination status.
|
PageSelections<T> |
getCurrentSelectPage()
Returns the current page of results wrapped in a
PageSelection
item. |
PageProviderDefinition |
getDefinition() |
Throwable |
getError() |
String |
getErrorMessage() |
int |
getMaxNumberOfEmptyPages()
Returns the maximum number of empty pages that can be fetched empty
(defaults to 1).
|
long |
getMaxPageSize()
Returns the max number of results per page.
|
long |
getMinMaxPageSize()
Returns the minimal value for the max page size, taking the lower value
between the requested page size and the maximum accepted page size.
|
String |
getName()
Returns the provider identifier
|
long |
getNumberOfPages()
Returns the total number of pages or 0 if number of pages is unknown.
|
long |
getPageLimit()
Returns the page limit.
|
long |
getPageSize()
Returns the number of results per page.
|
Object[] |
getParameters() |
Map<String,Serializable> |
getProperties()
Gets properties set on the provider.
|
long |
getResultsCount()
Returns the number of result elements if available or a negative value
if it is unknown:
UNKNOWN_SIZE if it is unknown as query
was not done, and since 5.5, UNKNOWN_SIZE_AFTER_QUERY if it
is still unknown after query was done. |
DocumentModel |
getSearchDocumentModel() |
SortInfo |
getSortInfo()
Returns the first sorting info for this provider
|
int |
getSortInfoIndex(String sortColumn,
boolean sortAscending)
Returns a positive 0-based integer if given sort information is found on
the set sort infos, indicating the sort index, or -1 if this sort
information is not found.
|
List<SortInfo> |
getSortInfos()
Returns the complete list of sorting info for this provider
|
boolean |
hasChangedParameters(Object[] parameters)
Test if provider parameters have changed
|
boolean |
hasError() |
boolean |
isLastPageAvailable()
Returns a boolean expressing if the last page can be displayed.
|
boolean |
isNextEntryAvailable()
Returns true if there is a next entry.
|
boolean |
isNextPageAvailable()
Returns a boolean expressing if there are further pages.
|
boolean |
isPreviousEntryAvailable()
Returns true if there is a previous entry.
|
boolean |
isPreviousPageAvailable()
Returns a boolean expressing if there is a previous page.
|
boolean |
isSortable()
Returns if this provider is sortable
|
void |
last()
Deprecated.
|
void |
lastPage()
Go to the last page.
|
void |
next()
Deprecated.
|
void |
nextEntry()
Move the current entry to the next one, if applicable.
|
void |
nextPage()
Go to the next page
|
void |
previous()
Deprecated.
|
void |
previousEntry()
Move the current entry to the previous one, if applicable.
|
void |
previousPage()
Go to the previous page
|
void |
refresh()
Refresh hook, to override for custom behavior
|
void |
rewind()
Deprecated.
|
void |
setCurrentEntry(T entry)
Sets the current entry.
|
void |
setCurrentEntryIndex(long index)
Sets the current entry index.
|
void |
setCurrentHigherNonEmptyPageIndex(int higherFilledPageIndex) |
List<T> |
setCurrentPage(long page)
Sets the current page of results to the required one and return it.
|
void |
setCurrentPageIndex(long currentPageIndex)
Sets the current page of results to the required one.
|
void |
setCurrentPageOffset(long offset)
Sets the current page offset.
|
void |
setDefinition(PageProviderDefinition providerDefinition) |
void |
setMaxPageSize(long maxPageSize)
Sets the max number of results per page.
|
void |
setName(String name)
Sets the provider identifier
|
void |
setPageProviderChangedListener(PageProviderChangedListener listener)
Sets the
PageProviderChangedListener for this
PageProvider. |
void |
setPageSize(long pageSize)
Sets the number results per page.
|
void |
setParameters(Object[] parameters) |
void |
setProperties(Map<String,Serializable> properties)
Sets properties set on the provider.
|
void |
setResultsCount(long resultsCount)
Sets the results count.
|
void |
setSearchDocumentModel(DocumentModel searchDocumentModel) |
void |
setSelectedEntries(List<T> entries)
Sets the list of selected entries to take into account in
PageProvider.getCurrentSelectPage(). |
void |
setSortable(boolean sortable) |
void |
setSortInfo(SortInfo sortInfo)
Sets the first and only sorting info for this provider.
|
void |
setSortInfo(String sortColumn,
boolean sortAscending,
boolean removeOtherSortInfos)
Sets the first and only sorting info for this provider if parameter
removeOtherSortInfos is true.
|
void |
setSortInfos(List<SortInfo> sortInfo)
Sets the complete list of sorting info for this provider
|
public static final Log log
public abstract List<T> getCurrentPage()
PageProviderThis method is designed to be called from higher levels. It therefore ensures cheapness of repeated calls, rather than data consistency. There is a refresh() method for that.
getCurrentPage in interface PageProvider<T>public void firstPage()
PageProviderfirstPage in interface PageProvider<T>@Deprecated public void rewind()
public long getCurrentPageIndex()
PageProvidergetCurrentPageIndex in interface PageProvider<T>public long getCurrentPageOffset()
PageProviderUNKNOWN_SIZE.getCurrentPageOffset in interface PageProvider<T>public void setCurrentPageOffset(long offset)
PageProviderIf the provider keeps information linked to the current page, they should be reset after calling this method.
setCurrentPageOffset in interface PageProvider<T>public long getCurrentPageSize()
PageProvidergetCurrentPageSize in interface PageProvider<T>public String getName()
PageProvidergetName in interface PageProvider<T>public long getNumberOfPages()
PageProvidergetNumberOfPages in interface PageProvider<T>public void setCurrentPageIndex(long currentPageIndex)
PageProvidersetCurrentPageIndex in interface PageProvider<T>currentPageIndex - the page index, starting from 0public List<T> setCurrentPage(long page)
PageProvidersetCurrentPage in interface PageProvider<T>page - the page index, starting from 0public long getPageSize()
PageProvidergetPageSize in interface PageProvider<T>public void setPageSize(long pageSize)
PageProvidersetPageSize in interface PageProvider<T>public List<SortInfo> getSortInfos()
PageProvidergetSortInfos in interface PageProvider<T>public SortInfo getSortInfo()
PageProviderAlso kept for compatibility with existing code.
getSortInfo in interface PageProvider<T>public void setSortInfos(List<SortInfo> sortInfo)
PageProvidersetSortInfos in interface PageProvider<T>public void setSortInfo(SortInfo sortInfo)
PageProviderAlso kept for compatibility with existing code.
setSortInfo in interface PageProvider<T>public void setSortInfo(String sortColumn, boolean sortAscending, boolean removeOtherSortInfos)
PageProvidersetSortInfo in interface PageProvider<T>public void addSortInfo(String sortColumn, boolean sortAscending)
PageProvideraddSortInfo in interface PageProvider<T>public int getSortInfoIndex(String sortColumn, boolean sortAscending)
PageProvidergetSortInfoIndex in interface PageProvider<T>public boolean isNextPageAvailable()
PageProviderisNextPageAvailable in interface PageProvider<T>public boolean isLastPageAvailable()
PageProviderisLastPageAvailable in interface PageProvider<T>public boolean isPreviousPageAvailable()
PageProviderisPreviousPageAvailable in interface PageProvider<T>public void lastPage()
PageProviderlastPage in interface PageProvider<T>@Deprecated public void last()
public void nextPage()
PageProvidernextPage in interface PageProvider<T>@Deprecated public void next()
public void previousPage()
PageProviderpreviousPage in interface PageProvider<T>@Deprecated public void previous()
public void refresh()
When overriding it, call super.refresh() as last statement
to make sure that the PageProviderChangedListener is called with
the up-to-date @{code PageProvider} state.
refresh in interface PageProvider<T>public void setName(String name)
PageProvidersetName in interface PageProvider<T>public String getCurrentPageStatus()
PageProvidergetCurrentPageStatus in interface PageProvider<T>public boolean isNextEntryAvailable()
PageProviderThe next entry might be in next page, except if results count is unknown.
isNextEntryAvailable in interface PageProvider<T>public boolean isPreviousEntryAvailable()
PageProviderThe previous entry might be in previous page.
isPreviousEntryAvailable in interface PageProvider<T>public void nextEntry()
PageProviderIf needed and possible, the provider will forward to next page. No special exceptions: this method is intended to be plugged directly at the UI layer. In case there's no next entry, nothing happens.
nextEntry in interface PageProvider<T>public void previousEntry()
PageProviderNo exception: this method is intended to be plugged directly at the UI layer. In case there's no previous entry, nothing will happen.
previousEntry in interface PageProvider<T>public T getCurrentEntry()
PageProvidergetCurrentEntry in interface PageProvider<T>public void setCurrentEntry(T entry) throws ClientException
PageProvidersetCurrentEntry in interface PageProvider<T>ClientException - if entry is not found within current page.public void setCurrentEntryIndex(long index)
throws ClientException
PageProvidersetCurrentEntryIndex in interface PageProvider<T>ClientException - if index is not found within current page.public long getResultsCount()
PageProviderUNKNOWN_SIZE if it is unknown as query
was not done, and since 5.5, UNKNOWN_SIZE_AFTER_QUERY if it
is still unknown after query was done.getResultsCount in interface PageProvider<T>public Map<String,Serializable> getProperties()
PageProviderUseful to retrieve a provider specific field attributes after instantiation. Other contextual parameters can be passed through API constructing the result provider.
getProperties in interface PageProvider<T>public void setProperties(Map<String,Serializable> properties)
PageProviderUseful to initialize a provider specific field attributes after instantiation. Other contextual parameters can be passed through API constructing the result provider.
setProperties in interface PageProvider<T>public void setResultsCount(long resultsCount)
PageProvidersetResultsCount in interface PageProvider<T>public void setSortable(boolean sortable)
setSortable in interface PageProvider<T>public boolean isSortable()
PageProviderisSortable in interface PageProvider<T>public PageSelections<T> getCurrentSelectPage()
PageProviderPageSelection
item.
By default, no entry is selected, unless
PageProvider.setSelectedEntries(List) has been called before.
getCurrentSelectPage in interface PageProvider<T>public void setSelectedEntries(List<T> entries)
PageProviderPageProvider.getCurrentSelectPage().setSelectedEntries in interface PageProvider<T>public Object[] getParameters()
getParameters in interface PageProvider<T>public void setParameters(Object[] parameters)
setParameters in interface PageProvider<T>public DocumentModel getSearchDocumentModel()
getSearchDocumentModel in interface PageProvider<T>public void setSearchDocumentModel(DocumentModel searchDocumentModel)
setSearchDocumentModel in interface PageProvider<T>public String getErrorMessage()
getErrorMessage in interface PageProvider<T>public Throwable getError()
getError in interface PageProvider<T>public boolean hasError()
hasError in interface PageProvider<T>public PageProviderDefinition getDefinition()
getDefinition in interface PageProvider<T>public void setDefinition(PageProviderDefinition providerDefinition)
setDefinition in interface PageProvider<T>public long getMaxPageSize()
PageProviderIf page size is greater than this maximum value, it will be taken into account instead.
getMaxPageSize in interface PageProvider<T>public void setMaxPageSize(long maxPageSize)
PageProviderIf page size is greater than this maximum value, it will be taken into account instead.
setMaxPageSize in interface PageProvider<T>public long getMinMaxPageSize()
public int getCurrentHigherNonEmptyPageIndex()
public long getPageLimit()
getPageLimit in interface PageProvider<T>public void setCurrentHigherNonEmptyPageIndex(int higherFilledPageIndex)
public int getMaxNumberOfEmptyPages()
public void setPageProviderChangedListener(PageProviderChangedListener listener)
PageProviderPageProviderChangedListener for this
PageProvider.setPageProviderChangedListener in interface PageProvider<T>public boolean hasChangedParameters(Object[] parameters)
PageProviderhasChangedParameters in interface PageProvider<T>Copyright © 2013 Nuxeo SA. All Rights Reserved.