Architecture
WSO2 Developer Studio Kernel has the following key capabilities:
A UI toolkit to generate the UI using XML
A platform and framework to use web technologies for plug-in development
Many reusable built-in UI components for plug-in development (SWT Composites)
Built-in template support for rapid development
Maven utilities to add maven support for plug-ins
Built-in support for C-App and Carbon servers
Seamless integration with Eclipse, Developer Studio Kernel and other plug-in features using extension points
The following diagram depicts the architecture of WSO2 Developer Studio Kernel and it's components.
Core components and framework
This will act as the bridge to communicate with Eclipse core APIs and extension points. Furthermore, it provides a number of APIs, extension points, abstract components (such as editors, perspectives, views) and an eclipse MVC based abstract project model for effective development. The UI toolkit is the main framework for handling UIs in the kernel and can be used to develop SWT UIs using XML. This reduces the UI design time and more importantly, ensures a unified UI experience across all plug-ins.
The following features are included in the core components and framework:
Core plug-ins
Kernel updater tool
- Plug-in template manager
Common components
These consist of the components that are commonly used across many plug-ins. These components can be embedded into a plug-in directly. For example, many WSO2 product plug-ins require the use of the registry browser, so the registry component can be used to easily integrate that functionality. For a comprehensive explanation of all available common components and their usages, see the Developer Guide.
The following features are included as common components:
- Registry core
- User management core
Optional features
A set of optional features provided with WSO2 Developer Studio Kernel is available at the instance of installation. These features are mainly the core features used by all WSO2 products and hence need to be supported by default. At installation, a user can either select or deselect these features. The Web Toolkit is one of these features and introduces a new framework and platform, which bridges the gap from the Eclipse world to Web enabling the use of Web based technologies for Eclipse plug-in development. In other words, UI components can be developed using web technologies such as JavaScript
, HTML
etc. instead of using Eclipse SWT.
More importantly, these plugins can be deployed in WAR
format as well. Even though these plug-ins do not use the Eclipse conventional methods and technologies, the user experience is guaranteed to be the same. In addition, WSO2 Developer Studio Kernel includes the following optional features, which can be selected/deselected while installing the kernel:
Carbon application tools
Carbon server tools (remote/carbon server versions)
Library artifacts
Registry Resource project and browser tools
Security plug-ins
- Web based UI components
Plug-in templates
In addition to the built-in Eclipse plug-in support, in order to aid rapid development of WSO2 specific plug-ins, we have introduced plug-in templates with WSO2 specific use-cases. The WSO2 plug-in templates make the developer’s life easy and ensure that a proper plug-in structure is being used in every plug-in. However, this is also offered as an optional feature and developers may opt out during the kernel installation.