[BBB-DEV] Re: Re: Re: Re: org.jdesktop.beansbinding.Property should be interface

  • From: Peter Levart <peter.levart@marand.si>
  • To: dev@betterbeansbinding.kenai.com
  • Subject: [BBB-DEV] Re: Re: Re: Re: org.jdesktop.beansbinding.Property should be interface
  • Date: Thu, 16 Jul 2009 10:05:21 +0200
  • Organization: Marand

On Wednesday 15 July 2009 18:13:20 Fabrizio Giudici wrote:
> I understand your point, but breaking binary compatibility is not a
> simple matter - for instance, BBB wants to be an implementation of
> JSR-295, and as such it must binary compatible with it. In any case,
> retrocompatibility was one of the key points of BBB since when it was
> introduced and I don't think it should be changed now. At least, we
> should make a deeper investigation about the impacts of the move.
>


Regarding JSR-295: I checked the JCP page and could find absolutely nothing. JSR-295 did not reach any public phase. So there's currently no JSR-295 a the moment and there will not be any unless Sun (or Oracle) revives the project and releases a public spec. If that happens, BBB is dead anyway and will at most be used as a source of bug-fixes/new features that would be incorporated into official JSR-295 implementation.


Regarding breaking binary compatibility in BBB I think we have three possible situations here:


A) a custom application uses BeansBinding and wants to switch over to BBB.


Since Developer owns the sources it can simply recompile the application to take advantage of new features / bug fixes of BBB.


B) a custom application uses a 3rd party library (not under contol of the Developer of custom application) that uses BeansBinding but it does not use BeansBinding itself.


Developer can not switch to BBB unless 3rd party releases new version compiled with BBB. But what is the possible reason for Developer to want to switch to BBB in this scenario? Only a possible bug fix in BBB that would not require 3rd party to change it's code. New features of BBB are of no value to existing 3rd party library.


C) a custom application uses BeansBinding and a 3rd party library (not under contol of the Developer of custom application) that uses BeansBinding.


This is the toughest case since Developer may want to switch to BBB for new features but can not do it because 3rd party library does not work with BBB as is.



I think that case A is the most frequent situation we have now. Cases B and C, I don't know of any and if there are any, 3rd party libraries that use BeansBinding are hopefully not closed source and Developer can recompile the library itself and use it with BBB.


The only 3rd party application that I'm aware of that uses BeanBinding, is not closed source and is huge, so recompiling it is not an option is NetBeans. I don't know if this change (abstract class Property -> interface Property) would break it, but I will do a scan of it's sources to find out and let us know.


Peter





[BBB-DEV] org.jdesktop.beansbinding.Property should be interface

Peter Levart 07/15/2009

[BBB-DEV] Re: org.jdesktop.beansbinding.Property should be interface

Fabrizio Giudici 07/15/2009

[BBB-DEV] Re: org.jdesktop.beansbinding.Property should be interface

Fabrizio Giudici 07/15/2009

[BBB-DEV] Re: org.jdesktop.beansbinding.Property should be interface

Fabrizio Giudici 07/15/2009

[BBB-DEV] Re: Re: org.jdesktop.beansbinding.Property should be interface

Witold Szczerba 07/15/2009

[BBB-DEV] Re: Re: Re: org.jdesktop.beansbinding.Property should be interface

Fabrizio Giudici 07/15/2009

[BBB-DEV] Re: Re: Re: Re: org.jdesktop.beansbinding.Property should be interface

Witold Szczerba 07/15/2009

[BBB-DEV] Re: Re: Re: Re: org.jdesktop.beansbinding.Property should be interface

Peter Levart 07/16/2009

[BBB-DEV] Re: Re: Re: org.jdesktop.beansbinding.Property should be interface

Peter Levart 07/16/2009

[BBB-DEV] Re: org.jdesktop.beansbinding.Property should be interface

Peter Levart 07/16/2009
  • Mysql
  • Glassfish
  • Jruby
  • Rails
  • Nblogo
Terms of Use; Privacy Policy;
© 2010, Oracle Corporation and/or its affiliates
(revision 20100312.9442df5)
 
 
loading
Please Confirm