# Class Library

java.lang.Object
org.apache.tomcat.jni.Library

public final class Library extends Object
Manages loading of the Tomcat Native (tcnative) library.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static int`
  `APR_IS_DEV_VERSION`
  APR is development version flag.
  `static int`
  `APR_MAJOR_VERSION`
  APR major version.
  `static int`
  `APR_MINOR_VERSION`
  APR minor version.
  `static int`
  `APR_PATCH_VERSION`
  APR patch version.
  `static int`
  `TCN_IS_DEV_VERSION`
  TCN is development version flag.
  `static int`
  `TCN_MAJOR_VERSION`
  TCN major version.
  `static int`
  `TCN_MINOR_VERSION`
  TCN minor version.
  `static int`
  `TCN_PATCH_VERSION`
  TCN patch version.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static String`
  `aprVersionString()`
  Returns the APR version string.
  `static boolean`
  `initialize(String libraryName)`
  Setup any APR internal data structures.
  `static void`
  `terminate()`
  Destroys Tomcat Native's global APR pool.
  `static String`
  `versionString()`
  Returns the TCN version string.

  ### Methods inherited from class Object

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

- ## Field Details

  - ### TCN_MAJOR_VERSION

    public static int TCN_MAJOR_VERSION
    TCN major version.

  - ### TCN_MINOR_VERSION

    public static int TCN_MINOR_VERSION
    TCN minor version.

  - ### TCN_PATCH_VERSION

    public static int TCN_PATCH_VERSION
    TCN patch version.

  - ### TCN_IS_DEV_VERSION

    public static int TCN_IS_DEV_VERSION
    TCN is development version flag.

  - ### APR_MAJOR_VERSION

    public static int APR_MAJOR_VERSION
    APR major version.

  - ### APR_MINOR_VERSION

    public static int APR_MINOR_VERSION
    APR minor version.

  - ### APR_PATCH_VERSION

    public static int APR_PATCH_VERSION
    APR patch version.

  - ### APR_IS_DEV_VERSION

    public static int APR_IS_DEV_VERSION
    APR is development version flag.

- ## Method Details

  - ### terminate

    public static void terminate()
    Destroys Tomcat Native's global APR pool. This has to be the last call to TCN library. This will destroy any APR root pools that have not been explicitly destroyed.

  - ### versionString

    public static String versionString()
    Returns the TCN version string.
    Returns:
      the TCN version string

  - ### aprVersionString

    public static String aprVersionString()
    Returns the APR version string.
    Returns:
      the APR version string

  - ### initialize

    public static boolean initialize(String libraryName) throws Exception
    Setup any APR internal data structures. This MUST be the first function called for any APR library.
    Parameters:
      `libraryName` - the name of the library to load
    Returns:
      `true` if the native code was initialized successfully otherwise `false`
    Throws:
      `Exception` - if a problem occurred during initialization