Package org.apache.catalina.util

## Class Extension

- java.lang.Object
- - org.apache.catalina.util.Extension

    public final class Extension
    extends java.lang.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. It is used to support the requirements of the Servlet Specification, version 2.3, related to providing shared extensions to all webapps.

In addition, static utility methods are available to scan a manifest and return an array of either available or required optional modules documented in that manifest.

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`.

Author:
  Craig McClanahan, Justyna Horwat, Greg Murray

### Constructor Summary

Constructors
`Extension()`

### Method Summary

All Methods Instance Methods Concrete Methods
`java.lang.String` `getExtensionName()`
`java.lang.String` `getImplementationURL()`
`java.lang.String` `getImplementationVendor()`
`java.lang.String` `getImplementationVendorId()`
`java.lang.String` `getImplementationVersion()`
`java.lang.String` `getSpecificationVendor()`
`java.lang.String` `getSpecificationVersion()`
`boolean` `isCompatibleWith​(Extension required)` Return `true` if the specified `Extension` (which represents an optional package required by this application) is satisfied by this `Extension` (which represents an optional package that is already installed.
`boolean` `isFulfilled()`
`void` `setExtensionName​(java.lang.String extensionName)`
`void` `setFulfilled​(boolean fulfilled)`
`void` `setImplementationURL​(java.lang.String implementationURL)`
`void` `setImplementationVendor​(java.lang.String implementationVendor)`
`void` `setImplementationVendorId​(java.lang.String implementationVendorId)`
`void` `setImplementationVersion​(java.lang.String implementationVersion)`
`void` `setSpecificationVendor​(java.lang.String specificationVendor)`
`void` `setSpecificationVersion​(java.lang.String specificationVersion)`
`java.lang.String` `toString()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### Extension

    public Extension()

### Method Detail

#### getExtensionName

    public java.lang.String getExtensionName()

#### setExtensionName

    public void setExtensionName​(java.lang.String extensionName)

#### getImplementationURL

    public java.lang.String getImplementationURL()

#### setImplementationURL

    public void setImplementationURL​(java.lang.String implementationURL)

#### getImplementationVendor

    public java.lang.String getImplementationVendor()

#### setImplementationVendor

    public void setImplementationVendor​(java.lang.String implementationVendor)

#### getImplementationVendorId

    public java.lang.String getImplementationVendorId()

#### setImplementationVendorId

    public void setImplementationVendorId​(java.lang.String implementationVendorId)

#### getImplementationVersion

    public java.lang.String getImplementationVersion()

#### setImplementationVersion

    public void setImplementationVersion​(java.lang.String implementationVersion)

#### getSpecificationVendor

    public java.lang.String getSpecificationVendor()

#### setSpecificationVendor

    public void setSpecificationVendor​(java.lang.String specificationVendor)

#### getSpecificationVersion

    public java.lang.String getSpecificationVersion()

#### setSpecificationVersion

    public void setSpecificationVersion​(java.lang.String specificationVersion)

#### setFulfilled

    public void setFulfilled​(boolean fulfilled)

#### isFulfilled

    public boolean isFulfilled()

#### isCompatibleWith

    public boolean isCompatibleWith​(Extension required)

Return `true` if the specified `Extension` (which represents an optional package required by this application) is satisfied by this `Extension` (which represents an optional package that is already installed. Otherwise, return `false`.

Parameters:
  `required` - Extension of the required optional package
Returns:
  `true` if the extension is satisfied

#### toString

    public java.lang.String toString()

Overrides:
  `toString` in class `java.lang.Object`