|
org.netbeans.modules.uihandler 1.30 | |||||||||
PREV NEXT | FRAMES NO FRAMES |
See:
Description
UI Gestures Collector | |
---|---|
org.netbeans.modules.uihandler.api | Package with interfaces that other modules may implement in order to be notified about important lifecycle points during collecting the UI Gestures. |
This module tracks certain UI gestures produced by user and collects a log of his actions. It is capable to display such log and also upload it to a central server for additional processing and analysis.
Primary purpose of this module is collect information about the user actions that take place in the running NetBeans based application.
Important part of the behaviour of this module is the ability to cooperate with information analyzing tools and present their results. This is done thru special HTTP contracts, where the module reads and understands various server responses and is able to open browser after submitting data to analysis.
org.netbeans.modules.uihandler.Bundle
that specifies the location of the page on a server one shall
query and display to the user when the module is about the
submit data for analysis.
WELCOME_URL
can contain
any XHTML text, but it also should contain a <form/> tag
that defines <input type="hidden" name="submit" value="localizedName"/>.
The localizedName
is then going to be used for a button
for the dialog displaying the summary. When this button is invoked,
the "action" URL is then feed with data from the UI logs.
The server is then supposed to process the data, create
some analytics pages and return them back to the client.
If the returned page contains tag like
<meta http-equiv='Refresh' content='3; URL=somepage'>
an (external) browser is opened with the specified URL and
the user can then interact directly with the server, thru
pages it serves.
org.netbeans.modules.uihandler.Submit
property when invoking NetBeans.
The base module is in fact just an infrastructure which collects data about UI gestures, but the actual gestures need to be delivered to it somehow. Here is the description of the ways how one can extend own modules to cooperate with this UI gestures infrastructure.
To feed own data about special UI gestures one can just create own
Logger.getLogger("org.netbeans.ui.ownname")
and send own log records to it. The format of the log
messages shall follow the one described by the
structured logging
document, e.g. the
LogRecord
shall have associated
ResourceBundle
and the record's getMessage
shall point to a key
in that bundle.
MSG_KEY_ICON_BASE
in the bundle associated
with the
LogRecord
(where the MSG_KEY is the string returned by record.getMessage()
)
and the value is then going to be used for the
Node
representing the UI gesture.
Sometimes direct logging may not be possible. For example for
performance data it might be meaningful to collect the information
over a longer time period and only at the end output some statistics.
This is supported as well. Just implement and register one
of the
These usecases are realized as described in here in provided UI specification.
|
|
|
|
The sources for the module are in NetBeans CVS in logger/uihandler directory.
Modules may use functionality of this module either by depending on its presence
and registering callback interfaces
provided by its API. Or the modules do not need to depend on this module at all,
and just generate log records
to the org.netbeans.ui.someloggername
log. These records are
then going to be consumed by this module, if enabled.
Read more about the implementation in the answers to architecture questions.
|
org.netbeans.modules.uihandler 1.30 | |||||||||
PREV NEXT | FRAMES NO FRAMES |