Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move product to common #712

Open
wants to merge 29 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
a585769
add wad support
Jan 21, 2004
8bb0d90
update copyrights
Jan 22, 2004
0572392
reorg IProduct and IBundleGroup to be more generic
Jan 26, 2004
01c116d
fix some javadoc
Jan 26, 2004
c997cbf
add IProductProvider, update Javadoc and the schema definition.
Feb 16, 2004
1cf0931
*** empty log message ***
Apr 2, 2004
5f824a6
Javadoc updates and a few todos
Apr 12, 2004
2e3789a
Javadoc updates and a few todos
Apr 12, 2004
4abc58a
Reformat Equinox code according to the Core formatter settings
Apr 16, 2004
07f11a1
Reformat Equinox code according to the Core formatter settings
Apr 16, 2004
9844ab1
Bug 64253 [API] add IProduct.getDefiningBundle()
May 27, 2004
1d46e0d
javadoc fix
May 27, 2004
2bfc2b7
Convert copyrights from CPL to EPL
Feb 21, 2005
b60376f
Convert copyrights from CPL to EPL
Feb 21, 2005
ee4e6af
fixed typos in javadoc
Jun 8, 2005
6123ed6
updated copyrights
Apr 4, 2006
97dfaa0
updated copyrights
Apr 4, 2006
0c4964a
Updated copyrights.
May 10, 2006
6e56a19
Updated copyrights.
May 10, 2006
9b83714
Removed @see to type that may not be present
Aug 16, 2007
28e548d
copyright update
Mar 4, 2009
7d21c7f
Bug 462035 - Solve whitespace issues in eclipse.runtime plug-ins
SimonScholz Mar 16, 2015
dd95c0a
Bug 462035 - Solve whitespace issues in eclipse.runtime plug-ins
SimonScholz Mar 16, 2015
b0c7a5b
Bug 535802 - Update license to EPL-2.0 in our source files
vogella Aug 17, 2018
eabb303
Bug 535802 - Update license to EPL-2.0 in our source files
vogella Aug 17, 2018
bdd4181
Move IProduct to commons
laeubi Dec 4, 2024
4e5c3bf
add IProductProvider, update Javadoc and the schema definition.
Feb 16, 2004
4e2b8b4
Move IProductProvider from platfrom > common
laeubi Dec 4, 2024
2d3f1e1
Add API filter for moved files / bump version
laeubi Dec 4, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions bundles/org.eclipse.equinox.common/.settings/.api_filters
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<component id="org.eclipse.equinox.common" version="2">
<resource path="src/org/eclipse/core/runtime/IProduct.java" type="org.eclipse.core.runtime.IProduct">
<filter id="1108344834">
<message_arguments>
<message_argument value="3.0"/>
<message_argument value="3.20"/>
<message_argument value="org.eclipse.core.runtime.IProduct"/>
</message_arguments>
</filter>
</resource>
<resource path="src/org/eclipse/core/runtime/IProductProvider.java" type="org.eclipse.core.runtime.IProductProvider">
<filter id="1108344834">
<message_arguments>
<message_argument value="3.0"/>
<message_argument value="3.20"/>
<message_argument value="org.eclipse.core.runtime.IProductProvider"/>
</message_arguments>
</filter>
</resource>
</component>
2 changes: 1 addition & 1 deletion bundles/org.eclipse.equinox.common/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.equinox.common; singleton:=true
Bundle-Version: 3.19.200.qualifier
Bundle-Version: 3.20.0.qualifier
Bundle-Localization: plugin
Export-Package: org.eclipse.core.internal.boot;x-friends:="org.eclipse.core.resources,org.eclipse.pde.build",
org.eclipse.core.internal.runtime;common=split;mandatory:=common;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
/*******************************************************************************
* Copyright (c) 2004, 2007 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.core.runtime;

import org.osgi.framework.Bundle;

/**
* Products are the Eclipse unit of branding. From the runtime point of view they have
* a name, id and description and identify the Eclipse application to run.
* <p>
* Since the bulk of the branding related information is
* specific to the UI, products also carry an arbitrary set of properties. The valid set of
* key-value pairs and their interpretation defined by the UI of the target environment.
* For example, in the standard Eclipse UI, <code>org.eclipse.ui.branding.IProductConstants</code>
* the properties of interest to the UI. Other clients may specify additional properties.
* </p><p>
* Products can be defined directly using extensions to the <code>org.eclipse.core.runtime.products</code>
* extension point or by using facilities provided by IProductProvider implementations.
* </p><p>
* For readers familiar with Eclipse 2.1 and earlier, products are roughly equivalent to
* <i>primary features</i>.
* </p>
*
* @see IProductProvider
* @since 3.0
*/
public interface IProduct {
/**
* Returns the application associated with this product. This information is used
* to guide the runtime as to what application extension to create and execute.
*
* @return this product's application or <code>null</code> if none
*/
public String getApplication();

/**
* Returns the name of this product. The name is typically used in the title
* bar of UI windows.
*
* @return the name of this product or <code>null</code> if none
*/
public String getName();

/**
* Returns the text description of this product
*
* @return the description of this product or <code>null</code> if none
*/
public String getDescription();

/** Returns the unique product id of this product.
*
* @return the id of this product
*/
public String getId();

/**
* Returns the property of this product with the given key.
* <code>null</code> is returned if there is no such key/value pair.
*
* @param key the name of the property to return
* @return the value associated with the given key or <code>null</code> if none
*/
public String getProperty(String key);

/**
* Returns the bundle which is responsible for the definition of this product.
* Typically this is used as a base for searching for images and other files
* that are needed in presenting the product.
*
* @return the bundle which defines this product or <code>null</code> if none
*/
public Bundle getDefiningBundle();
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/*******************************************************************************
* Copyright (c) 2004, 2006 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.core.runtime;

/**
* Product providers define products (units of branding) which have been installed in
* the current system. Typically, a configuration agent (i.e., plug-in installer) will
* define a product provider so that it can report to the system the products it has installed.
* <p>
* Products are normally defined and installed in the system using extensions to the
* <code>org.eclipse.core.runtime.products</code> extension point. In cases where
* the notion of product is defined by alternate means (e.g., primary feature), an <code>IProductProvider</code>
* can be installed in this extension point using an executable extension. The provider
* then acts as a proxy for the product extensions that represent the products installed.
* </p>
*
* @see IProduct
* @since 3.0
*/
public interface IProductProvider {
/**
* Returns the human-readable name of this product provider.
*
* @return the name of this product provider
*/
public String getName();

/**
* Returns the products provided by this provider.
*
* @return the products provided by this provider
*/
public IProduct[] getProducts();
}
Loading