Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

Copyright © 2006 Sun Microsystems, Inc. All rights reserved.

JSR 216 (Maintenance Release)

javax.microedition.xlet
Interface Xlet


public interface Xlet

This interface allows an application manager to create, initialize, start, pause, and destroy an Xlet. An Xlet is an application or service designed to be run and controlled by an application manager via this lifecycle interface. The lifecycle states allow the application manager to manage the activities of multiple Xlets within a runtime environment selecting which Xlets are active at a given time. The application manager maintains the state of the Xlet and invokes method on the Xlet via the lifecycle methods. The Xlet implements these methods to update its internal activities and resource usage as directed by the application manager. The Xlet can initiate some state changes itself and informs the application manager of those state changes by invoking methods on XletContext.

In order to support interoperability between Xlets and application managers, all Xlet classes must provide a public no-argument constructor.

Note: the methods on this interface are meant to signal state changes. The state change is not considered complete until the state change method has returned. It is intended that these methods return quickly.

If the methods initXlet(), startXlet(), or pauseXlet() terminate with an uncaught exception or error, then the application manager will immediately destroy the Xlet unconditionally by invoking its destroyXlet() method.

See Also:
XletContext

Method Summary
 void destroyXlet(boolean unconditional)
          Signals the Xlet to terminate and enter the Destroyed state.
 void initXlet(XletContext ctx)
          Signals the Xlet to initialize itself and enter the Paused state.
 void pauseXlet()
          Signals the Xlet to stop providing service and enter the Paused state.
 void startXlet()
          Signals the Xlet to start providing service and enter the Active state.
 

Method Detail

initXlet

public void initXlet(XletContext ctx)
              throws XletStateChangeException
Signals the Xlet to initialize itself and enter the Paused state. The Xlet shall initialize itself in preparation for providing service. It should not hold shared resources but should be prepared to provide service in a reasonable amount of time.

An XletContext is used by the Xlet to access properties associated with its runtime environment. After this method returns successfully, the Xlet is in the Paused state and should be quiescent. If the Xlet cannot initialize, XletStateChangeException should be thrown. As a result, the application manager will immediately destroy the Xlet unconditionally by invoking the destroyXlet() method.

Note: This method shall only be called once.

Parameters:
ctx - The XletContext of this Xlet.
Throws:
XletStateChangeException - If the Xlet cannot be initialized.
See Also:
XletContext

startXlet

public void startXlet()
               throws XletStateChangeException
Signals the Xlet to start providing service and enter the Active state. In the Active state the Xlet may hold shared resources. The method will only be called when the Xlet is in the paused state.

Throws:
XletStateChangeException - is thrown if the Xlet cannot start providing service.

pauseXlet

public void pauseXlet()
Signals the Xlet to stop providing service and enter the Paused state. In the Paused state the Xlet must stop providing service, and might release all shared resources and become quiescent. This method will only be called called when the Xlet is in the Active state.


destroyXlet

public void destroyXlet(boolean unconditional)
                 throws XletStateChangeException
Signals the Xlet to terminate and enter the Destroyed state. In the destroyed state the Xlet must release all resources and save any persistent state. This method may be called from the Loaded, Paused or Active states.

Xlets should perform any operations required before being terminated, such as releasing resources or saving preferences or state.

NOTE: The Xlet can request that it not enter the Destroyed state by throwing an XletStateChangeException. This is only a valid response if the unconditional flag is set to false. If it is true the Xlet is assumed to be in the Destroyed state regardless of how this method terminates. If it is not an unconditional request, the Xlet can signify that it wishes to stay in its current state by throwing the Exception. This request may be honored and the destroyXlet() method called again at a later time.

Parameters:
unconditional - If unconditional is true when this method is called, requests by the Xlet to not enter the destroyed state will be ignored.
Throws:
XletStateChangeException - is thrown if the Xlet wishes to continue to execute (Not enter the Destroyed state). This exception is ignored if unconditional is equal to true.

JSR 216 (Maintenance Release)

Copyright © 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

For more information, please consult the JSR 216 specification.
ng HTML reloca