Overview
Most of the ONOS Web UI framework code is implemented as Angular services (factories, in fact). This page provides a brief summary of these factories, with links to pages giving more detail.
The source code can be found in web/gui/src/main/webapp/app/fw/.
Layer
The module holding these services is onosLayer defined in layer/layer.js.
| Service | Description |
|---|---|
| FlashService | Allows application code to flash transient messages on the screen. |
| LoadingService | Provides the ONOS-branded "Loading..." animation. |
| PanelService | Provides an API to create and destroy "fly-in" panels. |
| DialogService | Builds on the panel service to create a dialog panel. |
| QuickHelpService | Renders the Quick Help panel. |
| VeilService | Manages an masking layer that appears when the web-socket connection fails. |
Mast
The module holding these services is onosMast defined in mast/mast.js.
| Service | Description |
|---|---|
| MastService | Provides functions relating to the masthead. |
Nav
The module holding these services is onosNav defined in nav/nav.js.
| Service | Description |
|---|---|
| NavService | Manages the menu navigation pane. |
Remote
The module holding these services is onosRemote defined in remote/remote.js.
| Service | Description |
|---|---|
| RestService | Abstracts rest calls using the $http service. |
| UrlFnService | Creates URL strings for REST or web-socket calls. |
| WebSocketService | Handles Websocket events (bind, unbind, listeners). |
| WSock | Web-socket wrapper to facilitate unit-testing with mock web-sockets. |
SVG
The module holding these services is onosSvg defined in svg/svg.js.
| Service | Description |
|---|---|
| GeoDataService | Fetches and caches TopoJSON data, providing an API for creating a path generator for that data. |
| GlyphService | Add, load, and register SVG symbols (glyphs). |
| IconService | Add, load, and register SVG icons via a service (abstraction of GlyphService) or a directive. |
| MapService | Loads graphical maps into the SVG layer. |
| SvgUtilService | General SVG utility functions. |
| ZoomService | Creates a "zoomer" to manage zoom functions in an SVG layer. |
Util
The module holding these services is onosUtil defined in util/util.js.
| Service | Description |
|---|---|
| FnService | Provides general purpose functions useful throughout the application. |
| KeyService | Provides key-bindings to function callbacks. |
| PrefsService | Persists user settings in the browser's cookies. |
| Encapsulated randomness. | |
| ThemeService | Manages UI themes (light and dark). |
Widget
The module holding these services is onosWidget defined in widget/widget.js.
| Service | Description |
|---|---|
| ButtonService | Provides an API to create buttons, toggles, and radio button sets. |
| Table Directives | Defines Angular directives for tabular views. |
| TableBuilderService | Provides an API to create a generic table view client model. |
| ToolbarService | Provides an API to create a toolbar. |
| TooltipService | Provides an API and a directive to install tooltips. |