Not that my opinion should matter much, but have you considered, that if
you release 1.2 without the refactoring, you'll have to maintain at
least three different versions?
1.1, 1.2 and new 2.0.
While if you do the changes in 1.2, you'll only have to maintain 1.1 and
1.2. Maintaining previous versions is IMHO very important, we already
have one project running on 1.1, and there is no reason to port it to
1.2 right now.
Since 1.2 has already broken compatibility with 1.1, in my opinion the
best thing would be to make the changes as soon as possible.
-Matej
Igor Vaynberg wrote:
hello all,
we, the core devel group, have been discussing and evaluating a possible
change we would like to make for the next release and we would like your
input.
the idea is to remove the Component.add(Component child) method and link
components via a constructor instead: Component(Component parent, String
id)
this has a couple of advantages:
* have access to markup the component is attached to in the constructor.
that means you can read attributes and initialize your component
appropriately. it also means we can eliminate the use of attribute
modifiers for non-dynamic attribute replacement.
* we can fail super-early if there is a mismatch between component and
markup hierachies. currently we dont fail until render time, with this
change we can fail in the Component constructor - so before the
component is actually created. this will give you a line precise error
in markup AND java code.
* getPage() and getPath() will work in the component's constructor. this
is really nice for ajax stuff.
the big disadvantage of course is that we will break ALL existing code.
it is a simple change to fix though. a hybrid of this and add() will not
work because all links in the chain need to use the new constructor for
it to work.
we would also provide Component.remove() and Component.readd() which
remove/readd component to its parent. so the link between parent and
child is now managed on the child's side instead of the parent's side.
this, of course, makes it impossible to move components between parents
- is there a usecase for this?
please provide us with feedback/concerns so we have a better feel for
requirements out there.
thanks,
-Igor
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
Wicket-develop mailing list
Wicket-develop@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-develop