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

# Class ProcessInfo

java.lang.Object
com.install4j.api.ProcessInfo

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `MacProcesses.Info, WinProcesses.Info`

public abstract class ProcessInfo extends Object implements Serializable
Represents a running process on Windows and macOS.

See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `ProcessInfo(int processId, String moduleName)`
  Called by implementations.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `equals(Object o)`
  `String`
  `getModuleName()`
  Retrieves the full executable path of the process.
  `int`
  `getProcessId()`
  Retrieves the process id.
  `abstract String`
  `getWindowTitle()`
  Get the title of one of the visible top-level windows of this process.
  `int`
  `hashCode()`
  `String`
  `toString()`

  ### Methods inherited from class Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### ProcessInfo

    protected ProcessInfo(int processId, String moduleName)
    Called by implementations.

- ## Method Details

  - ### getModuleName

    public String getModuleName()
    Retrieves the full executable path of the process.
    Returns:
      the executable path

  - ### getProcessId

    public int getProcessId()
    Retrieves the process id.
    Returns:
      the process id

  - ### getWindowTitle

    public abstract String getWindowTitle()
    Get the title of one of the visible top-level windows of this process.
    Returns:
      the title

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### equals

    public boolean equals(Object o)
    Overrides:
      `equals` in class `Object`

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `Object`