myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kamran Kashanian (JIRA)" <...@myfaces.apache.org>
Subject [jira] Updated: (TRINIDAD-1938) RowKeyPropertyModel and RowKeyPropertyTreeModel
Date Mon, 11 Oct 2010 20:17:32 GMT

     [ https://issues.apache.org/jira/browse/TRINIDAD-1938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Kamran Kashanian updated TRINIDAD-1938:
---------------------------------------

    Status: Patch Available  (was: Open)

> RowKeyPropertyModel and RowKeyPropertyTreeModel
> -----------------------------------------------
>
>                 Key: TRINIDAD-1938
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-1938
>             Project: MyFaces Trinidad
>          Issue Type: Improvement
>          Components: Components
>    Affects Versions: 2.0.0.3-core
>         Environment: All
>            Reporter: Kamran Kashanian
>         Attachments: rowkeymodel.patch
>
>
> By default,  when Java Lists/Arrays are used as models in Trinidad table/tree/treeTable
components,  they are wrapped in a SortableModel instance.   
> The problem with SortableModel is that it uses row indexes as row keys.  This makes SortableModel
immutable and insert/delete operations in the underlying List/array can cause problems.  For
example,  indexes shift after insert/delete operations and can cause problems if the component
is holding on to row keys in SelectedRowKey/DisclosedRowKey sets.
> The proposal is to add row key based CollectionModel/TreeModels which avoid using indexes
as row keys.
> Attaching a patch for a RowKeyPropertyModel and a RowKeyPropertyTreeModel.   RowKeyPropertyModel
takes a rowKeyProperty name which identifies the unique row key in each model row by name.
 The setRowKey/getRowKey etc APIs use the rowKeyProperty to reference the row key attribute.
> One drawback with the default implementation of setRowKey API in RowKeyPropertyModel
is that it is inefficient and does a linear search through the model to find the row with
the given row key.  The search can be optimized in subclasses for specific model implementations.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message