What are your thoughts on changing void setCurrentPage(int page) to int
setCurrentPage(int page) in Ipageable and having it return the bounded page?

-Igor
 

> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] On Behalf Of 
> Johan Compagner
> Sent: Monday, September 05, 2005 8:16 AM
> To: wicket-user@lists.sourceforge.net
> Subject: Re: [Wicket-user] PageableGridDataView
> 
> just remove those 2 for DataView
> I don't think anybody will use them for DataView
> 
> Igor Vaynberg wrote:
> > Gili,
> >
> > All you would be doing is factoring out semantic incompatibilities 
> > into the strategy interface/impls. In a way the old 
> pageabledataview 
> > was a navigation strategy for the regular dataview. Please try to 
> > understand the problem. Let me lay it out for you:
> >
> > The dataview class has setFirstIndex() and setViewSize() methods.
> > The pagabledataview extends the dataview and so inherits those, 
> > alongside introducing the setCurrentPage()/setRowsPerPage().
> >
> > The problem is that setFirstIndex() and setViewSize() do not make 
> > sense in the pageable subclass. What does setViewSize(5) 
> mean when you 
> > already called setRowsPerPage(10)??? What does 
> setFirstIndex(10) mean 
> > when you called setCurrentPage(5)?
> >
> > That's the problem. It has nothing to do with design 
> patterns and java 
> > 101 lessons.
> >
> > Currently when paging is enabled setFirstIndex() and setViewSize() 
> > will throw an illegalstateexception which makes perfect 
> sense to me, 
> > you shouldn't call those if you enabled paging. Also 
> setCurrentPage() 
> > will throw the same exception when called while paging is disabled.
> >
> > What we are discussing is simply removing setFirstIndex() and 
> > setViewSize() because with paging built in they are not 
> that useful. 
> > You lose some flexibility, but not too much.
> >
> > Maybe now that all the research is laid out for you  you 
> can post some 
> > meaningful comments.
> >
> > -Igor
> >
> >
> >   
> >> -----Original Message-----
> >> From: [EMAIL PROTECTED]
> >> [mailto:[EMAIL PROTECTED] On Behalf Of Gili
> >> Sent: Sunday, September 04, 2005 11:27 AM
> >> To: wicket-user@lists.sourceforge.net
> >> Subject: Re: [Wicket-user] PageableGridDataView
> >>
> >>
> >>    It sounds to me like you might be able to use the 
> Strategy design 
> >> pattern here. Your design (mentioned in a previous email) 
> made a lot 
> >> more sense to me than Igor's idea of throwing "unsupported" 
> >> exceptions.
> >> In essense, you could say there are two available navigation 
> >> strategies so far: linear and page-oriented. Then you simply allow 
> >> users to plug them in and everything should (hopefully) be 
> clean from 
> >> inheritance point of view.
> >>
> >> Gili
> >>
> >> Christian Essl wrote:
> >>     
> >>> On Fri, 02 Sep 2005 18:04:31 -0400, Gili
> >>>       
> >> <[EMAIL PROTECTED]> wrote:
> >>     
> >>>>     What is the reason? The new method sounds very 
> anti-OOP to me. 
> >>>> Usually one layers functionality using interfaces. 
> >>>>         
> >> Stuffing them all
> >>     
> >>>> into the base class but having them throw exceptions when
> >>>>         
> >> "disabled" 
> >>     
> >>>> sounds a lot like a flat object model to me.
> >>>>         
> >>> The reason for unifying them in one base class is also to 
> make the 
> >>> inheritance hierarchy smaller, less deep and more
> >>>       
> >> consistent. If you
> >>     
> >>> split DataView and PageableDataView than you also have to make a 
> >>> GridDataView and a PageableGridDataView. Two classes which
> >>>       
> >> are from the
> >>     
> >>> hierarchy total unreleated but are otherwise more or less 
> the same.
> >>>
> >>> Further if you look at the old code of DataView and
> >>>       
> >> PagabeableDataView
> >>     
> >>> the PageableDataView is not easy to understand, because 
> you have to 
> >>> consider two classes with all the protected and overriding
> >>>       
> >> co-work. A
> >>     
> >>> general problem with inheritance, which gets worse the deeper the 
> >>> hierarchy is.
> >>>
> >>> And last but most important the user has to learn two 
> classes where 
> >>> there always remains some uncertainty wheter the
> >>>       
> >> child-class does indeed
> >>     
> >>> behave like the super class, because it could always 
> override some 
> >>> methods (as it currently does).
> >>>
> >>> So I am realy for merging them in one class.
> >>>
> >>> Christian
> >>>
> >>>       
> >>>> Gili
> >>>>
> >>>> Johan Compagner wrote:
> >>>>
> >>>>         
> >>>>> that is something we had.. and want to get rid of i think..
> >>>>>
> >>>>> johan
> >>>>>
> >>>>>
> >>>>> Gili wrote:
> >>>>>
> >>>>>           
> >>>>>> Igor Vaynberg wrote:
> >>>>>>
> >>>>>>             
> >>>>>>> Yes the support delegate is lazily created. 
> >>>>>>>               
> >> Setcurrentpage() throws
> >>     
> >>>>>>> illegalstateexception if paging is disabled.
> >>>>>>>               
> >>>>>>
> >>>>>>     Sounds like an anti-pattern to me. Why don't you 
> have a base 
> >>>>>> class without Pagable support and a subclass that is Pagable
> >>>>>> (always) with these methods.
> >>>>>>
> >>>>>> Gili
> >>>>>>
> >>>>>>
> >>>>>> -------------------------------------------------------
> >>>>>> SF.Net email is Sponsored by the Better Software
> >>>>>>             
> >> Conference & EXPO
> >>     
> >>>>>> September 19-22, 2005 * San Francisco, CA * Development
> >>>>>>             
> >> Lifecycle
> >>     
> >>>>>> Practices
> >>>>>> Agile & Plan-Driven Development * Managing Projects & Teams * 
> >>>>>> Testing & QA Security * Process Improvement & Measurement * 
> >>>>>> http://www.sqe.com/bsce5sf 
> >>>>>> _______________________________________________
> >>>>>> Wicket-user mailing list
> >>>>>> Wicket-user@lists.sourceforge.net 
> >>>>>> https://lists.sourceforge.net/lists/listinfo/wicket-user
> >>>>>>
> >>>>>>             
> >>>>> -------------------------------------------------------
> >>>>> SF.Net email is Sponsored by the Better Software 
> Conference & EXPO 
> >>>>> September 19-22, 2005 * San Francisco, CA * Development 
> Lifecycle 
> >>>>> Practices Agile & Plan-Driven Development * Managing Projects &
> >>>>>           
> >> Teams * Testing
> >>     
> >>>>> & QA
> >>>>> Security * Process Improvement & Measurement * 
> >>>>> http://www.sqe.com/bsce5sf 
> >>>>> _______________________________________________
> >>>>> Wicket-user mailing list
> >>>>> Wicket-user@lists.sourceforge.net
> >>>>> https://lists.sourceforge.net/lists/listinfo/wicket-user
> >>>>>
> >>>>>           
> >>>
> >>>       
> >> --
> >> http://www.desktopbeautifier.com/
> >>
> >>
> >> -------------------------------------------------------
> >> SF.Net email is Sponsored by the Better Software Conference & EXPO 
> >> September 19-22, 2005 * San Francisco, CA * Development Lifecycle 
> >> Practices Agile & Plan-Driven Development * Managing 
> Projects & Teams 
> >> * Testing & QA Security * Process Improvement & Measurement * 
> >> http://www.sqe.com/bsce5sf 
> >> _______________________________________________
> >> Wicket-user mailing list
> >> Wicket-user@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/wicket-user
> >>
> >>
> >>
> >>     
> >
> >
> >
> >
> > -------------------------------------------------------
> > SF.Net email is Sponsored by the Better Software Conference & EXPO 
> > September 19-22, 2005 * San Francisco, CA * Development Lifecycle 
> > Practices Agile & Plan-Driven Development * Managing 
> Projects & Teams 
> > * Testing & QA Security * Process Improvement & Measurement * 
> > http://www.sqe.com/bsce5sf 
> > _______________________________________________
> > Wicket-user mailing list
> > Wicket-user@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wicket-user
> >
> >   
> 
> 
> -------------------------------------------------------
> SF.Net email is Sponsored by the Better Software Conference & 
> EXPO September 19-22, 2005 * San Francisco, CA * Development 
> Lifecycle Practices Agile & Plan-Driven Development * 
> Managing Projects & Teams * Testing & QA Security * Process 
> Improvement & Measurement * http://www.sqe.com/bsce5sf 
> _______________________________________________
> Wicket-user mailing list
> Wicket-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wicket-user
> 
> 
> 




-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to