Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 276125 - Structure configuration metadata for reuse
Summary: Structure configuration metadata for reuse
Status: RESOLVED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Releng (show other bugs)
Version: 3.5   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: David Williams CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-05-13 12:06 EDT by Andrew Niefer CLA
Modified: 2015-03-23 03:52 EDT (History)
4 users (show)

See Also:


Attachments
patch (8.88 KB, patch)
2009-05-13 18:20 EDT, Andrew Niefer CLA
no flags Details | Diff
Alternative smaller patch (2.64 KB, patch)
2009-05-14 09:47 EDT, Andrew Niefer CLA
no flags Details | Diff
updated alternative smaller patch (2.66 KB, patch)
2009-05-14 16:53 EDT, Kim Moir CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Niefer CLA 2009-05-13 12:06:57 EDT
We should structure our configuration metadata in a way that can be reused by others.

We want an IU that includes metadata for setting default start levels and default config.ini properties that people can include to get the same setup as the SDK.

Currently, the SDK has no setup that is different that the platform.  I suggest we use the current "toolingorg.eclipse.platform.ide.configuration" IU for reuse.

This IU is currently automatically generated based on the platform .product file.  I currently see 3 properties being set in here that aren't generally applicable to other products.  These are:
   eclipse.application=org.eclipse.ui.ide.workbench
   eclipse.product=org.eclipse.platform.ide
   osgi.splashPath=org.eclipse.platform

We should try and remove these properties from this IU.  For the org.eclipse.platform.ide we can contribute these properties separately using the p2.inf.

The other products, org.eclipse.platform.sdk and org.eclipse.sdk.ide should then reuse the toolingorg.eclipse.platform.ide.configuration instead of redefinining the configuration for themselves.  
The rcp products may already be in a reusable state, though I don't see any particular need to have the platform reuse the rcp.

I will attach a patch that I think will do this.
Comment 1 Andrew Niefer CLA 2009-05-13 18:20:32 EDT
Created attachment 135709 [details]
patch

Patch does the following:
1) platform.ide
  - platform.product file doesn't specify product or application or splash
  - p2.inf manually adds osgi.splashPath, eclipse.product, eclipse.application
2) platform.sdk.  
  - platform.product - Don't specify any configuration info
  - p2.inf - add requirement on toolingorg.eclipse.platform.ide.configuration
3) sdk -> same as platform.sdk, don't provide configuration info
          require toolingorg.eclipse.platform.ide.configuration

4) buildAll 
 - platform.ide must be generated first
 - platform.ide must be generated for all platforms, even if we don't install some of them, since the sdk will include the platform.ide metadata
Comment 2 Pascal Rapicault CLA 2009-05-13 21:44:52 EDT
Andrew, is this something that we should try to fix for 3.5?
Comment 3 Andrew Niefer CLA 2009-05-14 09:47:53 EDT
Created attachment 135778 [details]
Alternative smaller patch

(In reply to comment #2)
> Andrew, is this something that we should try to fix for 3.5?
> 

I think we at least need to change org.eclipse.platform.ide so that we have something people can reuse.  There is no real need to change the other products (except for them being somewhat exemplary).  Here is a smaller patch that only changes the platform.ide product and leaves everything else as it was before.
Comment 4 Kim Moir CLA 2009-05-14 16:53:11 EDT
Created attachment 135867 [details]
updated alternative smaller patch

updated patch to fix missing splash screen on mac
Comment 5 Kim Moir CLA 2009-05-20 14:09:11 EDT
In the test build, all the platform zips have a log like this
them

ENTRY org.eclipse.osgi 4 0 2009-05-20 14:02:54.938
!MESSAGE Application error
!STACK 1
java.lang.RuntimeException: No application id has been found.
        at
org.eclipse.equinox.internal.app.EclipseAppContainer.startDefaultApp(EclipseAppContainer.java:236)
        at
org.eclipse.equinox.internal.app.MainApplicationLauncher.run(MainApplicationLauncher.java:29)
        at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
        at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
        at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
        at java.lang.reflect.Method.invoke(Method.java:391)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
        at org.eclipse.equinox.launcher.Main.main(Main.java:1287)
Comment 6 Andrew Niefer CLA 2009-05-22 11:17:11 EDT
We should look at this in 3.5.1
Comment 7 David Williams CLA 2015-03-23 03:52:37 EDT
I'm going to officially close this as "won't fix" because we ourselves do not use re-usable configuration units any longer. In particular, the "configuration feature" was removed from all "products", though it is still created and put in our repository, in case some legacy users need it. But, obviously, since we don't use it, if there are issues with it, we depend on those legacy users to notify us if they need some change in it.