Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 239493
Collapse All | Expand All

(-)META-INF/MANIFEST.MF (-65 / +65 lines)
Lines 1-65 Link Here
1
Manifest-Version: 1.0
1
Manifest-Version: 1.0
2
Bundle-ManifestVersion: 2
2
Bundle-ManifestVersion: 2
3
Bundle-Name: %name
3
Bundle-Name: %name
4
Bundle-SymbolicName: org.eclipse.pde.core; singleton:=true
4
Bundle-SymbolicName: org.eclipse.pde.core; singleton:=true
5
Bundle-Version: 3.5.0.qualifier
5
Bundle-Version: 3.5.0.qualifier
6
Bundle-Activator: org.eclipse.pde.internal.core.PDECore
6
Bundle-Activator: org.eclipse.pde.internal.core.PDECore
7
Bundle-Vendor: %provider-name
7
Bundle-Vendor: %provider-name
8
Bundle-Localization: plugin
8
Bundle-Localization: plugin
9
Export-Package: 
9
Export-Package: 
10
 org.eclipse.pde.core,
10
 org.eclipse.pde.core,
11
 org.eclipse.pde.core.build,
11
 org.eclipse.pde.core.build,
12
 org.eclipse.pde.core.plugin,
12
 org.eclipse.pde.core.plugin,
13
 org.eclipse.pde.internal.core;x-friends:="org.eclipse.pde.ui,org.eclipse.pde.runtime",
13
 org.eclipse.pde.internal.core;x-friends:="org.eclipse.pde.ui,org.eclipse.pde.runtime",
14
 org.eclipse.pde.internal.core.build;x-friends:="org.eclipse.pde.ui",
14
 org.eclipse.pde.internal.core.build;x-friends:="org.eclipse.pde.ui",
15
 org.eclipse.pde.internal.core.builders;x-friends:="org.eclipse.pde.ui",
15
 org.eclipse.pde.internal.core.builders;x-friends:="org.eclipse.pde.ui",
16
 org.eclipse.pde.internal.core.bundle;x-friends:="org.eclipse.pde.ui",
16
 org.eclipse.pde.internal.core.bundle;x-friends:="org.eclipse.pde.ui",
17
 org.eclipse.pde.internal.core.content;x-internal:=true,
17
 org.eclipse.pde.internal.core.content;x-internal:=true,
18
 org.eclipse.pde.internal.core.converter;x-friends:="org.eclipse.pde.ui",
18
 org.eclipse.pde.internal.core.converter;x-friends:="org.eclipse.pde.ui",
19
 org.eclipse.pde.internal.core.exports;x-friends:="org.eclipse.pde.ui",
19
 org.eclipse.pde.internal.core.exports;x-friends:="org.eclipse.pde.ui",
20
 org.eclipse.pde.internal.core.feature;x-friends:="org.eclipse.pde.ui",
20
 org.eclipse.pde.internal.core.feature;x-friends:="org.eclipse.pde.ui",
21
 org.eclipse.pde.internal.core.ibundle;x-friends:="org.eclipse.pde.ui",
21
 org.eclipse.pde.internal.core.ibundle;x-friends:="org.eclipse.pde.ui",
22
 org.eclipse.pde.internal.core.ifeature;x-friends:="org.eclipse.pde.ui",
22
 org.eclipse.pde.internal.core.ifeature;x-friends:="org.eclipse.pde.ui",
23
 org.eclipse.pde.internal.core.iproduct;x-friends:="org.eclipse.pde.ui",
23
 org.eclipse.pde.internal.core.iproduct;x-friends:="org.eclipse.pde.ui",
24
 org.eclipse.pde.internal.core.ischema;x-friends:="org.eclipse.pde.ui",
24
 org.eclipse.pde.internal.core.ischema;x-friends:="org.eclipse.pde.ui",
25
 org.eclipse.pde.internal.core.isite;x-friends:="org.eclipse.pde.ui",
25
 org.eclipse.pde.internal.core.isite;x-friends:="org.eclipse.pde.ui",
26
 org.eclipse.pde.internal.core.itarget;x-friends:="org.eclipse.pde.ui",
26
 org.eclipse.pde.internal.core.itarget;x-friends:="org.eclipse.pde.ui",
27
 org.eclipse.pde.internal.core.natures;x-friends:="org.eclipse.pde.ui",
27
 org.eclipse.pde.internal.core.natures;x-friends:="org.eclipse.pde.ui",
28
 org.eclipse.pde.internal.core.plugin;x-friends:="org.eclipse.pde.ui",
28
 org.eclipse.pde.internal.core.plugin;x-friends:="org.eclipse.pde.ui",
29
 org.eclipse.pde.internal.core.product;x-friends:="org.eclipse.pde.ui",
29
 org.eclipse.pde.internal.core.product;x-friends:="org.eclipse.pde.ui",
30
 org.eclipse.pde.internal.core.schema;x-friends:="org.eclipse.pde.ui",
30
 org.eclipse.pde.internal.core.schema;x-friends:="org.eclipse.pde.ui",
31
 org.eclipse.pde.internal.core.search;x-friends:="org.eclipse.pde.ui",
31
 org.eclipse.pde.internal.core.search;x-friends:="org.eclipse.pde.ui",
32
 org.eclipse.pde.internal.core.site;x-friends:="org.eclipse.pde.ui",
32
 org.eclipse.pde.internal.core.site;x-friends:="org.eclipse.pde.ui",
33
 org.eclipse.pde.internal.core.target;x-friends:="org.eclipse.pde.ui",
33
 org.eclipse.pde.internal.core.target;x-friends:="org.eclipse.pde.ui",
34
 org.eclipse.pde.internal.core.target.impl;x-friends:="org.eclipse.pde.ui",
34
 org.eclipse.pde.internal.core.target.impl;x-friends:="org.eclipse.pde.ui",
35
 org.eclipse.pde.internal.core.target.provisional;x-friends:="org.eclipse.pde.ui",
35
 org.eclipse.pde.internal.core.target.provisional;x-friends:="org.eclipse.pde.ui,org.eclipse.pde.api.tools.ui",
36
 org.eclipse.pde.internal.core.text;
36
 org.eclipse.pde.internal.core.text;
37
  x-friends:="org.eclipse.pde.ui,
37
  x-friends:="org.eclipse.pde.ui,
38
   org.eclipse.pde.ds.core,
38
   org.eclipse.pde.ds.core,
39
   org.eclipse.pde.ua.core,
39
   org.eclipse.pde.ua.core,
40
   org.eclipse.pde.ds.ui,
40
   org.eclipse.pde.ds.ui,
41
   org.eclipse.pde.ua.ui",
41
   org.eclipse.pde.ua.ui",
42
 org.eclipse.pde.internal.core.text.build;x-friends:="org.eclipse.pde.ui",
42
 org.eclipse.pde.internal.core.text.build;x-friends:="org.eclipse.pde.ui",
43
 org.eclipse.pde.internal.core.text.bundle;x-friends:="org.eclipse.pde.ui",
43
 org.eclipse.pde.internal.core.text.bundle;x-friends:="org.eclipse.pde.ui",
44
 org.eclipse.pde.internal.core.text.plugin;x-friends:="org.eclipse.pde.ui",
44
 org.eclipse.pde.internal.core.text.plugin;x-friends:="org.eclipse.pde.ui",
45
 org.eclipse.pde.internal.core.util;x-friends:="org.eclipse.pde.ui,org.eclipse.pde.ua.ui",
45
 org.eclipse.pde.internal.core.util;x-friends:="org.eclipse.pde.ui,org.eclipse.pde.ua.ui",
46
 org.eclipse.pde.internal.core.variables;x-internal:=true
46
 org.eclipse.pde.internal.core.variables;x-internal:=true
47
Require-Bundle: 
47
Require-Bundle: 
48
 org.eclipse.core.runtime;bundle-version="[3.1.0,4.0.0)",
48
 org.eclipse.core.runtime;bundle-version="[3.1.0,4.0.0)",
49
 org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
49
 org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
50
 org.eclipse.jdt.core;bundle-version="[3.2.0,4.0.0)",
50
 org.eclipse.jdt.core;bundle-version="[3.2.0,4.0.0)",
51
 org.eclipse.team.core;bundle-version="[3.2.0,4.0.0)",
51
 org.eclipse.team.core;bundle-version="[3.2.0,4.0.0)",
52
 org.eclipse.update.configurator;bundle-version="[3.1.0,4.0.0)",
52
 org.eclipse.update.configurator;bundle-version="[3.1.0,4.0.0)",
53
 org.eclipse.text;bundle-version="[3.1.0,4.0.0)",
53
 org.eclipse.text;bundle-version="[3.1.0,4.0.0)",
54
 org.eclipse.jdt.launching;bundle-version="[3.2.0,4.0.0)",
54
 org.eclipse.jdt.launching;bundle-version="[3.2.0,4.0.0)",
55
 org.eclipse.core.filebuffers;bundle-version="[3.2.0,4.0.0)",
55
 org.eclipse.core.filebuffers;bundle-version="[3.2.0,4.0.0)",
56
 org.eclipse.core.variables;bundle-version="[3.1.0,4.0.0)",
56
 org.eclipse.core.variables;bundle-version="[3.1.0,4.0.0)",
57
 org.eclipse.pde.build;bundle-version="[3.2.0,4.1.0)",
57
 org.eclipse.pde.build;bundle-version="[3.2.0,4.1.0)",
58
 org.eclipse.ant.core;bundle-version="[3.1.0,4.0.0)",
58
 org.eclipse.ant.core;bundle-version="[3.1.0,4.0.0)",
59
 org.eclipse.equinox.simpleconfigurator.manipulator;bundle-version="[1.0.100,2.0.0)",
59
 org.eclipse.equinox.simpleconfigurator.manipulator;bundle-version="[1.0.100,2.0.0)",
60
 org.eclipse.equinox.frameworkadmin;bundle-version="[1.0.100,2.0.0)",
60
 org.eclipse.equinox.frameworkadmin;bundle-version="[1.0.100,2.0.0)",
61
 org.eclipse.debug.core;bundle-version="[3.5.0,4.0.0)"
61
 org.eclipse.debug.core;bundle-version="[3.5.0,4.0.0)"
62
Eclipse-LazyStart: true
62
Eclipse-LazyStart: true
63
Bundle-RequiredExecutionEnvironment: J2SE-1.4
63
Bundle-RequiredExecutionEnvironment: J2SE-1.4
64
Import-Package: com.ibm.icu.util
64
Import-Package: com.ibm.icu.util
65
Bundle-ActivationPolicy: lazy
65
Bundle-ActivationPolicy: lazy
(-)META-INF/MANIFEST.MF (-1 / +2 lines)
Lines 22-28 Link Here
22
 org.eclipse.ui.editors;bundle-version="[3.4.0,4.0.0)",
22
 org.eclipse.ui.editors;bundle-version="[3.4.0,4.0.0)",
23
 org.eclipse.ltk.core.refactoring;bundle-version="[3.4.0,4.0.0)",
23
 org.eclipse.ltk.core.refactoring;bundle-version="[3.4.0,4.0.0)",
24
 org.eclipse.ltk.ui.refactoring;bundle-version="[3.4.0,4.0.0)",
24
 org.eclipse.ltk.ui.refactoring;bundle-version="[3.4.0,4.0.0)",
25
 org.eclipse.core.expressions;bundle-version="3.4.100"
25
 org.eclipse.core.expressions;bundle-version="3.4.100",
26
 org.eclipse.equinox.frameworkadmin;bundle-version="[1.0.100,2.0.0)"
26
Bundle-RequiredExecutionEnvironment: J2SE-1.4
27
Bundle-RequiredExecutionEnvironment: J2SE-1.4
27
Bundle-Activator: org.eclipse.pde.api.tools.ui.internal.ApiUIPlugin
28
Bundle-Activator: org.eclipse.pde.api.tools.ui.internal.ApiUIPlugin
28
Export-Package: org.eclipse.pde.api.tools.ui.internal;x-friends:="org.eclipse.pde.api.tools.tests",
29
Export-Package: org.eclipse.pde.api.tools.ui.internal;x-friends:="org.eclipse.pde.api.tools.tests",
(-)src/org/eclipse/pde/api/tools/ui/internal/wizards/ApiBaselineWizardPage.java (-16 / +51 lines)
Lines 30-35 Link Here
30
import org.eclipse.core.runtime.Platform;
30
import org.eclipse.core.runtime.Platform;
31
import org.eclipse.core.runtime.SubMonitor;
31
import org.eclipse.core.runtime.SubMonitor;
32
import org.eclipse.core.runtime.SubProgressMonitor;
32
import org.eclipse.core.runtime.SubProgressMonitor;
33
import org.eclipse.core.runtime.URIUtil;
33
import org.eclipse.jdt.launching.JavaRuntime;
34
import org.eclipse.jdt.launching.JavaRuntime;
34
import org.eclipse.jdt.launching.environments.IExecutionEnvironment;
35
import org.eclipse.jdt.launching.environments.IExecutionEnvironment;
35
import org.eclipse.jface.dialogs.Dialog;
36
import org.eclipse.jface.dialogs.Dialog;
Lines 55-60 Link Here
55
import org.eclipse.pde.api.tools.ui.internal.IApiToolsHelpContextIds;
56
import org.eclipse.pde.api.tools.ui.internal.IApiToolsHelpContextIds;
56
import org.eclipse.pde.api.tools.ui.internal.SWTFactory;
57
import org.eclipse.pde.api.tools.ui.internal.SWTFactory;
57
import org.eclipse.pde.api.tools.ui.internal.preferences.ApiBaselinePreferencePage;
58
import org.eclipse.pde.api.tools.ui.internal.preferences.ApiBaselinePreferencePage;
59
import org.eclipse.pde.internal.core.target.provisional.IBundleContainer;
60
import org.eclipse.pde.internal.core.target.provisional.IResolvedBundle;
61
import org.eclipse.pde.internal.core.target.provisional.ITargetDefinition;
62
import org.eclipse.pde.internal.core.target.provisional.ITargetPlatformService;
58
import org.eclipse.swt.SWT;
63
import org.eclipse.swt.SWT;
59
import org.eclipse.swt.events.ModifyEvent;
64
import org.eclipse.swt.events.ModifyEvent;
60
import org.eclipse.swt.events.ModifyListener;
65
import org.eclipse.swt.events.ModifyListener;
Lines 172-198 Link Here
172
			monitor.beginTask(WizardMessages.ApiProfileWizardPage_0, 10);
177
			monitor.beginTask(WizardMessages.ApiProfileWizardPage_0, 10);
173
			Path path = new Path(location);
178
			Path path = new Path(location);
174
			File plugins = path.append("plugins").toFile(); //$NON-NLS-1$
179
			File plugins = path.append("plugins").toFile(); //$NON-NLS-1$
175
			if (!plugins.exists() || !plugins.isDirectory()) {
180
			ITargetPlatformService service = (ITargetPlatformService) ApiUIPlugin.getDefault().acquireService(ITargetPlatformService.class.getName());
176
				plugins = path.toFile();
181
			IBundleContainer container = service.newProfileContainer(path.toOSString(), null);
177
			}
182
			// treat as an installation, if that fails, try plug-ins directory
178
			File[] files = scanLocation(plugins);
183
			ITargetDefinition definition = service.newTarget();
184
			SubProgressMonitor subMonitor = new SubProgressMonitor(monitor, 1);
185
			container.resolve(definition, subMonitor);
186
			subMonitor.done();
179
			monitor.worked(1);
187
			monitor.worked(1);
180
			fProfile = ApiModelFactory.newApiBaseline(name);
188
			IResolvedBundle[] bundles = container.getBundles();
181
			SubProgressMonitor subMonitor = new SubProgressMonitor(monitor, 8);
182
			subMonitor.beginTask(IApiToolsConstants.EMPTY_STRING, files.length); 
183
			List components = new ArrayList();
189
			List components = new ArrayList();
184
			for (int i = 0; i < files.length; i++) {
190
			fProfile = ApiModelFactory.newApiBaseline(name);
185
				try {
191
			if (bundles.length > 0) {
186
					IApiComponent component = ApiModelFactory.newApiComponent(fProfile, files[i].getPath());
192
				// an installation
187
					if (component != null) {
193
				subMonitor = new SubProgressMonitor(monitor, 8);
188
						components.add(component);
194
				subMonitor.beginTask(IApiToolsConstants.EMPTY_STRING, bundles.length); 
195
				for (int i = 0; i < bundles.length; i++) {
196
					try {
197
						if (!bundles[i].isSourceBundle()) {
198
							IApiComponent component = ApiModelFactory.newApiComponent(fProfile, URIUtil.toFile(bundles[i].getBundleInfo().getLocation()).getAbsolutePath());
199
							if (component != null) {
200
								components.add(component);
201
							}
202
						}
203
					} catch (CoreException e) {
204
						throw new InvocationTargetException(e);
189
					}
205
					}
190
				} catch (CoreException e) {
206
					subMonitor.worked(1);
191
					throw new InvocationTargetException(e);
207
				}
208
				subMonitor.done();
209
			} else {
210
				// scan directory
211
				if (!plugins.exists() || !plugins.isDirectory()) {
212
					plugins = path.toFile();
213
				}
214
				File[] files = scanLocation(plugins);
215
				monitor.worked(1);
216
				subMonitor = new SubProgressMonitor(monitor, 7);
217
				subMonitor.beginTask(IApiToolsConstants.EMPTY_STRING, files.length); 
218
				for (int i = 0; i < files.length; i++) {
219
					try {
220
						IApiComponent component = ApiModelFactory.newApiComponent(fProfile, files[i].getPath());
221
						if (component != null) {
222
							components.add(component);
223
						}
224
					} catch (CoreException e) {
225
						throw new InvocationTargetException(e);
226
					}
227
					subMonitor.worked(1);
192
				}
228
				}
193
				subMonitor.worked(1);
229
				subMonitor.done();
194
			}
230
			}
195
			subMonitor.done();
196
			try {
231
			try {
197
				fProfile.addApiComponents((IApiComponent[]) components.toArray(new IApiComponent[components.size()]));
232
				fProfile.addApiComponents((IApiComponent[]) components.toArray(new IApiComponent[components.size()]));
198
			} catch (CoreException e) {
233
			} catch (CoreException e) {
(-)src/org/eclipse/pde/api/tools/ui/internal/ApiUIPlugin.java (+26 lines)
Lines 30-35 Link Here
30
import org.eclipse.ui.plugin.AbstractUIPlugin;
30
import org.eclipse.ui.plugin.AbstractUIPlugin;
31
import org.osgi.framework.Bundle;
31
import org.osgi.framework.Bundle;
32
import org.osgi.framework.BundleContext;
32
import org.osgi.framework.BundleContext;
33
import org.osgi.framework.ServiceReference;
33
34
34
/**
35
/**
35
 * API tooling UI plug-in class.
36
 * API tooling UI plug-in class.
Lines 72-77 Link Here
72
	private static Map fCompositeImages = new HashMap();
73
	private static Map fCompositeImages = new HashMap();
73
	
74
	
74
	/**
75
	/**
76
	 * This bundle's OSGi context
77
	 */
78
	private BundleContext fBundleContext = null;
79
	
80
	/**
75
	 * Constructor
81
	 * Constructor
76
	 */
82
	 */
77
	public ApiUIPlugin() {
83
	public ApiUIPlugin() {
Lines 273-280 Link Here
273
			image.dispose();
279
			image.dispose();
274
		}
280
		}
275
		fCompositeImages.clear();
281
		fCompositeImages.clear();
282
		fBundleContext = null;
276
		super.stop(context);
283
		super.stop(context);
277
	}
284
	}
278
	
285
	
286
	/* (non-Javadoc)
287
	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
288
	 */
289
	public void start(BundleContext context) throws Exception {
290
		fBundleContext = context;
291
		super.start(context);
292
	}
279
	
293
	
294
	/**
295
	 * Returns a service with the specified name or <code>null</code> if none.
296
	 * 
297
	 * @param serviceName name of service
298
	 * @return service object or <code>null</code> if none
299
	 */
300
	public Object acquireService(String serviceName) {
301
		ServiceReference reference = fBundleContext.getServiceReference(serviceName);
302
		if (reference == null)
303
			return null;
304
		return fBundleContext.getService(reference);
305
	}
280
}
306
}

Return to bug 239493