-
Notifications
You must be signed in to change notification settings - Fork 189
IDE Core
The IDE Core module is a host environment that is represented by a central Web-based IDE, which provides common accessibility and functionality for the modules of the entire framework of OpenIoT.
The layout of the core IDE is that of a classic Web application with a header and a dynamic navigation pane that controls a dynamic content pane. The IDE layout can be seen in the following image:
[](Documentation/images/ide-core/ide-layout.png)
The IDE supports the following functionality and services:
- Component Navigation. The IDE provides navigation links from its navigation bar giving access to the deployed OpenIoT components. Selecting a link loads a component dynamically with AJAX in the content pane, through which the user can access its functionality.
- **Loading – Unloading Components.**A component may be loaded or unloaded currently through the backend. The “refresh menu” button requests the servers for updates to the components and directly changes the available options in the navigation bar.
- Monitoring In order to implement monitoring features for the various components, the JavaMelody library has been integrated into the system. JavaMelody has the functionality of monitoring the JVM and the Java EE application server. It is a tool to measure and calculate statistics on the real operation of an application depending on the usage of the application by users. JavaMelody is mainly based on statistics of requests and on evolution charts. Further details on the monitoring component are available in the Application Runtime Monitoring Section.
The Web application is implemented according to the single-page-design principle relying on AJAX to render the parts of the page that change. The various components are loaded in the central content pane according to the source pointed to by the navigation Backing Bean (LayoutController.java). Since the various OpenIoT components have different URL endpoints they are loaded within an <iFrame>
in the central content pane of the page.
The layout of the Web application (which is depicted in the figure below) is relatively simple since its responsibilities at the moment are simply navigation:
[](Documentation/images/ide-core/ide-layout.png)
The class diagram for the Web application contains a single class which has the responsibility to control navigation and layout as shown below:
[](Documentation/images/ide-core/ide-class-diagram.png)
Service Name | Input | Output | Info |
---|---|---|---|
init | none | none | Used to initialize the Session Scoped bean with its starting values. |
isLoaded | String | Boolean | Used to scan the HashMap which holds which components are displayed and determines whether to display the link for the particular component |
getNavigation | none | String | Retrieves which URL to render in the central content pane |
setNavigation | String | none | Sets which URL to render in the central content pane |
- Documentation
- Home
- Architecture
- Scheduler
- Service Delivery & Utility Manager
- Data Platform (LSM)
- X-GSN
- Mobile Sensors Management
- Optimizations
- Security
- User Interfaces
- OpenIoT Commons & Properties
- Standalone Platform Testing tools
- X-GSN Sensor Simulators
- Deliverables
- Glossary and Terminology
- Demos