The remote plug-in sample in the
vSphere Client SDK shows how to design and implement, deploy and register a remote plug-in.
The sample is functionally simple, to focus on displaying the infrastructure rather than the
business logic.
The sample remote plug-in
package contains several components:
The user interface is written in JavaScript and
Angular, using Clarity design components to maintain compatibility with the vSphere
Client user interface.
The sample plug-in server is
written in Java, but Java is not a requirement. The server includes the
following:
In-memory data storage
for fictitious Chassis objects.
Controller logic to
handle user interface requests for Chassis objects and vSphere HostSystem
objects.
Service interfaces for
operations on both kinds of objects.
A library layer to interface to vCenter Server,
including logic to handle delegated authentication.
The plugin.json file specifies the
vSphere Client extension points that the plug-in extends.
The
spring-context.xml file contains the Spring bean
definitions for the plug-in server.
The
pom.xml file specifies how Maven will install
dependencies and build the plug-in deliverable.
The
application.properties file specifies properties that
the Spring application server uses to deploy the plug-in server.
The following diagram
illustrates the basic architecture of the remote plug-in sample, when installed
in a simple vSphere environment.
Figure 1. Remote Plug-in
Sample Environment