Package org.apache.catalina.util

# Class Extension

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

public final class Extension 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. 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
  Constructor
  Description
  `Extension()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getExtensionName()`
  `String`
  `getImplementationURL()`
  `String`
  `getImplementationVendor()`
  `String`
  `getImplementationVendorId()`
  `String`
  `getImplementationVersion()`
  `String`
  `getSpecificationVendor()`
  `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(String extensionName)`
  `void`
  `setFulfilled(boolean fulfilled)`
  `void`
  `setImplementationURL(String implementationURL)`
  `void`
  `setImplementationVendor(String implementationVendor)`
  `void`
  `setImplementationVendorId(String implementationVendorId)`
  `void`
  `setImplementationVersion(String implementationVersion)`
  `void`
  `setSpecificationVendor(String specificationVendor)`
  `void`
  `setSpecificationVersion(String specificationVersion)`
  `String`
  `toString()`

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

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

- ## Constructor Details

  - ### Extension

    public Extension()

- ## Method Details

  - ### getExtensionName

    public String getExtensionName()

  - ### setExtensionName

    public void setExtensionName(String extensionName)

  - ### getImplementationURL

    public String getImplementationURL()

  - ### setImplementationURL

    public void setImplementationURL(String implementationURL)

  - ### getImplementationVendor

    public String getImplementationVendor()

  - ### setImplementationVendor

    public void setImplementationVendor(String implementationVendor)

  - ### getImplementationVendorId

    public String getImplementationVendorId()

  - ### setImplementationVendorId

    public void setImplementationVendorId(String implementationVendorId)

  - ### getImplementationVersion

    public String getImplementationVersion()

  - ### setImplementationVersion

    public void setImplementationVersion(String implementationVersion)

  - ### getSpecificationVendor

    public String getSpecificationVendor()

  - ### setSpecificationVendor

    public void setSpecificationVendor(String specificationVendor)

  - ### getSpecificationVersion

    public String getSpecificationVersion()

  - ### setSpecificationVersion

    public void setSpecificationVersion(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 String toString()
    Overrides:
      `toString` in class `Object`