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 }
Modifier and Type | Field and Description |
---|---|
protected Object[] |
m_array |
protected String |
m_descriptionFieldName |
protected String |
m_disabledFieldName |
protected List<ISelectItemProvider> |
m_group |
protected String |
m_iconFieldName |
protected String |
m_labelFieldName |
protected List<?> |
m_list |
protected String |
m_styleFieldName |
protected ITableContentProvider |
m_table |
protected String |
m_valueFieldName |
fExpireWithPageFlow
Constructor and Description |
---|
TableSelectItemGroupProvider()
Default 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 constructor
|
TableSelectItemGroupProvider(List<?> list,
String labelFieldName) |
TableSelectItemGroupProvider(List<?> list,
String labelFieldName,
String valueFieldName) |
TableSelectItemGroupProvider(Object[] array,
String labelFieldName) |
TableSelectItemGroupProvider(Object[] array,
String labelFieldName,
String valueFieldName) |
Modifier and Type | Method and Description |
---|---|
Object[] |
getArray()
Returns wrapped array if set
|
String |
getDescription()
Always returns null
|
String |
getDescriptionFieldName()
Returns property name of the source object to use for select item description
|
String |
getDisabledFieldName()
Returns property name of the source object to use for select item disabled flag
|
String |
getIcon()
Always returns null
|
String |
getIconFieldName()
Returns property name of the source object to use for select item icon
|
String |
getLabel()
Always returns null
|
String |
getLabelFieldName()
Returns property name of the source object to use for select item label
|
List |
getList()
Returns wrapped list if set
|
Collection<ISelectItemProvider> |
getSelectItemContentProviders()
Returns a collection of
ISelectItemProvider s. |
String |
getStyle()
Always returns null
|
String |
getStyleFieldName()
Returns property name of the source object to use for select item description
|
ITableContentProvider |
getTable()
Returns currently used table provider
|
Object |
getValue()
Always returns null
|
String |
getValueFieldName()
Returns property name of the source object to use for select item value
|
boolean |
isDisabled()
Always returns false
|
boolean |
isEscape()
Returns true if item label should be escaped.
|
Iterator<SelectItem> |
iterator()
Implement the Iterable interface so the SelectItemsIterator#initializeItems doesn't throw IllegalArgumentException
when printing the component tree for debugging.
|
void |
setArray(Object[] array)
Sets new array to use
|
void |
setDescriptionFieldName(String descriptionFieldName)
Sets property name on the source object to use for select item description
|
void |
setDisabledFieldName(String disabledFieldName)
Sets property name on the source object to use for select item disabled flag
|
void |
setIconFieldName(String iconFieldName)
Sets property name on the source object to use for select item icon
|
void |
setLabelFieldName(String labelFieldName)
Sets property name on the source object to use for select item description
|
void |
setList(List<?> list)
Sets a list to use
|
void |
setStyleFieldName(String styleFieldName)
Sets property name on the source object to use for select item style
|
void |
setTable(ITableContentProvider table)
Sets new table provider to use
|
void |
setValueFieldName(String valueFieldName)
Sets property name on the source object to use for select item value
|
getExpireWithPageFlow, setExpireWithPageFlow
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
forEach, spliterator
protected ITableContentProvider m_table
protected List<?> m_list
protected Object[] m_array
protected List<ISelectItemProvider> m_group
protected String m_labelFieldName
protected String m_valueFieldName
protected String m_descriptionFieldName
protected String m_disabledFieldName
protected String m_styleFieldName
protected String m_iconFieldName
public TableSelectItemGroupProvider(ITableContentProvider table, String labelFieldName, String valueFieldName, String descriptionFieldName, String disabledFieldName, String styleFieldName, String iconFieldName)
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 iconpublic TableSelectItemGroupProvider()
setTable(ITableContentProvider)
, setList(List)
or setArray(Object[])
as well as setLabelFieldName(String)
to be called before use.public TableSelectItemGroupProvider(ITableContentProvider table, String labelFieldName)
table
- a table providerlabelFieldName
- content provider property name to use as select item labelTableSelectItemGroupProvider(ITableContentProvider, String, String, String, String, String, String)
public TableSelectItemGroupProvider(ITableContentProvider table, String labelFieldName, String valueFieldName)
table
- a table providerlabelFieldName
- content provider property name to use as select item labelvalueFieldName
- content provider property name to use as select item valueTableSelectItemGroupProvider(ITableContentProvider, String, String, String, String, String, String)
public TableSelectItemGroupProvider(List<?> list, String labelFieldName)
list
- a list of objectslabelFieldName
- content provider property name to use as select item labelTableSelectItemGroupProvider(ITableContentProvider, String, String, String, String, String, String)
public TableSelectItemGroupProvider(List<?> list, String labelFieldName, String valueFieldName)
list
- a list of objectslabelFieldName
- content provider property name to use as select item labelvalueFieldName
- content provider property name to use as select item valueTableSelectItemGroupProvider(ITableContentProvider, String, String, String, String, String, String)
public TableSelectItemGroupProvider(Object[] array, String labelFieldName)
array
- an array of objectslabelFieldName
- content provider property name to use as select item labelTableSelectItemGroupProvider(ITableContentProvider, String, String, String, String, String, String)
public TableSelectItemGroupProvider(Object[] array, String labelFieldName, String valueFieldName)
array
- an array of objectslabelFieldName
- content provider property name to use as select item labelvalueFieldName
- content provider property name to use as select item valueTableSelectItemGroupProvider(ITableContentProvider, String, String, String, String, String, String)
public Collection<ISelectItemProvider> getSelectItemContentProviders()
ISelectItemGroupProvider
ISelectItemProvider
s.getSelectItemContentProviders
in interface ISelectItemGroupProvider
public String getDescription()
getDescription
in interface ISelectItemProvider
public String getIcon()
getIcon
in interface ISelectItemProvider
public String getLabel()
getLabel
in interface ISelectItemProvider
public String getStyle()
getStyle
in interface ISelectItemProvider
public Object getValue()
getValue
in interface ISelectItemProvider
public boolean isDisabled()
isDisabled
in interface ISelectItemProvider
public boolean isEscape()
ISelectItemProvider
isEscape
in interface ISelectItemProvider
public String getDescriptionFieldName()
public void setDescriptionFieldName(String descriptionFieldName)
descriptionFieldName
- property name, can be nullpublic String getDisabledFieldName()
public void setDisabledFieldName(String disabledFieldName)
disabledFieldName
- property name, can be nullpublic String getIconFieldName()
public void setIconFieldName(String iconFieldName)
iconFieldName
- property name, can be nullpublic String getLabelFieldName()
public void setLabelFieldName(String labelFieldName)
labelFieldName
- property name, can be nullpublic String getStyleFieldName()
public void setStyleFieldName(String styleFieldName)
styleFieldName
- property name, can be nullpublic String getValueFieldName()
public void setValueFieldName(String valueFieldName)
valueFieldName
- property name, can be nullpublic ITableContentProvider getTable()
public void setTable(ITableContentProvider table)
table
- table providerpublic void setList(List<?> list)
list
- list of objectspublic List getList()
public void setArray(Object[] array)
array
- array of objectspublic Object[] getArray()
public Iterator<SelectItem> iterator()
iterator
in interface Iterable<SelectItem>