Understanding Extensibility in the vSphere Client
The vSphere Client provides a modular architecture that enables plug-in developers to add new user interface elements and business logic to the VMware feature set.
When you add to the user interface layer, you create one or more extensions, which contain the HTML content that you want to visualize. This can be views, menus, or any other UI controls.
When you extend the Java service layer, you create one or more web services that provide data or perform actions on behalf of your UI extensions.
Each plug-in module extends either the user interface layer or the service layer of the vSphere Client. The user interface plug-in modules and service plug-in modules together form a complete solution to add new capabilities to the vSphere Client graphical user interfaces.
In general, you extend the vSphere Client for one of the following reasons.
- You extended the vSphere environment by adding a new type of object to the environment, or by adding more data to an existing object. If you extend vSphere in this way, you can extend the vSphere Client with new user interface elements that allow users to observe, monitor, and control these new objects.
- You extended the vSphere Client without having added new objects or data to the vSphere environment. For example, you might want to collect existing vSphere data on a single screen or location in the user interface. Shortcuts, global views, and object navigator inventory lists are examples of extensions that you can use for these purposes. You can also create a new second-level tab, portlet, or other data view that displays existing vSphere data, such as performance data, as a custom graph or chart.
Extending the vSphere Client can involve creating both user interface plug-in modules and service plug-in modules. For more information about the architecture of the vSphere Client, see Understanding the vSphere Client Architecture.