org.opencms.workplace.list
Class CmsListMetadata

java.lang.Object
  extended byorg.opencms.workplace.list.CmsListMetadata

public class CmsListMetadata
extends java.lang.Object

This is class contains all the information for defining a whole html list.

Since:
6.0.0
Version:
$Revision: 1.22 $
Author:
Michael Moossen

Constructor Summary
CmsListMetadata(java.lang.String listId)
          Default Constructor.
 
Method Summary
 void addColumn(CmsListColumnDefinition listColumn)
          Adds a new column definition at the end.
 void addColumn(CmsListColumnDefinition listColumn, int position)
          Adds a new column definition at the given position.
 void addIndependentAction(I_CmsListAction action)
          Adds a list item independent action.
 void addItemDetails(CmsListItemDetails itemDetail)
          Adds a new item detail definition at the end.
 void addItemDetails(CmsListItemDetails itemDetail, int position)
          Adds a new item detail definition at the given position.
 void addMultiAction(CmsListMultiAction multiAction)
          Adds an action applicable to more than one list item at once.
 java.lang.String csvEmptyList()
          Generates the csv output for an empty table.
 java.lang.String csvHeader(CmsWorkplace wp)
          Returns the csv output for the header of the list.
 java.lang.String csvItem(CmsListItem item, CmsWorkplace wp)
          Returns the csv output for a list item.
 CmsListColumnDefinition getColumnDefinition(java.lang.String columnId)
          Returns a column definition object for a given column id.
 java.util.List getColumnDefinitions()
          Returns all columns definitions.
 I_CmsListAction getIndependentAction(java.lang.String actionId)
          Returns an independent action object for a given id.
 java.util.List getIndependentActions()
          Returns the list of independent actions.
 CmsListItemDetails getItemDetailDefinition(java.lang.String itemDetailId)
          Returns the item details definition object for a given id.
 java.util.List getItemDetailDefinitions()
          Returns all detail definitions.
 java.lang.String getListId()
          Returns the id of the list.
 CmsListMultiAction getMultiAction(java.lang.String actionId)
          Returns a multi action object for a given id.
 java.util.List getMultiActions()
          Returns the list of multi actions.
 CmsListSearchAction getSearchAction()
          Returns the search action.
 int getWidth()
          Returns the total number of displayed columns.
 boolean hasActions()
          Returns true if the list definition contains an action.
 boolean hasCheckMultiActions()
          Returns true if at least 'check' multiaction has been set.
 boolean hasMultiActions()
          Returns true if the list definition contains a multi action.
 boolean hasSingleActions()
          Returns true if any column definition contains a single action.
 java.lang.String htmlActionBar(CmsWorkplace wp)
          Returns the html code for the action bar.
 java.lang.String htmlEmptyTable(java.util.Locale locale)
          Generates the hml code for an empty table.
 java.lang.String htmlHeader(CmsHtmlList list, CmsWorkplace wp)
          Returns the html code for the header of the list.
 java.lang.String htmlItem(CmsListItem item, CmsWorkplace wp, boolean odd, boolean isPrintable)
          Returns the html code for a list item.
 java.lang.String htmlMultiActionBar(CmsWorkplace wp)
          Returns the html code for the multi action bar.
 java.lang.String htmlSearchBar(CmsWorkplace wp)
          Generates the html code for the search bar.
 boolean isSearchable()
          Returns true if the list is searchable.
 boolean isSorteable()
          Returns true if any column is sorteable.
 boolean isVolatile()
          Returns true if this metadata object should not be cached.
 void setSearchAction(CmsListSearchAction searchAction)
          Sets the search action.
 void setVolatile(boolean volatileFlag)
          Sets the volatile flag.
 void toogleDetailState(java.lang.String itemDetailId)
          Toggles the given item detail state from visible to hidden or from hidden to visible.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CmsListMetadata

public CmsListMetadata(java.lang.String listId)
Default Constructor.

Parameters:
listId - the id of the list
Method Detail

addColumn

public void addColumn(CmsListColumnDefinition listColumn)
Adds a new column definition at the end.

By default a column is printable if it is the first column in the list, or if it is sorteable.

If you want to override this behaviour, use the CmsListColumnDefinition.setPrintable(boolean) method after calling this one.

Parameters:
listColumn - the column definition
See Also:
CmsIdentifiableObjectContainer

addColumn

public void addColumn(CmsListColumnDefinition listColumn,
                      int position)
Adds a new column definition at the given position.

By default a column is printable if it is the first column in the list, or if it is sorteable.

If you want to override this behaviour, use the CmsListColumnDefinition.setPrintable(boolean) method after calling this one.

Parameters:
listColumn - the column definition
position - the position
See Also:
CmsIdentifiableObjectContainer

addIndependentAction

public void addIndependentAction(I_CmsListAction action)
Adds a list item independent action.

Parameters:
action - the action

addItemDetails

public void addItemDetails(CmsListItemDetails itemDetail)
Adds a new item detail definition at the end.

Parameters:
itemDetail - the item detail definition
See Also:
CmsIdentifiableObjectContainer

addItemDetails

public void addItemDetails(CmsListItemDetails itemDetail,
                           int position)
Adds a new item detail definition at the given position.

Parameters:
itemDetail - the item detail definition
position - the position
See Also:
CmsIdentifiableObjectContainer

addMultiAction

public void addMultiAction(CmsListMultiAction multiAction)
Adds an action applicable to more than one list item at once.

It will be executed with a list of CmsListItems.

Parameters:
multiAction - the action

csvEmptyList

public java.lang.String csvEmptyList()
Generates the csv output for an empty table.

Returns:
csv output

csvHeader

public java.lang.String csvHeader(CmsWorkplace wp)
Returns the csv output for the header of the list.

Parameters:
wp - the workplace instance
Returns:
csv output

csvItem

public java.lang.String csvItem(CmsListItem item,
                                CmsWorkplace wp)
Returns the csv output for a list item.

Parameters:
item - the list item to render
wp - the workplace context
Returns:
csv output

getColumnDefinition

public CmsListColumnDefinition getColumnDefinition(java.lang.String columnId)
Returns a column definition object for a given column id.

Parameters:
columnId - the column id
Returns:
the column definition, or null if not present

getColumnDefinitions

public java.util.List getColumnDefinitions()
Returns all columns definitions.

Returns:
a list of CmsListColumnDefinitions.

getIndependentAction

public I_CmsListAction getIndependentAction(java.lang.String actionId)
Returns an independent action object for a given id.

Parameters:
actionId - the id
Returns:
the independent action, or null if not present

getIndependentActions

public java.util.List getIndependentActions()
Returns the list of independent actions.

Returns:
a list of I_CmsListActions

getItemDetailDefinition

public CmsListItemDetails getItemDetailDefinition(java.lang.String itemDetailId)
Returns the item details definition object for a given id.

Parameters:
itemDetailId - the id
Returns:
the item details definition, or null if not present

getItemDetailDefinitions

public java.util.List getItemDetailDefinitions()
Returns all detail definitions.

Returns:
a list of CmsListItemDetails.

getListId

public java.lang.String getListId()
Returns the id of the list.

Returns:
the id of list

getMultiAction

public CmsListMultiAction getMultiAction(java.lang.String actionId)
Returns a multi action object for a given id.

Parameters:
actionId - the id
Returns:
the multi action, or null if not present

getMultiActions

public java.util.List getMultiActions()
Returns the list of multi actions.

Returns:
a list of CmsListMultiActions

getSearchAction

public CmsListSearchAction getSearchAction()
Returns the search action.

Returns:
the search action

getWidth

public int getWidth()
Returns the total number of displayed columns.

Returns:
the total number of displayed columns

hasActions

public boolean hasActions()
Returns true if the list definition contains an action.

Returns:
true if the list definition contains an action

hasCheckMultiActions

public boolean hasCheckMultiActions()
Returns true if at least 'check' multiaction has been set.

Returns:
true if at least 'check' multiaction has been set

hasMultiActions

public boolean hasMultiActions()
Returns true if the list definition contains a multi action.

Returns:
true if the list definition contains a multi action

hasSingleActions

public boolean hasSingleActions()
Returns true if any column definition contains a single action.

Returns:
true if any column definition contains a single action

htmlActionBar

public java.lang.String htmlActionBar(CmsWorkplace wp)
Returns the html code for the action bar.

Parameters:
wp - the workplace context
Returns:
html code

htmlEmptyTable

public java.lang.String htmlEmptyTable(java.util.Locale locale)
Generates the hml code for an empty table.

Parameters:
locale - for localization
Returns:
html code

htmlHeader

public java.lang.String htmlHeader(CmsHtmlList list,
                                   CmsWorkplace wp)
Returns the html code for the header of the list.

Parameters:
list - the list to generate the code for
wp - the workplace instance
Returns:
html code

htmlItem

public java.lang.String htmlItem(CmsListItem item,
                                 CmsWorkplace wp,
                                 boolean odd,
                                 boolean isPrintable)
Returns the html code for a list item.

Parameters:
item - the list item to render
wp - the workplace context
odd - if the position is odd or even
isPrintable - if the list is to be printed
Returns:
html code

htmlMultiActionBar

public java.lang.String htmlMultiActionBar(CmsWorkplace wp)
Returns the html code for the multi action bar.

Parameters:
wp - the workplace context
Returns:
html code

htmlSearchBar

public java.lang.String htmlSearchBar(CmsWorkplace wp)
Generates the html code for the search bar.

Parameters:
wp - the workplace context
Returns:
html code

isSearchable

public boolean isSearchable()
Returns true if the list is searchable.

Returns:
true if the list is searchable

isSorteable

public boolean isSorteable()
Returns true if any column is sorteable.

Returns:
true if any column is sorteable

isVolatile

public boolean isVolatile()
Returns true if this metadata object should not be cached.

Returns:
true if this metadata object should not be cached.


setSearchAction

public void setSearchAction(CmsListSearchAction searchAction)
Sets the search action.

Parameters:
searchAction - the search action to set

setVolatile

public void setVolatile(boolean volatileFlag)
Sets the volatile flag.

Parameters:
volatileFlag - the volatile flag to set

toogleDetailState

public void toogleDetailState(java.lang.String itemDetailId)
Toggles the given item detail state from visible to hidden or from hidden to visible.

Parameters:
itemDetailId - the item detail id