IcedTea-Web
NetX

net.sourceforge.jnlp.runtime
Class ApplicationInstance

java.lang.Object
  extended by 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