I am pro explicit contracts, but for dataproviders I think the general
use would be stateless, so no detach behavior necessary.

If we let IDataProvider extend IDetachable, then we have a lot of code
breaks. Though these can easily be resolved by extending the following
class instead of directly implementing IDataProvider:

public abstract class AbstractDataProvider implements IDataProvider {
    /**
     * Override this method if you keep IModel's or any other state that
     * needs detaching.
     */
    public void detach() {
    }
}

Martijn

On 12/8/06, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> well the thing here is expressiveness. the way it is right now was done to
> avoid api breaks.
>
> but if you look at the idataprovider - how do you know that you can make the
> impl also implement idetachable and that will work? same can be said for
> models, why have IModel extend IDetachable? it is so the contract is
> explicit.
>
> -igor
>
>
>
> On 12/8/06, Johan Compagner <[EMAIL PROTECTED]> wrote:
> > the question is is this really necessary because we have already code that
> does the detach:
> >
> > "Note that if the IDataProvider implementation implements [EMAIL PROTECTED]
> IDetachable}
> >  * interface, the [EMAIL PROTECTED] IDetachable#detach()} method will be 
> > called at
> the end
> >  * of request."
> >
> > So if somebody makes a IDataProvider class if he wants to be detachable
> then
> > just implement IDetachable and you can detach the stuff you load.
> >
> > So would it be handy that all IDataprovider implementations are detachable
> > or let it be a choice?
> >
> > johan
> >
> >
> >
> >
> > On 12/8/06, Igor Vaynberg < [EMAIL PROTECTED]> wrote:
> > >
> > >
> > > On 12/8/06, Johan Compagner <[EMAIL PROTECTED]> wrote:
> > > >
> > > > shouldn't we extend from IDetachable in 1.3?
> > >
> > >
> > > i dont see a problem with that
> > >
> > > -igor
> > >
> > >
> > >
> > >
> > > > johan
> > > >
> > > >
> > > >
> > > >
> > > > On 12/7/06, Igor Vaynberg < [EMAIL PROTECTED] > wrote:
> > > > > i guess if you are certain the size never changes this works ok
> > > > >
> > > > > -igor
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > On 12/7/06, Manuel Barzi < [EMAIL PROTECTED] > wrote:
> > > > > > Well, I just do two queries the first time... retrieving total
> count
> > > > > > on size() call (just once), and then retrieve iteration on
> > > > > > iterator(...) call (every navigation event)... so, in steady-state
> is
> > > > > > only one call...
> > > > > >
> > > > > > On 12/5/06, Igor Vaynberg < [EMAIL PROTECTED]> wrote:
> > > > > > > well in the example i gave you there should only be one query to
> the
> > > > > > > database
> > > > > > >
> > > > > > > -igor
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > On 12/5/06, Manuel Barzi < [EMAIL PROTECTED]> wrote:
> > > > > > > >
> > > > > > > > Yes, I have already followed your sample, doing two queries to
> database...
> > > > > > >  ;)
> > > > > > > >
> > > > > > > > On 12/5/06, Igor Vaynberg < [EMAIL PROTECTED]> wrote:
> > > > > > > > > no its not possible there is logic that ties the return call
> of size()
> > > > > > > to a
> > > > > > > > > few things that need to happen before the call to iterator()
> > > > > > > > >
> > > > > > > > > all it takes is your own subclass that i have shown you, i
> dont think
> > > > > > > its a
> > > > > > > > > big deal.
> > > > > > > > >
> > > > > > > > > -igor
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > On 12/5/06, Manuel Barzi < [EMAIL PROTECTED] > wrote:
> > > > > > > > > >
> > > > > > > > > > My question is, nevertheless, would it be a significant
> implementation
> > > > > > > > > > change to swap calls order from to current to
> iterator(...) first and
> > > > > > > > > > size() later? then adding support for both cases in a
> > > > > > > > > > SortableDataProvider (Case 1: Big databases - 2 Calls,
> Case 2: Small
> > > > > > > > > > databases - 1 Call)...
> > > > > > > > > >
> > > > > > > > > > >From my point of view, if supporting both cases, just by
> swapping
> > > > > > > > > > those method calls (if so easy is it...), then it would be
> great, no
> > > > > > > > > > worries to look for another impl... all-in-one...
> > > > > > > > > >
> > > > > > > > > > Just wondering... ;)
> > > > > > > > > >
> > > > > > > > > > Thank you for all your answers...
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > >
> -------------------------------------------------------------------------
> > > > > > > > > > Take Surveys. Earn Cash. Influence the Future of IT
> > > > > > > > > > Join SourceForge.net 's Techsay panel and you'll get the
> chance to
> > > > > > > share
> > > > > > > > > your
> > > > > > > > > > opinions on IT & business topics through brief surveys -
> and earn cash
> > > > > > > > > >
> > > > > > > > >
> > > > > > >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > > > > > > > > >
> _______________________________________________
> > > > > > > > > > Wicket-user mailing list
> > > > > > > > > > Wicket-user@lists.sourceforge.net
> > > > > > > > > >
> > > > > > >
> https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > >
> -------------------------------------------------------------------------
> > > > > > > > > Take Surveys. Earn Cash. Influence the Future of IT
> > > > > > > > > Join SourceForge.net's Techsay panel and you'll get the
> chance to share
> > > > > > > your
> > > > > > > > > opinions on IT & business topics through brief surveys - and
> earn cash
> > > > > > > > >
> > > > > > >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > > > > > > > >
> > > > > > > > >
> _______________________________________________
> > > > > > > > > Wicket-user mailing list
> > > > > > > > > Wicket-user@lists.sourceforge.net
> > > > > > > > >
> > > > > > >
> https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> -------------------------------------------------------------------------
> > > > > > > > Take Surveys. Earn Cash. Influence the Future of IT
> > > > > > > > Join SourceForge.net's Techsay panel and you'll get the chance
> to share
> > > > > > > your
> > > > > > > > opinions on IT & business topics through brief surveys - and
> earn cash
> > > > > > > >
> > > > > > >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > > > > > > >
> _______________________________________________
> > > > > > > > Wicket-user mailing list
> > > > > > > > Wicket-user@lists.sourceforge.net
> > > > > > > >
> https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> -------------------------------------------------------------------------
> > > > > > > Take Surveys. Earn Cash. Influence the Future of IT
> > > > > > > Join SourceForge.net's Techsay panel and you'll get the chance
> to share your
> > > > > > > opinions on IT & business topics through brief surveys - and
> earn cash
> > > > > > >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > > > > > >
> > > > > > > _______________________________________________
> > > > > > > Wicket-user mailing list
> > > > > > > Wicket-user@lists.sourceforge.net
> > > > > > >
> https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> -------------------------------------------------------------------------
> > > > > > Take Surveys. Earn Cash. Influence the Future of IT
> > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to
> share your
> > > > > > opinions on IT & business topics through brief surveys - and earn
> cash
> > > > > >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > > > > > _______________________________________________
> > > > > > Wicket-user mailing list
> > > > > > Wicket-user@lists.sourceforge.net
> > > > > >
> https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > >
> > > > >
> > > > >
> > > > >
> -------------------------------------------------------------------------
> > > > > Take Surveys. Earn Cash. Influence the Future of IT
> > > > > Join SourceForge.net's Techsay panel and you'll get the chance to
> share your
> > > > > opinions on IT & business topics through brief surveys - and earn
> cash
> > > > >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > > > >
> > > > > _______________________________________________
> > > > > Wicket-user mailing list
> > > > > Wicket-user@lists.sourceforge.net
> > > > >
> https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> -------------------------------------------------------------------------
> > > > Take Surveys. Earn Cash. Influence the Future of IT
> > > > Join SourceForge.net's Techsay panel and you'll get the chance to
> share your
> > > > opinions on IT & business topics through brief surveys - and earn cash
> > > >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > > >
> > > > _______________________________________________
> > > > Wicket-user mailing list
> > > > Wicket-user@lists.sourceforge.net
> > > >
> https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > >
> > > >
> > > >
> > >
> > >
> > >
> -------------------------------------------------------------------------
> > > Take Surveys. Earn Cash. Influence the Future of IT
> > > Join SourceForge.net's Techsay panel and you'll get the chance to share
> your
> > > opinions on IT & business topics through brief surveys - and earn cash
> > >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > >
> > > _______________________________________________
> > > Wicket-user mailing list
> > > Wicket-user@lists.sourceforge.net
> > >
> https://lists.sourceforge.net/lists/listinfo/wicket-user
> > >
> > >
> > >
> >
> >
> >
> -------------------------------------------------------------------------
> > Take Surveys. Earn Cash. Influence the Future of IT
> > Join SourceForge.net's Techsay panel and you'll get the chance to share
> your
> > opinions on IT & business topics through brief surveys - and earn cash
> >
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> >
> > _______________________________________________
> > Wicket-user mailing list
> > Wicket-user@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wicket-user
> >
> >
> >
>
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys - and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
>
> _______________________________________________
> Wicket-user mailing list
> Wicket-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wicket-user
>
>
>


-- 
<a href="http://www.thebeststuffintheworld.com/vote_for/wicket";>Vote</a>
for <a href="http://www.thebeststuffintheworld.com/stuff/wicket";>Wicket</a>
at the <a href="http://www.thebeststuffintheworld.com/";>Best Stuff in
the World!</a>

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to