Package com.saxonica.config

## Class JavaPlatformPE

- java.lang.Object
- - net.sf.saxon.java.JavaPlatform
  - - com.saxonica.config.JavaPlatformPE

- All Implemented Interfaces:
    `Platform`
  Direct Known Subclasses:
    `JavaPlatformEE`

      public class JavaPlatformPE
      extends JavaPlatform

  Implementation of the Platform class containing methods specific to the Java platform (as distinct from .NET) for Saxon-PE and Saxon-EE. This is a singleton class with no instance data.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `JavaPlatformPE()` | The constructor is called during the static initialization of the Configuration

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addFunctionLibraries​(FunctionLibraryList list, Configuration config, int hostLanguage)` | Add the platform-specific function libraries to a function library list.
    `boolean` | `hasICUCollator()` | Is an ICU collator loaded?
    `boolean` | `hasICUNumberer()` | Is an ICU numberer loaded?
    `void` | `initialize​(Configuration config)` | Perform platform-specific initialization of the configuration
    `StringCollator` | `makeUcaCollator​(java.lang.String uri, Configuration config)` | If available, make a collation using the ICU-J Library
    `void` | `registerAllBuiltInObjectModels​(Configuration config)` | Register all the external object models that are provided as standard with the relevant edition of Saxon for this Configuration

    - ### Methods inherited from class net.sf.saxon.java.JavaPlatform

      `canReturnCollationKeys, compileRegularExpression, getCollationKey, getExternalObjectType, getInstallationDirectory, getParserSource, getPlatformSuffix, getPlatformVersion, isDotNet, isJava, JAXPStaticContextCheck, loadParser, loadParserForXmlFragments, makeCollation, makeGeneratedClassLoader, makeStandardModuleURIResolver, setDefaultSAXParserFactory`

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

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

- - ### Constructor Detail

    - #### JavaPlatformPE

          public JavaPlatformPE()

      The constructor is called during the static initialization of the Configuration

  - ### Method Detail

    - #### hasICUCollator

          public boolean hasICUCollator()

      Is an ICU collator loaded?
      Specified by:
        `hasICUCollator` in interface `Platform`
      Overrides:
        `hasICUCollator` in class `JavaPlatform`
      Returns:
        true if ICU collations appear loaded

    - #### hasICUNumberer

          public boolean hasICUNumberer()

      Is an ICU numberer loaded?
      Specified by:
        `hasICUNumberer` in interface `Platform`
      Overrides:
        `hasICUNumberer` in class `JavaPlatform`
      Returns:
        true if ICU numberers appear loaded

    - #### initialize

          public void initialize​(Configuration config)

      Perform platform-specific initialization of the configuration
      Specified by:
        `initialize` in interface `Platform`
      Overrides:
        `initialize` in class `JavaPlatform`
      Parameters:
        `config` - the Saxon Configuration

    - #### addFunctionLibraries

          public void addFunctionLibraries​(FunctionLibraryList list,
                                           Configuration config,
                                           int hostLanguage)

      Add the platform-specific function libraries to a function library list.
      Overrides:
        `addFunctionLibraries` in class `JavaPlatform`
      Parameters:
        `list` - the function library list that is to be extended
        `config` - the Configuration
        `hostLanguage` - the host language, for example Configuration.XQUERY

    - #### registerAllBuiltInObjectModels

          public void registerAllBuiltInObjectModels​(Configuration config)

      Register all the external object models that are provided as standard with the relevant edition of Saxon for this Configuration
      Specified by:
        `registerAllBuiltInObjectModels` in interface `Platform`
      Overrides:
        `registerAllBuiltInObjectModels` in class `JavaPlatform`
      Parameters:
        `config` - the Saxon configuration
      Since:
        9.3

    - #### makeUcaCollator

          public StringCollator makeUcaCollator​(java.lang.String uri,
                                                Configuration config)
                                         throws XPathException

      If available, make a collation using the ICU-J Library
      Specified by:
        `makeUcaCollator` in interface `Platform`
      Overrides:
        `makeUcaCollator` in class `JavaPlatform`
      Parameters:
        `uri` - the collation URI (which will always be a UCA collation URI as defined in XSLT 3.0)
        `config` - the Saxon configuration
      Returns:
        the collation, or null if not available
      Throws:
        `XPathException` - if the URI is malformed in some way