com.webmethods.caf.faces.data.object
Class BoundPropertiesTableContentProvider

java.lang.Object
  extended by com.webmethods.caf.faces.data.object.BoundPropertiesContentProvider
      extended by com.webmethods.caf.faces.data.object.BoundPropertiesTableContentProvider
All Implemented Interfaces:
IContentProvider, ITableContentProvider, IUpdateableContentProvider
Direct Known Subclasses:
PageableExportProvider

public class BoundPropertiesTableContentProvider
extends BoundPropertiesContentProvider
implements ITableContentProvider

Provider which limits a wrapped table content-provider to exposing a specified set of properties; the properties are specified via binding expressions.


Field Summary
 
Fields inherited from class com.webmethods.caf.faces.data.object.BoundPropertiesContentProvider
m_keys, m_provider, m_var
 
Constructor Summary
BoundPropertiesTableContentProvider()
          Blank provider.
BoundPropertiesTableContentProvider(ITableContentProvider provider, Map keys, String var)
          Provider limiting specified provider to specified keys.
 
Method Summary
 Object getCurrentRow()
           Returns wrapped current row object.
 int getRowCount()
          Return the number of rows of data objects represented by this DataModel.
 int getRowIndex()
          Return the zero-relative index of the currently selected row.
 String getRowVariable()
           Returns row variable name.
protected  ITableContentProvider getTableProvider()
           
 boolean isRowAvailable()
          Return a flag indicating whether there is rowData available at the current rowIndex.
 void setRowIndex(int rowIndex)
          Set the zero-relative index of the currently selected row, or -1 to indicate that we are not positioned on a row.
 void setRowVariable(String var)
           Sets row variable name to use for accessing row specific data.
 
Methods inherited from class com.webmethods.caf.faces.data.object.BoundPropertiesContentProvider
createDefaultKeys, getKeys, getPropertyKeys, getProvider, getType, getValue, getVar, hasProperty, isReadOnly, setKeys, setProvider, setValue, setVar, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.webmethods.caf.faces.data.IContentProvider
getPropertyKeys, getType, getValue, hasProperty, toString
 

Constructor Detail

BoundPropertiesTableContentProvider

public BoundPropertiesTableContentProvider()
Blank provider. Must be initialized with BoundPropertiesContentProvider.setProvider(com.webmethods.caf.faces.data.IContentProvider), BoundPropertiesContentProvider.setKeys(java.util.Map), and BoundPropertiesContentProvider.setVar(java.lang.String).


BoundPropertiesTableContentProvider

public BoundPropertiesTableContentProvider(ITableContentProvider provider,
                                           Map keys,
                                           String var)
Provider limiting specified provider to specified keys.

Method Detail

getRowCount

public int getRowCount()
Description copied from interface: ITableContentProvider
Return the number of rows of data objects represented by this DataModel.

Return -1, if the number of rows is unknown, or no wrappedData is available.

Specified by:
getRowCount in interface ITableContentProvider
See Also:
DataModel

getRowIndex

public int getRowIndex()
Description copied from interface: ITableContentProvider
Return the zero-relative index of the currently selected row.

If we are not currently positioned on a row, or no wrappedData is available, return -1.

Specified by:
getRowIndex in interface ITableContentProvider
See Also:
DataModel

isRowAvailable

public boolean isRowAvailable()
Description copied from interface: ITableContentProvider
Return a flag indicating whether there is rowData available at the current rowIndex. If no wrappedData is available, return false.

Specified by:
isRowAvailable in interface ITableContentProvider
See Also:
DataModel

setRowIndex

public void setRowIndex(int rowIndex)
Description copied from interface: ITableContentProvider
Set the zero-relative index of the currently selected row, or -1 to indicate that we are not positioned on a row.

Specified by:
setRowIndex in interface ITableContentProvider
See Also:
DataModel

getRowVariable

public String getRowVariable()
Description copied from interface: ITableContentProvider

Returns row variable name.

If specified row variable can be used to access current row data for the provider internal needs, like sorting or addressing.

Specified by:
getRowVariable in interface ITableContentProvider
Returns:
row variable name or null if not specified
See Also:
ITableContentProvider.setRowVariable(String)

setRowVariable

public void setRowVariable(String var)
Description copied from interface: ITableContentProvider

Sets row variable name to use for accessing row specific data. For example, if the provider wrapps an array of a data objects with id property and the variable name is item, then the provider implementation can access id property of each record as item.id.

This property should set only once at the provider initialization time

Specified by:
setRowVariable in interface ITableContentProvider

getCurrentRow

public Object getCurrentRow()
Description copied from interface: ITableContentProvider

Returns wrapped current row object. Can be null if not data is available

Specified by:
getCurrentRow in interface ITableContentProvider
Returns:
current row object
See Also:
ITableContentProvider.isRowAvailable()

getTableProvider

protected ITableContentProvider getTableProvider()