# Analysis (ARX GUI Documentation)

org.deidentifier.arx.gui.view.impl.common.async

## Class Analysis

- java.lang.Object
- - org.deidentifier.arx.gui.view.impl.common.async.Analysis

-     public abstract class Analysis
      extends java.lang.Object

  A generic interface for analyses that are performed asynchronously.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Analysis()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract int` | `getProgress()` May return a progress value in [0,100] or 0.
    `abstract void` | `onError()` Perform error handling.
    `abstract void` | `onFinish()` Perform finish.
    `abstract void` | `onInterrupt()` Perform interrupt handling.
    `abstract void` | `run()` Implement the analysis here.
    `abstract void` | `stop()` Called to stop the analysis.

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

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

- - ### Constructor Detail

    - #### Analysis

          public Analysis()

  - ### Method Detail

    - #### getProgress

          public abstract int getProgress()

      May return a progress value in [0,100] or 0.

    - #### onError

          public abstract void onError()

      Perform error handling.

    - #### onFinish

          public abstract void onFinish()

      Perform finish.

    - #### onInterrupt

          public abstract void onInterrupt()

      Perform interrupt handling.

    - #### run

          public abstract void run()
                            throws java.lang.InterruptedException

      Implement the analysis here.
      Throws:
        `java.lang.InterruptedException`

    - #### stop

          public abstract void stop()

      Called to stop the analysis.