[ 
https://issues.apache.org/jira/browse/WICKET-2719?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12892190#action_12892190
 ] 

Maarten Billemont commented on WICKET-2719:
-------------------------------------------

Only, now you have a class that assumes getData returns a simple instance by 
calling it so often that you defeat any convenience of being able to override 
it.  If getData is provided dynamically, it becomes the user's burden to only 
load it once for every request instead of once for every call to getData().

My proposed class is cleaner and supports lazy loading better.  Care to explain 
why it was refused in favor of this sloppy fix?

> Extract lazy AbstractListDataProvider out of ListDataProvider.
> --------------------------------------------------------------
>
>                 Key: WICKET-2719
>                 URL: https://issues.apache.org/jira/browse/WICKET-2719
>             Project: Wicket
>          Issue Type: Improvement
>          Components: wicket
>    Affects Versions: 1.4.5
>            Reporter: Maarten Billemont
>            Assignee: Martin Grigorov
>             Fix For: 1.4.7, 1.5-M1
>
>         Attachments: AbstractListProvider.java
>
>
> ListDataProvider is handy for quickly providing a List as source for a 
> DataView; but it forces you to pass a list object during construction and 
> doesn't allow you to provide a new list.
> That means it becomes hard to update the elements in the DataView when the 
> page is (re)rendered.  It might be useful to provide an abstract superclass 
> to ListDataProvider which provides an abstract method for obtaining the list 
> allowing the developer to lazy-load the data he wants to show; making sure to 
> always load up-to-date data when the view is being rendered rather than data 
> he passed in during construction which may have become outdated.

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

Reply via email to