Please consider backing out changes to Component that merged dissimilar objects
into an Object[]
------------------------------------------------------------------------------------------------
Key: WICKET-1862
URL: https://issues.apache.org/jira/browse/WICKET-1862
Project: Wicket
Issue Type: Improvement
Components: wicket
Affects Versions: 1.3.4
Reporter: Willis Blackburn
Priority: Minor
In Wicket 1.2, the members of the Component class were pretty straightforward.
But in 1.3, three fields, including the model, have been merged into a single
Object[], and there are new methods called data_get, data_set, data_length,
data_add, data_remove, and data_insert, to deal with the array.
I cannot determine from the source code why this was done, but it does not seem
like a change for the better. The Component class is now very confusing, and
the change has also made working with any Component subclass (in other words,
practically every Wicket class!) in the debugger more difficult. I think that
when three fields that used to be accessed in a simple and straightforward
manner are replaced by 160 lines of code, there needs to be some very
compelling reason.
Maybe the motivation was to reduce the memory footprint of a Component instance
that does not have any model, behaviors, or metadata, or maybe one that just
has one of the three? If so, is that really so compelling? Is the memory
footprint that large? Are users suffering from problems that have been
addressed by this solution? In the context of the memory usage of a typical
webapp, saving something like 8 bytes per Component instance does not seem like
that much.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.