/******************************************************************************* * Copyright (c) 2005, 2010 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - Initial API and implementation *******************************************************************************/ package org.eclipse.wst.server.core.internal; import org.eclipse.core.runtime.*; import org.eclipse.core.runtime.jobs.Job; import org.osgi.framework.Bundle; /** * @deprecated (since 3.3) * The support for InstallableRuntime has been moved to org.eclipse.wst.server.discovery * and is now supported through the p2 repository lookup APIs */ public class InstallableRuntime implements IInstallableRuntime { private IConfigurationElement element; public InstallableRuntime(IConfigurationElement element) { super(); this.element = element; } /** * * @return the id */ public String getId() { try { return element.getAttribute("id"); } catch (Exception e) { return null; } } public String getName() { return getPath() + ""; } public String getFeatureVersion() { try { return element.getAttribute("featureVersion"); } catch (Exception e) { // ignore } return null; } public String getFeatureId() { try { return element.getAttribute("featureId"); } catch (Exception e) { // ignore } return null; } public String getBundleId() { try { return element.getAttribute("bundleId"); } catch (Exception e) { // ignore } return null; } public String getBundleVersion() { try { return element.getAttribute("bundleVersion"); } catch (Exception e) { // ignore } return null; } public String getPath() { try { return element.getAttribute("path"); } catch (Exception e) { // ignore } return null; } public String getFromSite() { try { return element.getAttribute("featureSite"); } catch (Exception e) { // ignore } return null; } protected Bundle getBundleVersion(Bundle[] bundles, String version) { if (bundles == null) return null; int size = bundles.length; return bundles[size - 1]; } /* * @see IInstallableRuntime#install(IPath) */ public void install(final IPath path) { Job installRuntimeJob = new Job(Messages.jobInstallingRuntime) { public boolean belongsTo(Object family) { return ServerPlugin.PLUGIN_ID.equals(family); } protected IStatus run(IProgressMonitor monitor) { try { install(path, monitor); } catch (CoreException ce) { return ce.getStatus(); } return Status.OK_STATUS; } }; installRuntimeJob.schedule(); } public String toString() { return "InstallableRuntime[" + getId() + "]"; } public String getLicense(IProgressMonitor monitor) throws CoreException { // TODO Auto-generated method stub return null; } public void install(IPath path, IProgressMonitor monitor) throws CoreException { // TODO Auto-generated method stub } }