Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Equinox p2 Metadata Authoring"

(The format of the "IU" file)
(Naming convention)
Line 28: Line 28:
  
 
=Naming convention=
 
=Naming convention=
To make it easy to detect the "IU" files I propose that an ".iu" extension is required.
+
To make it easy to detect the "IU" files an ".iu" extension should be required.
  
 
=Writer/Parser design=
 
=Writer/Parser design=

Revision as of 18:19, 31 May 2008

This page describes the design of the proposed p2 meta data authoring project.

Work in Progress - not yet meaningfull to comment

Metadata authoring proposal

The problems this project should solve:

  • Many types are automatically "adapted" to installable units (e.g. features and plugins), but there is no direct authoring available.
  • Existing "adapted" installable units may have meta data that needs to be modified/augmented in order for the unit to be useful - there is a mechanism available to provide advice to the resolution mechanism, but authoring of such advice is not.

I think the work consists of:

  • An XML definition for "authored installable unit" (most likely the <unit> format in the local meta data repository). It should be possible to create such an "iu" file with any name without requirements that it is in some special project or folder.
  • An XML definition for "advice to adapted installable unit" (as I am not sure what is needed here, a separate definition is perhaps needed).
  • An editor for Installable Unit
  • Ad editor for Installable Unit advice (is perhaps the same editor).
  • A way to test the installable unit (resolution, install-ability)
  • A way to export/publish installable units

Files and Formats

The format of the "IU" file

It seems obvious to reuse the xml format from the local meta data repository as it already describes an installable unit.

<?xml version='1.0' encoding='UTF-8'?>
<?InstallableUnit class='org.eclipse.equinox.internal.p2.metadata.InstallableUnit' version='1.0.0'?>
<installable version="1.0.0">
     <unit>
           <!-- like local metadata repository for 'unit' element -->
     </unit>
</installable>

Naming convention

To make it easy to detect the "IU" files an ".iu" extension should be required.

Writer/Parser design

I was able to crete a prototype that read and writes this format by reusing the metadata repository XMLReader and XMLWriter. It is however a bit unclear if the intention is to allow the InstallableUnit to be used by an editor, or if these classes should be considered internal/private.

Back to the top