|
Eclipse Platform Release 3.3 |
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||
IPluginPrerequisite are directed to the headers associated with the relevant bundle.
In particular, the Require-Bundle header contains all available information
about the prerequisites of a plug-in. Having retrieved the header, the ManifestElement
helper class can be used to parse the value and discover the individual
prerequisite plug-ins. The various header attributes are defined in Constants.
For example,
String header = bundle.getHeaders().get(Constants.REQUIRE_BUNDLE);
ManifestElement[] elements = ManifestElement.parseHeader(
Constants.REQUIRE_BUNDLE, header);
if (elements == null)
return;
elements[0].getValue(); // the prerequisite plug-in id
elements[0].getAttribute(Constants.BUNDLE_VERSION_ATTRIBUTE); // the prerequisite plug-in version
...
See IPluginDescriptor for information on the relationship between plug-in
descriptors and bundles.
This interface must only be used by plug-ins which explicitly require the org.eclipse.core.runtime.compatibility plug-in.
A prerequisite entry declared by a plug-in. The declaration causes classes defined by the prerequisite plug-in to be visible to the plug-in that declared the dependency.
This interface is not intended to be implemented by developers.
IPluginDescriptor.getPluginPrerequisites()| Method Summary | |
|---|---|
PluginVersionIdentifier |
getResolvedVersionIdentifier()
Deprecated. Callers of this method should interrogate the current State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
BundleDescription prereq = spec.getSupplier();
|
String |
getUniqueIdentifier()
Deprecated. Given a manifest element equivalent of a plug-in prerequisite (see the class comment), this method is replaced by:
element.getValue();
|
PluginVersionIdentifier |
getVersionIdentifier()
Deprecated. Callers of this method should interrogate the current State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
Version reqMinVersion = spec.getVersionRange().getMinimum();
|
boolean |
isExported()
Deprecated. Given a manifest element equivalent of a plug-in prerequisite (see the class comment), this method is replaced by:
element.getAttribute(Constants.REPROVIDE_ATTRIBUTE);
|
boolean |
isMatchedAsCompatible()
Deprecated. Callers of this method should interrogate the current State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (!minimum.isInclusive() || maximum.isInclusive())
return false;
else if (minimum.getMajorComponent() == maximum.getMajorComponent() - 1)
return true;
return false;
|
boolean |
isMatchedAsEquivalent()
Deprecated. Callers of this method should interrogate the current State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (!minimum.isInclusive() || maximum.isInclusive())
return false;
else if (minimum.getMajorComponent() == maximum.getMajorComponent() - 1)
return false;
else if (minimum.getMajorComponent() != maximum.getMajorComponent())
return false;
else if (minimum.getMinorComponent() == maximum.getMinorComponent() - 1)
return true;
return false;
|
boolean |
isMatchedAsExact()
Deprecated. Callers of this method should interrogate the current State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (!minimum.isInclusive() || maximum.isInclusive())
return false;
else if (minimum.getMajorComponent() == maximum.getMajorComponent() - 1)
return false;
else if (minimum.getMajorComponent() != maximum.getMajorComponent())
return false;
else if (minimum.getMinorComponent() == maximum.getMinorComponent() - 1)
return true;
return false;
|
boolean |
isMatchedAsGreaterOrEqual()
Deprecated. Callers of this method should interrogate the current State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (maximum.equals(Version.maxVersion))
return true;
return false;
|
boolean |
isMatchedAsPerfect()
Deprecated. Callers of this method should interrogate the current State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (minimum.equals(maximum))
return true;
return false;
|
boolean |
isOptional()
Deprecated. Given a manifest element equivalent of a plug-in prerequisite (see the class comment), this method is replaced by:
"true".equals(element.getAttribute(Constants.OPTIONAL_ATTRIBUTE);
|
| Method Detail |
public PluginVersionIdentifier getResolvedVersionIdentifier()
State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
BundleDescription prereq = spec.getSupplier();
public String getUniqueIdentifier()
element.getValue();
public PluginVersionIdentifier getVersionIdentifier()
State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
Version reqMinVersion = spec.getVersionRange().getMinimum();
null if none.
null if
none was specifiedpublic boolean isExported()
element.getAttribute(Constants.REPROVIDE_ATTRIBUTE);
true if this prerequisite plug-in is exposed,
false otherwisepublic boolean isMatchedAsGreaterOrEqual()
State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (maximum.equals(Version.maxVersion))
return true;
return false;
true if greater or equal match is allowed,
false otherwise.public boolean isMatchedAsCompatible()
State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (!minimum.isInclusive() || maximum.isInclusive())
return false;
else if (minimum.getMajorComponent() == maximum.getMajorComponent() - 1)
return true;
return false;
true if compatible match is allowed,
false if exact match is required.public boolean isMatchedAsEquivalent()
State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (!minimum.isInclusive() || maximum.isInclusive())
return false;
else if (minimum.getMajorComponent() == maximum.getMajorComponent() - 1)
return false;
else if (minimum.getMajorComponent() != maximum.getMajorComponent())
return false;
else if (minimum.getMinorComponent() == maximum.getMinorComponent() - 1)
return true;
return false;
true if only equivalent identifier match
satisfies this dependency, false otherwise.public boolean isMatchedAsPerfect()
State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (minimum.equals(maximum))
return true;
return false;
true if only perfectly equal
identifier match satisfies this dependency,
false otherwise.public boolean isMatchedAsExact()
State
of the platform. For example,
State state = Platform.getPlatformAdmin().getState();
BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
VersionRange versionRange = spec.getVersionRange();
if (versionRange == null || versionRange.getMinimum() == null)
return false;
Version minimum = versionRange.getMinimum();
Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
if (!minimum.isInclusive() || maximum.isInclusive())
return false;
else if (minimum.getMajorComponent() == maximum.getMajorComponent() - 1)
return false;
else if (minimum.getMajorComponent() != maximum.getMajorComponent())
return false;
else if (minimum.getMinorComponent() == maximum.getMinorComponent() - 1)
return true;
return false;
true if only exact identifier match
satisfies this dependency, false if compatible
plug-in will satisfy this dependency.public boolean isOptional()
"true".equals(element.getAttribute(Constants.OPTIONAL_ATTRIBUTE);
true if this prerequisite is optional, false otherwise
|
Eclipse Platform Release 3.3 |
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||
Guidelines for using Eclipse APIs.
Copyright (c) IBM Corp. and others 2000, 2007. All rights reserved.