public interface IDialogManager
IDialogManager
is the main (application-independent) component for
handling system dialogs. It (1) represents the whole system by providing
system menus (a unified view of all services available), possibilities to
search for specific services, and by handling context-free user input (user
input that cannot be assigned to any running dialog), and (2) assists the UI
bus by (2.1) acting as a representative for the whole framework supporting
context-awareness & personalization, and by (2.2) providing user-specific
management of dialogs initiated by different applications to protect the user
against a mess of parallel dialogs (decides whether some dialog needs to wait
for another dialog to finish).
This interface is supposed to be implemented by exactly one component. The
first component that registers as a UICaller
to the UI bus (and
implements this interface) blocks the registration of any further
implementation of this interface.Modifier and Type | Method and Description |
---|---|
boolean |
checkNewDialog(UIRequest request)
Check new dialog.
|
void |
dialogFinished(String dialogID)
Informs the
IDialogManager that a running dialog has finished
according to the information received from an UIHandler . |
UIRequest |
getSuspendedDialog(String dialogID)
When the application has informed the bus that a suspended parent dialog
is now ready to be resumed, then the bus uses this method in order to
fetch the suspended parent dialog.
|
void |
suspendDialog(String dialogID)
The bus must use this method in order to inform the
IDialogManager that a dialog has to be suspended. |
void |
userLogIn(Resource user,
AbsLocation loginLocation)
A User has logged in at a location resend the appropriate dialog.
|
boolean checkNewDialog(UIRequest request)
request
- UIRequest
to IUIBus
UIRequest
to IUIBus
can
be immediately forwarded to an UIHandler
(returns true)
or must wait for a higher priority dialog to finish (return
false). In case of returning true, the IDialogManager
must also add the current adaptation parameters to
UIRequest
so that the matchmaking on the IUIBus
results in adaptive selection of UI channel. In case of returning
false, the IUIBus
ignores the UIRequest
because
it trusts that the IDialogManager
will keep the
UIRequest
in a queue of suspended dialogs and will
re-activate it whenever appropriate.void dialogFinished(String dialogID)
IDialogManager
that a running dialog has finished
according to the information received from an UIHandler
. As a
result this may result in re-activation of previously suspended dialog
(by the IDialogManager
).dialogID
- ID of the dialogvoid userLogIn(Resource user, AbsLocation loginLocation)
user
- User
of a system. It is declared as Resource because
the type User is defined in the Profiling Ontology. The type
is not needed for for matchmaking Either.loginLocation
- Location
from which User
has logged in to the
systemUIRequest getSuspendedDialog(String dialogID)
dialogID
- ID of the dialogvoid suspendDialog(String dialogID)
IDialogManager
that a dialog has to be suspended. This is the
case when during a dialog is running the user steps into a subdialog so
the parent dialog must be suspended until the application receives the
user input from the subdialog.dialogID
- ID of the dialogCopyright © 2018 universAAL Consortium. All rights reserved.