org.eclipse.rdf4j.common.platform

## Class AbstractPlatform

- java.lang.Object
- - org.eclipse.rdf4j.common.platform.AbstractPlatform

- All Implemented Interfaces:
    Platform
  Direct Known Subclasses:
    DefaultPlatform, PlatformBase, PosixPlatform, WindowsPlatform

      public abstract class AbstractPlatform
      extends Object
      implements Platform

  Utility base class for Platform implementations.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected String` | `colonReplacement`
    `protected org.slf4j.Logger` | `logger`
    `protected String` | `separatorReplacement`
    `protected String` | `whitespaceReplacement`

    - ### Fields inherited from interface org.eclipse.rdf4j.common.platform.Platform

      `APPDATA_BASEDIR_PROPERTY, OLD_DATADIR_PROPERTY`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractPlatform()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `File` | `getApplicationDataDir()` Returns the directory in which Aduna applications can store their application-dependent data, returns 'getOSApplicationDataDir' unless the system property "aduna.platform.applicationdata.dir" has been set.
    `File` | `getApplicationDataDir(String applicationName)` Returns the directory in which a specific application can store all its application-dependent data.
    `File` | `getOSApplicationDataDir(String applicationName)` Returns the operating system dependent application data directory.
    `String` | `getRelativeApplicationDataDir(String applicationName)` Get the directory relative to getApplicationDataDir() for the specified application.
    `String` | `getRelativeApplicationDataDir(String applicationName, boolean caseSensitive, boolean replaceWhitespace, boolean replaceColon)` Get the relative name of the application directory
    `File` | `getUserHome()` Returns the directory for the current user.

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

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

    - ### Methods inherited from interface org.eclipse.rdf4j.common.platform.Platform

      `dataDirPreserveCase, dataDirReplaceColon, dataDirReplaceWhitespace, getName, getOSApplicationDataDir`

- - ### Field Detail

    - #### logger

          protected final org.slf4j.Logger logger

    - #### whitespaceReplacement

          protected String whitespaceReplacement

    - #### separatorReplacement

          protected String separatorReplacement

    - #### colonReplacement

          protected String colonReplacement

  - ### Constructor Detail

    - #### AbstractPlatform

          public AbstractPlatform()

  - ### Method Detail

    - #### getUserHome

          public File getUserHome()

      Description copied from interface: `Platform`
      Returns the directory for the current user.
      Specified by:
        `getUserHome` in interface `Platform`
      Returns:
        the current user home directory

    - #### getApplicationDataDir

          public final File getApplicationDataDir()

      Description copied from interface: `Platform`
      Returns the directory in which Aduna applications can store their application-dependent data, returns 'getOSApplicationDataDir' unless the system property "aduna.platform.applicationdata.dir" has been set.
      Specified by:
        `getApplicationDataDir` in interface `Platform`
      Returns:
        the Aduna-specific application data directory

    - #### getApplicationDataDir

          public final File getApplicationDataDir(String applicationName)

      Description copied from interface: `Platform`
      Returns the directory in which a specific application can store all its application-dependent data. This will be a sub-directory of the directory returned by the no-argument version of this method. Note: the directory might not exist yet.
      Specified by:
        `getApplicationDataDir` in interface `Platform`
      Parameters:
        `applicationName` - the name of the application for which to determine the directory
      Returns:
        an application-specific data directory
      See Also:
        `Platform.getApplicationDataDir()`

    - #### getOSApplicationDataDir

          public final File getOSApplicationDataDir(String applicationName)

      Description copied from interface: `Platform`
      Returns the operating system dependent application data directory. This will be a sub-directory of the directory returned by the no-argument version of this method.
      Specified by:
        `getOSApplicationDataDir` in interface `Platform`
      Parameters:
        `applicationName` - name of the application
      Returns:
        application directory

    - #### getRelativeApplicationDataDir

          public String getRelativeApplicationDataDir(String applicationName)

      Description copied from interface: `Platform`
      Get the directory relative to getApplicationDataDir() for the specified application.
      Specified by:
        `getRelativeApplicationDataDir` in interface `Platform`
      Parameters:
        `applicationName` - the name of the application
      Returns:
        the directory relative to getApplicationDataDir() for the specified application

    - #### getRelativeApplicationDataDir

          public String getRelativeApplicationDataDir(String applicationName,
                                                      boolean caseSensitive,
                                                      boolean replaceWhitespace,
                                                      boolean replaceColon)

      Get the relative name of the application directory
      Parameters:
        `applicationName` - name of the application
        `caseSensitive` - true when case-sensitive
        `replaceWhitespace` - true when whitespace is to be replaced
        `replaceColon` - true when colon needs to be replaced
      Returns:
        name of the application directory

Copyright © 2015-2020 Eclipse Foundation. All Rights Reserved.