Start page / Plug-In Development / Universal Extensions / Launching Applications (FirstSpirit Start Page)
Launching Applications (FirstSpirit Start Page)
Application launcher buttons on the FirstSpirit start page. Top row: primary (editorial) applications. Bottom row: secondary (managerial) applications.
This plugin type allows FirstSpirit extension developers to integrate buttons that allow users to access custom, FirstSpirit-related applications from the FirstSpirit start page. The launcher button may be configured with a label, a description, and a custom icon and carries a URL which the browser will navigate to when a user clicks on the button.
Additional configuration related to application launcher buttons is available via FirstSpirit ServerManager (see Start page (→Documentation for Administrators)). For instance, the positioning of each launcher button - in the button row for primary (editorial) applications or in the row for secondary (managerial) applications - on the FirstSpirit start page may be configured here.
The Interface ApplicationPlugin
FirstSpirit Access API Interface: de.espirit.firstspirit.server.application.ApplicationPlugin
Access API Documentation: ApplicationPlugin
A FirstSpirit Module component that is meant to add an application launcher button to the FirstSpirit start page must implement the FirstSpirit Access API interface ApplicationPlugin. This interface defines methods that allow the application launcher component to have a label, a description, and icon, and an URL as well as to specify whether the launcher button should be visible and/or enabled depending on the context.
Methods
Setup and Teardown
void setUp(BaseContext context)
void tearDown()
After the plugin object is instantiated, the method setUp(BaseContext) will be called first so that the object has access to a context object. This context object (see BaseContext) provides information about the environment in which the application launcher button is to be rendered.
The method tearDown() is called when the plugin component is no longer needed, in order to clean up objects used within the plugin implementation class as needed.
Label and Description
@NotNull String getLabel()
@Nullable String getDescription()
The label text should be a very short and concise name that indicates the application that will be launched by this button. The label will be shown near the button icon on the FirstSpirit start page.
The optional description text may carry a somewhat longer description of the application that will be shown as a tool-tip as the mouse pointer hovers over the button.
Icon
@NotNull Image<?> getIcon(@NotNull ApplicationPlugin.IconType type)
This method returns the icon of the application launcher button. The parameter of type ApplicationPlugin.IconType is an Enum that indicates whether the icon graphic will be shown on a white background (value WHITE_BACKGROUND) or a dark background (value DARK_BACKGROUND) such that an icon with a well-contrasting color scheme may be chosen.
URL
@NotNull String getUrl()
This method returns the URL to which the browser should navigate when the launcher button is clicked.
Visibility and Enabled State Note that the following two methods, boolean isVisible() and boolean isEnabled(), are only designed to set visibility and enabled state, respectively, of the launcher button. These settings are not designed to provide security features, e.g. access control to applications launched by application launcher buttons. Access control features must be implemented as appropriate and required within each application itself. |
Visibility
boolean isVisible()
Dependin on the context, this method determines whether the launcher button should be shown on the FirstSpirit start page (return value true) or not (return value false).
Enabled State
boolean isEnabled()
Depending on the context, this method determines whether the launcher button should be shown as enabled (active, with navigation upon click; return value true) or disabled (inactive, no navigation upon click; return value false).
Configuration in FirstSpirit ServerManager
Web Application "fs5root"
In order to deploy an application launcher button plugin to the FirstSpirit start page, the FirstSpirit Module (FSM) must specify a web-app component that includes a JAR file with the classes and supporting files relevant to the button plugin. This web-app component must be added to the global “fs5root” web application via FirstSpirit ServerManager's web application configuration within “Server properties”.
See Module Architecture and Web applications (→Documentation for Administrators).
Start Page
The application launcher button may be configured to appear in either the primary (editorial) application area or in the secondary (managerial) application area. This configuration is carried out via FirstSpirit ServerManager's start page configuration within “Server properties”.