Re: [vote] change ibehavior from interface to abstract class in trunk

2010-11-27 Thread Cemal Bayramoglu
... unless you feel IBehavior is no longer cohesive and needs to be
abandoned for that reason, or that it, or your new Behavior class
itself, should become an extension of multiple smaller interfaces that
more sensibly split, group and name the full range of
responsibilities, and if you are not proposing to widen or narrow the
API/functionality expected (of Behavior) by Component, wouldn't

public abstract class Behavior implements IBehavior{...}

be not only less disruptive but also not unnecessarily limit
design/implementation options open to app developers?

For example,
// this would need to be rewritten
final IBehavior myBehevior = new AjaxEventBehavior(onmouseover){...}

Beyond the stated relinquishment of proxies and mixins, this also
removes some implementation options when adapting to IBehavior (you
could still use delegation instead of implementation inheritance),
which may or may not be a smart practice, but why would Wicket take
responsibility for enforcing such judgement?
Other similar limitations would also be introduced, possibly without sufficient
compensation (1 less type to maintain?!)
For example,
// although this looks like a mixin too, the intention
// here is to adapt C to IBehavior's interface
class A extends C implements IBehavior{...}

Regards - Cemal
jWeekend
Training, Consulting, Development
http://jWeekend.com

On 27 November 2010 03:07, Igor Vaynberg igor.vaynb...@gmail.com wrote:
 Vote is now closed with 4 binding +1 votes. I will work on implementing this
 soon.

 -igor

 On Nov 26, 2010 11:47 AM, Martin Grigorov mgrigo...@apache.org wrote:

 +1

 On Wed, Nov 24, 2010 at 3:26 PM, Johan Compagner jcompag...@gmail.com
wrote:


 +1

 On Wed, Nov 24, 2010 at 03:22, Igor Vaynberg igor.vaynb...@gmail.com
 wrote:
  the ib...



Re: [vote] change ibehavior from interface to abstract class in trunk

2010-11-26 Thread Martin Grigorov
+1

On Wed, Nov 24, 2010 at 3:26 PM, Johan Compagner jcompag...@gmail.comwrote:

 +1

 On Wed, Nov 24, 2010 at 03:22, Igor Vaynberg igor.vaynb...@gmail.com
 wrote:
  the ibehavior interface has become somewhat cluttered and a lot of
  methods in it can have a nice default implementation that works for
  99% of the usecases. there is no longer a point to having it as an
  interface. this vote is to
 
  - rename IBehavior to Behavior and make it an abstract class with
  stubs for every method
  - rename AbstractBehavior to BaseBehavior and deprecate it, it has
  accumulated some crud over the years
 
  the only thing we will lose is the ability to cleanly proxy a
  ibehavior and to use it as a mixin - i cant think of any usecases for
  either
 
  vote ends 7pm gmt-8 friday the 26th
 
  -igor
 



Re: [vote] change ibehavior from interface to abstract class in trunk

2010-11-26 Thread Igor Vaynberg
Vote is now closed with 4 binding +1 votes. I will work on implementing this
soon.

-igor

On Nov 26, 2010 11:47 AM, Martin Grigorov mgrigo...@apache.org wrote:

+1

On Wed, Nov 24, 2010 at 3:26 PM, Johan Compagner jcompag...@gmail.com
wrote:


 +1

 On Wed, Nov 24, 2010 at 03:22, Igor Vaynberg igor.vaynb...@gmail.com
 wrote:
  the ib...


Re: [vote] change ibehavior from interface to abstract class in trunk

2010-11-24 Thread Johan Compagner
+1

On Wed, Nov 24, 2010 at 03:22, Igor Vaynberg igor.vaynb...@gmail.com wrote:
 the ibehavior interface has become somewhat cluttered and a lot of
 methods in it can have a nice default implementation that works for
 99% of the usecases. there is no longer a point to having it as an
 interface. this vote is to

 - rename IBehavior to Behavior and make it an abstract class with
 stubs for every method
 - rename AbstractBehavior to BaseBehavior and deprecate it, it has
 accumulated some crud over the years

 the only thing we will lose is the ability to cleanly proxy a
 ibehavior and to use it as a mixin - i cant think of any usecases for
 either

 vote ends 7pm gmt-8 friday the 26th

 -igor



Re: [vote] change ibehavior from interface to abstract class in trunk

2010-11-23 Thread Igor Vaynberg
+1

-igor

On Tue, Nov 23, 2010 at 6:22 PM, Igor Vaynberg igor.vaynb...@gmail.com wrote:
 the ibehavior interface has become somewhat cluttered and a lot of
 methods in it can have a nice default implementation that works for
 99% of the usecases. there is no longer a point to having it as an
 interface. this vote is to

 - rename IBehavior to Behavior and make it an abstract class with
 stubs for every method
 - rename AbstractBehavior to BaseBehavior and deprecate it, it has
 accumulated some crud over the years

 the only thing we will lose is the ability to cleanly proxy a
 ibehavior and to use it as a mixin - i cant think of any usecases for
 either

 vote ends 7pm gmt-8 friday the 26th

 -igor