| Author | Topic |
Posts: 273
Registered: June 2006
|
|
Constructors in extension elements
|
10 Apr '12 03:12
|
 |
|
Dear all,
Is there already a general rule which constructors are required when
implementing extension elements?
It seems there should there always be an empty constructor and one that
takes the usual arguments Level and Version. But how about the package
version?
How about more convenient constructors that take some arguments to
initialize the data structure?
Should constructors of package elements throw an exception when trying
to initialize them with Level Version combinations before 3.1 (but with
a defined LV, i.e., other than -1.-1)?
At the moment it seems there are very diverse solutions in the packages
that have already been implemented. Since we already have such a very
nice tutorial that explains how to implement extension packages, we
should also fix some rules about constructors.
Finally, I would like to ask why we decided that the interface
SBasePlugin does not extend the interface TreeNodeWithChangeSupport and
why the abstract class AbstractSBasePlugin does not extend
AbstractTreeNode. I understand that extensions to some SBase are not a
separate TreeNode, but since the getChildAt(int) method simply excludes
extension elements anyway (but not their children), we could avoid a
duplication of code by making AbstractSBasePlugin a derivative of
AbstractTreeNode (all other methods seem to be simimilar).
In this way, it would also become possible to maintain userObjects
within instances of SBasePlugin, which is not possible at the moment (it
would again require a duplication of code).
Cheers
Andreas
--
Dr. Andreas Dräger
University of Tuebingen
Center for Bioinformatics Tuebingen (ZBIT)
Sand 1
72076 Tübingen
Germany
Phone: +49-7071-29-78982
Fax: +49-7071-29-5091
____________________________________________________________
To manage your jsbml-development list subscription, visit
https://utils.its.caltech.edu/mailman/listinfo/jsbml-development
For a web interface to the jsbml-development mailing list, visit
http://sbml.org/Forums/
For questions or feedback about the jsbml-development list,
contact sbml-team@caltech.edu
|
|
|