[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[equinox-dev] P2 metadata authoring - status/questions
I have been working on p2 meta data authoring, and have created a
large part of an Installable Unit editor.
As I did not want to lose the code in case of disaster, I checked it
in to the Buckminster SVN in wait for the proper place to be created
(understand everyone is busy with Ganymede stuff, so no need to hurry
- I am not blocked by this).
I am however a bit blocked by not understanding touchpoints and
touchpoint data, and what should be done about them from an authoring
perspective. So... here is a bunch of questions that I hope someone
has time to answer:
- If an IU does not have any touchpoint data is the default then
NullTouchpoint or must the null touchpoint be set explicitly?
- The touchpoint type has a version. Does it denote the version of the
touchpoint data, or is it used by a matching strategy to find a
particular version of a Touchpoint instance at runtime?
I have looked at the touchpoint data/touchpoint actions, and I
understand that there are 5 actions for the native touchpoint (cleanup
zip, unzip, chmod, collect, link), and 21 (collect, bundle: install/
uninstall/add-source/remove-source, feature: install/uninstall, set
launcher, program argument: add/remove, set start level, mark started,
set FW dependent/independent property, add JVM argument, mkdir, rmdir,
link, chmod, check trust). I understand that the set of actions can
change over time (hence the version on touchpoint type?), and also
understand that it is possible to add new types of touchpoints. My
idea was therefore to support touchpoint data authoring via an
extension point that allows the provider of a touchpoint to provide
information how they should be edited - i.e. the set of touchpoint
data key's and what values they can have, and validators.
Now some more questions:
- Do you think it makes sense to be able to edit all of these, or are
some of the instructions generated (like check trust?)
- How can I learn what the input to the actions are? Some parameters
look like they are provided by the runtime (i.e. not specified in the
iu touchpoint data). If there is no documentation, I can write up a
list of what I think the parameter are and ask for someone to review.
- Since the touchpoint data is open ended it needs to handle any type
of data. Is it correct that it is a map allowed to contain <String,
String> or <String, Map> ?
- Is there some parameter substitution available? Thinks like $tmp,
$home, $installdir etc?
- Do you think the touchpoint type/data construct will change
significantly in 3.5?