public interface XletContext
Xlet| Modifier and Type | Field and Description |
|---|---|
static String |
ARGS
The property key used to obtain initialization arguments for the
Xlet.
|
| Modifier and Type | Method and Description |
|---|---|
ClassLoader |
getClassLoader()
Returns the base class loader of the Xlet.
|
Container |
getContainer()
Get the parent container for an Xlet to put its AWT components
in.
|
Object |
getXletProperty(String key)
Provides an Xlet with a mechanism to retrieve named
properties from the XletContext.
|
void |
notifyDestroyed()
Used by an application to notify its manager that it
has entered into the
Destroyed state.
|
void |
notifyPaused()
Notifies the manager that the Xlet does not want to be active and has
entered the Paused state.
|
void |
resumeRequest()
Provides the Xlet with a mechanism to indicate that it is
interested in entering the Active state.
|
static final String ARGS
XletContext.getXletProperty(XletContext.ARGS) will
return the arguments as an array of Strings. If there are
no arguments, then an array of length 0 will be returned.void notifyDestroyed()
destroy method, and all resources
held by the Xlet will be considered eligible for reclamation.
Before calling this method,
the Xlet must have performed the same operations
(clean up, releasing of resources etc.) it would have if the
Xlet.destroyXlet() had been called.void notifyPaused()
If an Xlet calls notifyPaused(), in the
future it may receive an Xlet.startXlet() call to request
it to become active, or an Xlet.destroyXlet() call to request
it to destroy itself.
Object getXletProperty(String key)
key - The name of the property.null is returned if no value is available for key.NullPointerException - If key is null.IllegalArgumentException - If key is an empty string.void resumeRequest()
Xlet.startXlet()
via a different thread than the one used to call
resumeRequest().Xlet.startXlet()Container getContainer() throws UnavailableContainerException
c of
java.awt.Container that is initially invisible, with
an arbitrary size and position. Calling
c.setVisible(true) will make the container visible.
If this method is called multiple times on the same XletContext instance, the same container will be returned each time. Note that the platform need not support more than a single displayable Xlet at a time, however, at least the first call to this method platform-wide is guaranteed to succeed. The behavior for subsequent calls to this method is implementation-dependent.
The methods for setting the size and position of the xlet's parent container shall attempt to change the shape of the container, but they may fail silently or make platform specific approximations. To discover if a request to change the size or position has succeeded, the Xlet should query the container for the result.
Because the container is initially invisible, an
xlet that makes the container visible and that wishes to receive
the AWT focus should request this explicitly, i.e. by calling
Component.requestFocus().
In order to protect UI elements that
are shared between multiple xlets,
implementations must prohibit access to resources that
belong to a different application context than the calling thread.
Therefore, xlets should be aware that an enclosing Container whose
getParent() and getFocusCycleRootAncestor()
methods return null may not actually be the top of the
AWT containment hierarchy.
This method throws UnavailableContainerException If
policy or screen real estate does not permit a
Container to be granted to the Xlet, or if
GraphicsEnvironment.isHeadless() returns
true.
Note: Personal Basis Profile permits only a single instance of
Frame per GraphicsDevice.
In the case of Xlets, this single Frame instance
is created in advance by the xlet manager to serve as the parent
of the containers returned by this method.
Therefore, attempts by an Xlet to create an instance of
Frame will always fail.
UnavailableContainerException - If a Container cannot be
granted to the Xlet.Component.getParent(),
Component.getFocusCycleRootAncestor()ClassLoader getClassLoader()
Copyright © 2012 code4tv.com. All Rights Reserved.