IcedTea-Web NetX

## net.sourceforge.jnlp.runtime
Class ApplicationInstance

    java.lang.Object
      net.sourceforge.jnlp.runtime.ApplicationInstance

Direct Known Subclasses:
  AppletInstance

    public class ApplicationInstance

extends java.lang.Object

Represents a running instance of an application described in a JNLPFile. This class provides a way to track the application's resources and destroy the application.

Constructor Summary
`ApplicationInstance(JNLPFile file, java.lang.ThreadGroup group, java.lang.ClassLoader loader)` Create an application instance for the file.

Method Summary
`void` `addApplicationListener(ApplicationListener listener)` Add an Application listener
`protected void` `addWindow(java.awt.Window window)` Adds a window that this application opened.
`void` `destroy()` Stop the application and destroy its resources.
`void` `finalize()` Releases the application's resources before it is collected.
`protected void` `fireDestroyed()` Notify listeners that the application has been terminated.
`sun.awt.AppContext` `getAppContext()`
`java.lang.ClassLoader` `getClassLoader()` Returns the classloader.
`JNLPFile` `getJNLPFile()` Returns the JNLP file for this task.
`java.lang.ThreadGroup` `getThreadGroup()` Returns the thread group.
`java.lang.String` `getTitle()` Returns the application title.
`void` `initialize()` Initialize the application's environment (installs environment variables, etc).
`boolean` `isRunning()` Returns whether the application is running.
`boolean` `isSigned()` Returns whether or not this jar is signed.
`void` `removeApplicationListener(ApplicationListener listener)` Remove an Application Listener

Methods inherited from class java.lang.Object
`clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ApplicationInstance

    public ApplicationInstance(JNLPFile file,
                               java.lang.ThreadGroup group,
                               java.lang.ClassLoader loader)

  Create an application instance for the file. This should be done in the appropriate `ThreadGroup` only.

Method Detail

### addApplicationListener

    public void addApplicationListener(ApplicationListener listener)

  Add an Application listener

### removeApplicationListener

    public void removeApplicationListener(ApplicationListener listener)

  Remove an Application Listener

### fireDestroyed

    protected void fireDestroyed()

  Notify listeners that the application has been terminated.

### initialize

    public void initialize()

  Initialize the application's environment (installs environment variables, etc).

### finalize

    public void finalize()

  Releases the application's resources before it is collected. Only collectable if classloader and thread group are also collectable so basically is almost never called (an application would have to close its windows and exit its threads but not call System.exit).

  Overrides:
    `finalize` in class `java.lang.Object`

### getJNLPFile

    public JNLPFile getJNLPFile()

  Returns the JNLP file for this task.

### getTitle

    public java.lang.String getTitle()

  Returns the application title.

### isRunning

    public boolean isRunning()

  Returns whether the application is running.

### destroy

    public void destroy()

  Stop the application and destroy its resources.

### getThreadGroup

    public java.lang.ThreadGroup getThreadGroup()
                                         throws java.lang.IllegalStateException

  Returns the thread group.

  Throws:
    `java.lang.IllegalStateException` - if the app is not running

### getClassLoader

    public java.lang.ClassLoader getClassLoader()
                                         throws java.lang.IllegalStateException

  Returns the classloader.

  Throws:
    `java.lang.IllegalStateException` - if the app is not running

### addWindow

    protected void addWindow(java.awt.Window window)

  Adds a window that this application opened. When the application is disposed, these windows will also be disposed.

### isSigned

    public boolean isSigned()

  Returns whether or not this jar is signed.

### getAppContext

    public sun.awt.AppContext getAppContext()

IcedTea-Web NetX

Submit a bug or feature