ApplicationRegistry (install4j API)
Description: declaration: package: com.install4j.api, class: ApplicationRegistry

# Class ApplicationRegistry

java.lang.Object
com.install4j.api.ApplicationRegistry

public class ApplicationRegistry extends Object
The class provides information about applications installed with install4j.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static interface`
  `ApplicationRegistry.ApplicationInfo`
  Provides information about an application installed by install4j.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ApplicationRegistry()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static boolean`
  `checkApplicationId(File dir)`
  Checks if the application can be safely installed into the given directory.
  `static ApplicationRegistry.ApplicationInfo[]`
  `getAddOnApplicationInfoByDir(File dir)`
  Checks if the specified directory contains an application installed by install4j and retrieves information about the add-on installers in it.
  `static ApplicationRegistry.ApplicationInfo`
  `getApplicationInfoByDir(File dir)`
  Checks if the specified directory contains an application installed by install4j and retrieves information about it.
  `static ApplicationRegistry.ApplicationInfo[]`
  `getApplicationInfoById(String id)`
  Retrieves information about an application installed by install4j via its application id.
  `static boolean`
  `isUpdateDirectory(File dir)`
  Checks if this application is already installed in the given directory.

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### ApplicationRegistry

    public ApplicationRegistry()

- ## Method Details

  - ### checkApplicationId

    public static boolean checkApplicationId(File dir)
    Checks if the application can be safely installed into the given directory. If this is an add-on installer, it returns true if the directory contains the target app.
    Parameters:
      `dir` - the directory to be checked
    Returns:
      true if safe

  - ### isUpdateDirectory

    public static boolean isUpdateDirectory(File dir)
    Checks if this application is already installed in the given directory. This is the case if the application ID of the current installer is equal to the application ID of the already installed application.

    Note that if you pass the installation directory of the current installer to this method, the return value will change to `true` after the "Install Files" action has run. To check if the current installer will perform an update installation, use `InstallerContext.isUpdateInstallation()` which returns a consistent value over the entire lifetime of the installer.

    Parameters:
      `dir` - the directory to be checked
    Returns:
      true if an update is detected
    See Also:
      - `InstallerContext.isUpdateInstallation()`

  - ### getApplicationInfoById

    public static ApplicationRegistry.ApplicationInfo[] getApplicationInfoById(String id)
    Retrieves information about an application installed by install4j via its application id.
    Parameters:
      `id` - the application id
    Returns:
      an array of ApplicationInfo objects containing all installations of the application with this id. The newest installation is the first element. Empty array if there are no installations.

  - ### getApplicationInfoByDir

    public static ApplicationRegistry.ApplicationInfo getApplicationInfoByDir(File dir)
    Checks if the specified directory contains an application installed by install4j and retrieves information about it.
    Parameters:
      `dir` - the base directory to check
    Returns:
      an ApplicationInfo object if the directory contains an application installed with install4j, `null` otherwise.

  - ### getAddOnApplicationInfoByDir

    public static ApplicationRegistry.ApplicationInfo[] getAddOnApplicationInfoByDir(File dir)
    Checks if the specified directory contains an application installed by install4j and retrieves information about the add-on installers in it.
    Parameters:
      `dir` - the base directory to check
    Returns:
      an array of ApplicationInfo objects if the directory contains an application installed with install4j, `null` otherwise. The array will be empty if there are no add-ons installed.