getGUIContext
GUIContext getGUIContext(SessionToken session,
ActivityInstance activityInstance,
EBPInstanceReference ebpInstanceReference,
String sessionId,
ExecutionContext executionContext,
ExecutionControlManager executionControlManager,
Thread thread)
throws GUIContextUnavailableException
Gets an appropriate GUI context for the designated activity as configured locally for the
corresponding client. This method looks for a specific context for the execution environment of
the activity. If none is defined, the context for the type of the activity (for instance, a
standard GUI for all web services) will be returned. If there is also no definition, a standard
GUI context will be returned.
Applications using the GUI context should cast the returned instance to the appropriate
implementation.
- Parameters:
session
- The session which is used to check for access rights on this method.
activityInstance
- The activity instance for which a GUI context is to be retrieved. If a
localisation is available, it will already be applied.
ebpInstanceReference
- The EBP-instance reference (identifies the corresponding instance
node) for which a GUI context is to be retrieved.
sessionId
- The ID of the session in which the GUI context is needed.
executionContext
- The context in which the component the GUI context is retrieved for is
executed.
executionControlManager
- A reference to control the execution, for instance, to close the
application when the user closes the GUI window of the returned GUI context.
thread
- The thread, the component runs inside. The GUI context must check calls to it
against this thread, to ensure thread safety.
Do not keep a strong reference within the GUIContext
to this
thread! Otherwise memory leaks may occur.
- Returns:
- The context containing the appropriate GUI for displaying the user interface of an
application. The caller should close, but
implementations should ensure closing of all created
GUI contexts when shutting down.
- Throws:
GUIContextUnavailableException
- If the requested GUI context can not be created, a
GUIContextUnavailableException
will be thrown.