|Re: [equinox-dev] P2 metadata authoring - status/questions|
The code is in the Buckminster SVN - I have not packaged it up as a feature, and I reused some Buckminster bundles to make faster progress. Expect to work on it a couple of days more before I have it packaged for easier consumption - right now there are several buckminster bundles needed to make it run (my plan is to remove the dependencies as I am mostly using utility functions). The code can be found at: svn://dev.eclipse.org/svnroot/tools/org.eclipse.buckminster, in the project org.eclipse.equinox.p2.authoring.
What is working now:
- creating a new IU file (extension .iu) via a new file wizard
- open, save, save as
- edit of general things (name, namespace, singleton, etc)
- edit of provided capabilities
- edit of required capabilities (no lookup in repositories yet, just manual editing)
- editing of artifact keys (no lookup in an artifact repository yet, just manual editing)
- editing of information: description, license and copyright
- validation of urls, structured names etc. "as you type" with error markers next to fields, and popup list with popup menu/links to fields in header
- undo/redo of all edits that also switches between the pages/tabs in the editor as edits are undone/redone
Some follow up on your answers
In that case, shouldn't the Version be a Version Range?
ok - I will probably do this via some sort of meta data generated form details.
ok, will do that - that will be the basis for the meta data that drives the forms.
When I looked in code, it indicates that some operations that require more than one parameter have them in a map. As an example, "unzip" takes two parameters; PARM_SOURCE, and PARM_TARGET, which I assumed is encoded as <"unzip", Map (<PARM_SOURCE, "xxx"><PARM_TARGET, "yyy">) >. Is this assumption correct?
Will look at ParameterizedProvisioningAction and include what I find in the documentation I will prepare.
ok. As I want to do something right now to drive forms editing of the parameters, and will need some sort of meta data format, are there any preferences? Something that is used elsewhere that I should look at? My idea is to have an extension point that allows a provider to plugin editing support for a particular version of a touchpoint (to make it posible to edit IUs that use touchpoints that are not available in the authoring environment other than as meta data descriptions).
Say, something like an ITouchpointDescriptor interface that has methods to:
- get the values for the touchpoint type (id, version, etc),
- get a collection of ITouchpointInstructionDescriptor that describes each instruction/action (label, icon, name/validator/label per parameter, etc.)
- get a label provider for ITouchpointDescriptor
Should I just go ahead and implement something as a proposal?