public class ContentViewImpl extends Object implements ContentView, PageProviderChangedListener
Provides simple getters for attributes defined in the XMap descriptor,
except cache key which is computed from currrent FacesContext
instance if cache key is an EL expression.
The page provider is initialized calling
ContentViewService.getPageProvider(java.lang.String, java.util.List<org.nuxeo.ecm.core.api.SortInfo>, java.lang.Long, java.lang.Long, org.nuxeo.ecm.core.api.DocumentModel, java.lang.Object...)
.
CONTENT_VIEW_PAGE_CHANGED_EVENT, CONTENT_VIEW_PAGE_SIZE_CHANGED_EVENT, CONTENT_VIEW_REFRESH_EVENT, SEARCH_DOCUMENT_EL_VARIABLE
Constructor and Description |
---|
ContentViewImpl(String name,
String title,
boolean translateTitle,
String iconPath,
String selectionList,
String pagination,
List<String> actionCategories,
ContentViewLayout searchLayout,
List<ContentViewLayout> resultLayouts,
List<String> flags,
String cacheKey,
Integer cacheSize,
List<String> refreshEventNames,
List<String> resetEventNames,
boolean useGlobalPageSize,
String[] queryParameters,
String searchDocumentModelBinding,
String searchDocumentModelType,
String resultColumnsBinding,
String sortInfosBinding,
String pageSizeBinding,
boolean showTitle,
boolean showPageSizeSelector,
boolean showRefreshCommand,
boolean showFilterForm,
String emptySentence,
boolean translateEmptySentence) |
Modifier and Type | Method and Description |
---|---|
List<String> |
getActionsCategories()
Returns the list of action categories to display buttons available on
selection of items.
|
String |
getCacheKey()
Returns the cache key for this content view provider, resolving from the
current
FacesContext instance if it's an EL expression. |
Integer |
getCacheSize()
Returns the cache size for this content view.
|
PageProvider<?> |
getCurrentPageProvider()
Returns the current page provider, or null if methods
ContentView.getPageProvider() ,
ContentView.getPageProvider(DocumentModel, List, Long, Long, Object...) or
ContentView.getPageProviderWithParams(Object...) were never called before. |
Long |
getCurrentPageSize()
Returns the current page size, as set using
ContentView.setCurrentPageSize(Long) , or the page size set on current page
provider if not null. |
ContentViewLayout |
getCurrentResultLayout()
Returns the current result layout, as set using
ContentView.setCurrentResultLayout(ContentViewLayout) , or the first of
defined result layouts when not set. |
List<String> |
getCurrentResultLayoutColumns()
Returns the list of selected result layout columns, resolving the bound
EL expression set in the content view definition if columns where not
explicitely set with
ContentView.setCurrentResultLayoutColumns(List) . |
String |
getEmptySentence()
Returns a sentence to display when this content view is empty
|
List<String> |
getFlags()
Returns the list of flags set on this content view, useful to group
them, see
ContentViewService.getContentViewNames(String) |
String |
getIconPath()
Returns the icon relative path for this content view.
|
String |
getName()
Returns the name of this content view
|
PageProvider<?> |
getPageProvider()
Gets page provider according to given parameters
|
PageProvider<?> |
getPageProvider(DocumentModel searchDocument,
List<SortInfo> sortInfos,
Long pageSize,
Long currentPage,
Object... params)
Returns cached page provider if it exists or build a new one if
parameters have changed.
|
PageProvider<?> |
getPageProviderWithParams(Object... params)
Gets page provider according to given parameters
|
String |
getPagination()
Returns the pagination type to be used in pagination rendering
|
Object[] |
getQueryParameters()
Returns the query parameters for this content view provider provider,
resolving from the current
FacesContext instance if they are EL
expressions. |
List<String> |
getRefreshEventNames()
Returns the list of event names that should trigger a refresh of this
content view page provider.
|
List<String> |
getResetEventNames()
Returns the list of event names that should trigger a reset of this
content view page provider.
|
List<String> |
getResultLayoutColumns() |
List<ContentViewLayout> |
getResultLayouts()
Returns the result layouts, used to display results.
|
DocumentModel |
getSearchDocumentModel()
Returns the search document model as set on the content view.
|
String |
getSearchDocumentModelType()
Returns the search document model type as defined in the XML
configuration.
|
ContentViewLayout |
getSearchLayout()
Returns the search layout, used to filter results.
|
String |
getSelectionListName()
Returns the selection list name
|
boolean |
getShowFilterForm()
Returns true is the filter form should be displayed.
|
boolean |
getShowPageSizeSelector()
Returns true is the page size selector should be displayed.
|
boolean |
getShowRefreshCommand()
Returns true is the refresh command should be displayed.
|
boolean |
getShowTitle()
Returns true is the title should be displayed before the result layout
selector.
|
String |
getTitle()
Returns a title for this content view
|
boolean |
getTranslateEmptySentence()
Returns a boolean stating if sentence to display is empty has to be
translated
|
boolean |
getTranslateTitle()
Returns a boolean stating if title has to be translated
|
boolean |
getUseGlobalPageSize()
Returns true is this content view can use the global page size set on
the application.
|
void |
pageChanged(PageProvider pageProvider)
Called when the current page of the
pageProvider has changed. |
void |
refreshAndRewindPageProvider()
Refreshes the current page provider if not null, see
PageProvider.refresh() , and resets the current page to the
first one. |
void |
refreshed(PageProvider pageProvider)
Called when the
pageProvider has refreshed. |
void |
refreshPageProvider()
Refreshes the current page provider if not null, see
PageProvider.refresh() . |
void |
resetPageProvider()
Resets the page provider.
|
void |
resetSearchDocumentModel()
Resets the search document model, setting it to null so that it's
recomputed when calling
ContentView.getSearchDocumentModel() |
void |
setCurrentPageSize(Long pageSize)
Sets the current page size.
|
void |
setCurrentResultLayout(ContentViewLayout layout)
Sets the current result layout.
|
void |
setCurrentResultLayout(String resultLayoutName)
Sets the current result layout given its name.
|
void |
setCurrentResultLayoutColumns(List<String> resultColumns)
Sets the list of result layout columns.
|
void |
setSearchDocumentModel(DocumentModel searchDocumentModel)
Sets the search document model to be passed on the page provider, and
set it also on the current page provider if not null.
|
String |
toString() |
public ContentViewImpl(String name, String title, boolean translateTitle, String iconPath, String selectionList, String pagination, List<String> actionCategories, ContentViewLayout searchLayout, List<ContentViewLayout> resultLayouts, List<String> flags, String cacheKey, Integer cacheSize, List<String> refreshEventNames, List<String> resetEventNames, boolean useGlobalPageSize, String[] queryParameters, String searchDocumentModelBinding, String searchDocumentModelType, String resultColumnsBinding, String sortInfosBinding, String pageSizeBinding, boolean showTitle, boolean showPageSizeSelector, boolean showRefreshCommand, boolean showFilterForm, String emptySentence, boolean translateEmptySentence)
public String getName()
ContentView
getName
in interface ContentView
public String getTitle()
ContentView
getTitle
in interface ContentView
public boolean getTranslateTitle()
ContentView
getTranslateTitle
in interface ContentView
ContentView.getTitle()
public String getIconPath()
ContentView
getIconPath
in interface ContentView
public String getSelectionListName()
ContentView
getSelectionListName
in interface ContentView
public String getPagination()
ContentView
getPagination
in interface ContentView
public List<String> getActionsCategories()
ContentView
getActionsCategories
in interface ContentView
public ContentViewLayout getSearchLayout()
ContentView
getSearchLayout
in interface ContentView
public List<ContentViewLayout> getResultLayouts()
ContentView
getResultLayouts
in interface ContentView
public ContentViewLayout getCurrentResultLayout()
ContentView
ContentView.setCurrentResultLayout(ContentViewLayout)
, or the first of
defined result layouts when not set.getCurrentResultLayout
in interface ContentView
public void setCurrentResultLayout(ContentViewLayout layout)
ContentView
setCurrentResultLayout
in interface ContentView
public void setCurrentResultLayout(String resultLayoutName)
ContentView
setCurrentResultLayout
in interface ContentView
public PageProvider<?> getPageProvider(DocumentModel searchDocument, List<SortInfo> sortInfos, Long pageSize, Long currentPage, Object... params) throws ClientException
The search document, current page and page size are set on the page provider anyway. Sort infos are not set again if page provider was not built again (e.g if parameters did not change) to avoid erasing sort infos already held by it.
getPageProvider
in interface ContentView
searchDocument
- document that will be set on the page provider. If
this document is null, we try to retrieve the content view
document model calling ContentView.getSearchDocumentModel()
. If
it is not null, it is set on the page provider.sortInfos
- if not null, will override default sort info put in the
page provider XML descriptionpageSize
- if not null, will override default page size put in the
page provider XML descriptioncurrentPage
- if not null, will set the current page to given oneparams
- if not null, will set the parameters on provider. If null,
will take parameters as resolved on the content view from the
XML configuration, see ContentView.getQueryParameters()
ClientException
public PageProvider<?> getPageProviderWithParams(Object... params) throws ClientException
ContentView
getPageProviderWithParams
in interface ContentView
ClientException
using
null as every argument except params
public PageProvider<?> getPageProvider() throws ClientException
ContentView
getPageProvider
in interface ContentView
ClientException
, using
null as every argument
public PageProvider<?> getCurrentPageProvider()
ContentView
ContentView.getPageProvider()
,
ContentView.getPageProvider(DocumentModel, List, Long, Long, Object...)
or
ContentView.getPageProviderWithParams(Object...)
were never called before.getCurrentPageProvider
in interface ContentView
public void resetPageProvider()
ContentView
A new page provider will be computed next time
ContentView.getPageProviderWithParams(Object...)
is called. Sort information
and query parameters will have to be re-generated.
resetPageProvider
in interface ContentView
public void refreshPageProvider()
ContentView
PageProvider.refresh()
.
Sort information and query parameters and current page are kept.
refreshPageProvider
in interface ContentView
public void refreshAndRewindPageProvider()
ContentView
PageProvider.refresh()
, and resets the current page to the
first one.
Sort information and query parameters are kept.
refreshAndRewindPageProvider
in interface ContentView
public String getCacheKey()
ContentView
FacesContext
instance if it's an EL expression.getCacheKey
in interface ContentView
public Integer getCacheSize()
ContentView
getCacheSize
in interface ContentView
public Object[] getQueryParameters()
ContentView
FacesContext
instance if they are EL
expressions.getQueryParameters
in interface ContentView
public List<String> getRefreshEventNames()
ContentView
getRefreshEventNames
in interface ContentView
public List<String> getResetEventNames()
ContentView
getResetEventNames
in interface ContentView
public boolean getUseGlobalPageSize()
ContentView
getUseGlobalPageSize
in interface ContentView
public Long getCurrentPageSize()
ContentView
ContentView.setCurrentPageSize(Long)
, or the page size set on current page
provider if not null.getCurrentPageSize
in interface ContentView
public void setCurrentPageSize(Long pageSize)
ContentView
setCurrentPageSize
in interface ContentView
public DocumentModel getSearchDocumentModel()
ContentView
If this document is null and a EL binding has been set on the content view description, the document model will be resolved from this binding, and set as the search document model.
Else, if the content view is using a provider that needs a search document model, a new one is created and attached to it thanks to the document type held in the definition.
getSearchDocumentModel
in interface ContentView
public void setSearchDocumentModel(DocumentModel searchDocumentModel)
ContentView
setSearchDocumentModel
in interface ContentView
public void resetSearchDocumentModel()
ContentView
ContentView.getSearchDocumentModel()
resetSearchDocumentModel
in interface ContentView
public String getSearchDocumentModelType()
ContentView
getSearchDocumentModelType
in interface ContentView
public List<String> getFlags()
ContentView
ContentViewService.getContentViewNames(String)
getFlags
in interface ContentView
public List<String> getResultLayoutColumns()
getResultLayoutColumns
in interface ContentView
public List<String> getCurrentResultLayoutColumns()
ContentView
ContentView.setCurrentResultLayoutColumns(List)
.getCurrentResultLayoutColumns
in interface ContentView
public void setCurrentResultLayoutColumns(List<String> resultColumns)
ContentView
setCurrentResultLayoutColumns
in interface ContentView
public boolean getShowPageSizeSelector()
ContentView
getShowPageSizeSelector
in interface ContentView
public boolean getShowRefreshCommand()
ContentView
getShowRefreshCommand
in interface ContentView
public boolean getShowFilterForm()
ContentView
Filter form is displayed on top of content view results, using the search document model and search layout if they have been set on the content view.
getShowFilterForm
in interface ContentView
public boolean getShowTitle()
ContentView
getShowTitle
in interface ContentView
public String getEmptySentence()
ContentView
getEmptySentence
in interface ContentView
public boolean getTranslateEmptySentence()
ContentView
getTranslateEmptySentence
in interface ContentView
ContentView.getEmptySentence()
public void pageChanged(PageProvider pageProvider)
PageProviderChangedListener
pageProvider
has changed.pageChanged
in interface PageProviderChangedListener
public void refreshed(PageProvider pageProvider)
PageProviderChangedListener
pageProvider
has refreshed.refreshed
in interface PageProviderChangedListener
Copyright © 2013 Nuxeo SA. All Rights Reserved.