Class TableSelectItemGroupProvider
java.lang.Object
com.webmethods.caf.faces.bean.PageFlowScopeAdapter
com.webmethods.caf.faces.data.object.TableSelectItemGroupProvider
- All Implemented Interfaces:
IPageFlowScopeAdapter
,ISelectItemGroupProvider
,ISelectItemProvider
,Serializable
,Iterable<SelectItem>
public class TableSelectItemGroupProvider
extends PageFlowScopeAdapter
implements Serializable, ISelectItemGroupProvider, Iterable<SelectItem>
Adapts a ITableContentProvider
, List
and arrays to
ISelectItemGroupProvider
. For list or array it internally creates a instance of
ListTableContentProvider
.
At least label field name must be defined. It value field name is not defined, label field value is used for the select item value.
class Item { public int getId(); public String getName(); }; Item[] items = new Items[] {....}; ISelectItemGroupProvider provider = new TableSelectItemGroupProvider(items, "name", "id"); Collection selectItems = provider.getSelectItemContentProviders(); for (java.util.Iterator it = selectItems(); it.hasNext(); ) { ISelectItemProvider selectItem = (ISelectItemProvider)it.next(); String label = selectItem.getLabel(); // returns value of "name" property for each item Object value = selectItem.getValue(); // returns value of "id" property for each item }
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Object[]
protected String
protected String
protected List<ISelectItemProvider>
protected String
protected String
protected List<?>
protected String
protected ITableContentProvider
protected String
Fields inherited from class com.webmethods.caf.faces.bean.PageFlowScopeAdapter
fExpireWithPageFlow
-
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.TableSelectItemGroupProvider
(ITableContentProvider table, String labelFieldName) TableSelectItemGroupProvider
(ITableContentProvider table, String labelFieldName, String valueFieldName) TableSelectItemGroupProvider
(ITableContentProvider table, String labelFieldName, String valueFieldName, String descriptionFieldName, String disabledFieldName, String styleFieldName, String iconFieldName) Fully configured provider constructorTableSelectItemGroupProvider
(Object[] array, String labelFieldName) TableSelectItemGroupProvider
(Object[] array, String labelFieldName, String valueFieldName) TableSelectItemGroupProvider
(List<?> list, String labelFieldName) TableSelectItemGroupProvider
(List<?> list, String labelFieldName, String valueFieldName) -
Method Summary
Modifier and TypeMethodDescriptionObject[]
getArray()
Returns wrapped array if setAlways returns nullReturns property name of the source object to use for select item descriptionReturns property name of the source object to use for select item disabled flaggetIcon()
Always returns nullReturns property name of the source object to use for select item icongetLabel()
Always returns nullReturns property name of the source object to use for select item labelgetList()
Returns wrapped list if setReturns a collection ofISelectItemProvider
s.getStyle()
Always returns nullReturns property name of the source object to use for select item descriptiongetTable()
Returns currently used table providergetValue()
Always returns nullReturns property name of the source object to use for select item valueboolean
Always returns falseboolean
isEscape()
Returns true if item label should be escaped.iterator()
Implement the Iterable interface so the SelectItemsIterator#initializeItems doesn't throw IllegalArgumentException when printing the component tree for debugging.void
Sets new array to usevoid
setDescriptionFieldName
(String descriptionFieldName) Sets property name on the source object to use for select item descriptionvoid
setDisabledFieldName
(String disabledFieldName) Sets property name on the source object to use for select item disabled flagvoid
setIconFieldName
(String iconFieldName) Sets property name on the source object to use for select item iconvoid
setLabelFieldName
(String labelFieldName) Sets property name on the source object to use for select item descriptionvoid
Sets a list to usevoid
setStyleFieldName
(String styleFieldName) Sets property name on the source object to use for select item stylevoid
setTable
(ITableContentProvider table) Sets new table provider to usevoid
setValueFieldName
(String valueFieldName) Sets property name on the source object to use for select item valueMethods inherited from class com.webmethods.caf.faces.bean.PageFlowScopeAdapter
getExpireWithPageFlow, setExpireWithPageFlow
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Field Details
-
m_table
-
m_list
-
m_array
-
m_group
-
m_labelFieldName
-
m_valueFieldName
-
m_descriptionFieldName
-
m_disabledFieldName
-
m_styleFieldName
-
m_iconFieldName
-
-
Constructor Details
-
TableSelectItemGroupProvider
public TableSelectItemGroupProvider(ITableContentProvider table, String labelFieldName, String valueFieldName, String descriptionFieldName, String disabledFieldName, String styleFieldName, String iconFieldName) Fully configured provider constructor- Parameters:
table
- table content providerlabelFieldName
- content provider property name to use as select item labelvalueFieldName
- content provider property name to use as select item valuedescriptionFieldName
- content provider property name to use as select item descriptiondisabledFieldName
- content provider property name to use as select item disabled flagstyleFieldName
- content provider property name to use as select item styleiconFieldName
- content provider property name to use as select item icon
-
TableSelectItemGroupProvider
public TableSelectItemGroupProvider()Default constructor. RequiressetTable(ITableContentProvider)
,setList(List)
orsetArray(Object[])
as well assetLabelFieldName(String)
to be called before use. -
TableSelectItemGroupProvider
- Parameters:
table
- a table providerlabelFieldName
- content provider property name to use as select item label- See Also:
-
TableSelectItemGroupProvider
public TableSelectItemGroupProvider(ITableContentProvider table, String labelFieldName, String valueFieldName) - Parameters:
table
- a table providerlabelFieldName
- content provider property name to use as select item labelvalueFieldName
- content provider property name to use as select item value- See Also:
-
TableSelectItemGroupProvider
- Parameters:
list
- a list of objectslabelFieldName
- content provider property name to use as select item label- See Also:
-
TableSelectItemGroupProvider
- Parameters:
list
- a list of objectslabelFieldName
- content provider property name to use as select item labelvalueFieldName
- content provider property name to use as select item value- See Also:
-
TableSelectItemGroupProvider
- Parameters:
array
- an array of objectslabelFieldName
- content provider property name to use as select item label- See Also:
-
TableSelectItemGroupProvider
- Parameters:
array
- an array of objectslabelFieldName
- content provider property name to use as select item labelvalueFieldName
- content provider property name to use as select item value- See Also:
-
-
Method Details
-
getSelectItemContentProviders
Description copied from interface:ISelectItemGroupProvider
Returns a collection ofISelectItemProvider
s.- Specified by:
getSelectItemContentProviders
in interfaceISelectItemGroupProvider
- Returns:
- collectio of individual select items
-
getDescription
Always returns null- Specified by:
getDescription
in interfaceISelectItemProvider
- Returns:
- null
-
getIcon
Always returns null- Specified by:
getIcon
in interfaceISelectItemProvider
- Returns:
- null
-
getLabel
Always returns null- Specified by:
getLabel
in interfaceISelectItemProvider
- Returns:
- null
-
getStyle
Always returns null- Specified by:
getStyle
in interfaceISelectItemProvider
- Returns:
- null
-
getValue
Always returns null- Specified by:
getValue
in interfaceISelectItemProvider
- Returns:
- null
-
isDisabled
public boolean isDisabled()Always returns false- Specified by:
isDisabled
in interfaceISelectItemProvider
- Returns:
- false
-
isEscape
public boolean isEscape()Description copied from interface:ISelectItemProvider
Returns true if item label should be escaped.- Specified by:
isEscape
in interfaceISelectItemProvider
- Returns:
- true or false
-
getDescriptionFieldName
Returns property name of the source object to use for select item description- Returns:
- property name of null if not set
-
setDescriptionFieldName
Sets property name on the source object to use for select item description- Parameters:
descriptionFieldName
- property name, can be null
-
getDisabledFieldName
Returns property name of the source object to use for select item disabled flag- Returns:
- property name of null if not set
-
setDisabledFieldName
Sets property name on the source object to use for select item disabled flag- Parameters:
disabledFieldName
- property name, can be null
-
getIconFieldName
Returns property name of the source object to use for select item icon- Returns:
- property name of null if not set
-
setIconFieldName
Sets property name on the source object to use for select item icon- Parameters:
iconFieldName
- property name, can be null
-
getLabelFieldName
Returns property name of the source object to use for select item label- Returns:
- property name of null if not set
-
setLabelFieldName
Sets property name on the source object to use for select item description- Parameters:
labelFieldName
- property name, can be null
-
getStyleFieldName
Returns property name of the source object to use for select item description- Returns:
- property name of null if not set
-
setStyleFieldName
Sets property name on the source object to use for select item style- Parameters:
styleFieldName
- property name, can be null
-
getValueFieldName
Returns property name of the source object to use for select item value- Returns:
- property name of null if not set
-
setValueFieldName
Sets property name on the source object to use for select item value- Parameters:
valueFieldName
- property name, can be null
-
getTable
Returns currently used table provider- Returns:
- null if not set
-
setTable
Sets new table provider to use- Parameters:
table
- table provider
-
setList
Sets a list to use- Parameters:
list
- list of objects
-
getList
Returns wrapped list if set- Returns:
- null if not set
-
setArray
Sets new array to use- Parameters:
array
- array of objects
-
getArray
Returns wrapped array if set- Returns:
- null if not set
-
iterator
Implement the Iterable interface so the SelectItemsIterator#initializeItems doesn't throw IllegalArgumentException when printing the component tree for debugging.- Specified by:
iterator
in interfaceIterable<SelectItem>
-