## install4j API documentation

## Package com.install4j.api

This package contains classes that can be used to develop custom actions and custom screens for install4j installers.

See:
Description

Interface Summary
Context | The basic installation and uninstallation context.
CustomTaskSetup | The interface that provides information about custom tasks.
InstallationComponentSetup | The interface that provides information about installation components.
InstallerContext | The extended context provided during installation.
InstallerEventListener | The interface that must be implemented by classes who are interested in application events.
InstallerWizardContext | The installer environment context that can be used to retrieve information about the installation process and to perform screen change and file installation operations.
JVMSelector.JVMLocation | The interface providing information about a JVM.
ProgressInterface | The user notification interface during installation.
ServiceSetup | The interface that provides information about the installation of services.

Class Summary
CustomAction | The base class for all actions.
CustomScreen | All custom screens must be derived from this class.
DirectoryValidator | If you define a directory validatory derived from this class on the "Advanced tasks" tab in the install4j GUI it will be instantiated and used to modify the behavior of the the "Installation location" screen of the installer.
FileOptions | An object that contains options for the installation of a file.
InstallAction | All install actions must be derived from this class.
InstallationHandler | If you define an installation handler derived from this class on the "Advanced tasks" tab in the install4j GUI it will be instantiated and queried before the installation of each file.
InstallerEvent | This class represents an application event and is dispatched to listeners of type `InstallerEventListener`.
JVMSelector | With this class, you can retrieve the installed JVMs on Windows, Linux and Unix systems.
StartupHandler | If you define a startup handler derived from this class on the "Advanced tasks" tab in the install4j GUI it will be instantiated and queried before the installer and the uninstaller is started.
UninstallAction | All uninstall actions must be derived from this class.
Util | The class contains various utility functions to be used by custom actions and custom screens.

Exception Summary
UserCanceledException | Installation methods throw this exception if the user cancels an operation.

## Package com.install4j.api Description

This package contains classes that can be used to develop custom actions and custom screens for install4j installers.

Note: custom screens are available only in the enterprise edition of install4j.

See the API overview for general remarks on developing with the install4j framework.

### Starting points

There are 3 classes that you will want to extend directly:

- `InstallAction` for custom actions run at installation time
- `UninstallAction` for custom actions run at uninstallation time
- `CustomScreen` for custom screens in the installer GUI (enterprise edition only)