org.apache.tools.ant.taskdefs.optional.extension
public final class Specification extends Object
Utility class that represents either an available "Optional Package" (formerly known as "Standard Extension") as described in the manifest of a JAR file, or the requirement for such an optional package.
For more information about optional packages, see the document
Optional Package Versioning in the documentation bundle for your
Java2 Standard Edition package, in file
guide/extensions/versioning.html
.
Field Summary | |
---|---|
static Compatibility | COMPATIBLE
Enum indicating that extension is compatible with other Package
Specification. |
static Name | IMPLEMENTATION_TITLE
Manifest Attribute Name object for IMPLEMENTATION_TITLE. |
static Name | IMPLEMENTATION_VENDOR
Manifest Attribute Name object for IMPLEMENTATION_VENDOR. |
static Name | IMPLEMENTATION_VERSION
Manifest Attribute Name object for IMPLEMENTATION_VERSION. |
static Compatibility | INCOMPATIBLE
This enum indicates that an extension is incompatible with
other Package Specification in ways other than other enums
indicate. |
static Compatibility | REQUIRE_IMPLEMENTATION_CHANGE
Enum indicating that extension requires an upgrade
of implementation to be compatible with other Package Specification. |
static Compatibility | REQUIRE_SPECIFICATION_UPGRADE
Enum indicating that extension requires an upgrade
of specification to be compatible with other Package Specification. |
static Compatibility | REQUIRE_VENDOR_SWITCH
Enum indicating that extension requires a vendor
switch to be compatible with other Package Specification. |
static Name | SPECIFICATION_TITLE
Manifest Attribute Name object for SPECIFICATION_TITLE. |
static Name | SPECIFICATION_VENDOR
Manifest Attribute Name object for SPECIFICATION_VENDOR. |
static Name | SPECIFICATION_VERSION
Manifest Attribute Name object for SPECIFICATION_VERSION. |
Constructor Summary | |
---|---|
Specification(String specificationTitle, String specificationVersion, String specificationVendor, String implementationTitle, String implementationVersion, String implementationVendor)
The constructor to create Package Specification object.
| |
Specification(String specificationTitle, String specificationVersion, String specificationVendor, String implementationTitle, String implementationVersion, String implementationVendor, String[] sections)
The constructor to create Package Specification object.
|
Method Summary | |
---|---|
Compatibility | getCompatibilityWith(Specification other)
Return a Compatibility enum indicating the relationship of this
Package Specification with the specified
Extension .
|
String | getImplementationTitle()
Get the title of the specification.
|
String | getImplementationVendor()
Get the vendor of the extensions implementation.
|
String | getImplementationVersion()
Get the version of the implementation.
|
String[] | getSections()
Return an array containing sections to which specification applies
or null if relevent to no sections.
|
static Specification[] | getSpecifications(Manifest manifest)
Return an array of Package Specification objects.
|
String | getSpecificationTitle()
Get the title of the specification.
|
String | getSpecificationVendor()
Get the vendor of the specification.
|
DeweyDecimal | getSpecificationVersion()
Get the version of the specification.
|
boolean | isCompatibleWith(Specification other)
Return true if the specified package
is satisfied by this Specification . |
String | toString()
Return a String representation of this object.
|
Parameters: specificationTitle the name of specification. specificationVersion the specification Version. specificationVendor the specification Vendor. implementationTitle the title of implementation. implementationVersion the implementation Version. implementationVendor the implementation Vendor.
Parameters: specificationTitle the name of specification. specificationVersion the specification Version. specificationVendor the specification Vendor. implementationTitle the title of implementation. implementationVersion the implementation Version. implementationVendor the implementation Vendor. sections the sections/packages that Specification applies to.
Package Specification
with the specified
Extension
.
Parameters: other the other specification
Returns: the enum indicating the compatibility (or lack thereof) of specifed Package Specification
Returns: the title of the specification.
Returns: the vendor of the extensions implementation.
Returns: the version of the implementation.
Returns: an array containing sections to which specification applies or null if relevent to no sections.
Package Specification
objects.
If there are no such optional packages, a zero-length array is returned.
Parameters: manifest Manifest to be parsed
Returns: the Package Specifications extensions in specified manifest
Throws: ParseException if the attributes of the specifications cannot be parsed according to their expected formats.
Returns: the title of speciication
Returns: the vendor of the specification.
Returns: the version of the specification.
true
if the specified package
is satisfied by this Specification
. Otherwise, return
false
.
Parameters: other the specification
Returns: true if the specification is compatible with this specification
Returns: string representation of object.