A - VitamApplication final classC - VitamApplicationConfiguration final classpublic abstract class AbstractVitamApplication<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration> extends Object implements VitamApplication<A,C>
| Modifier and Type | Field and Description |
|---|---|
protected static String |
CONFIG_FILE_IS_A_MANDATORY_ARGUMENT |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractVitamApplication(Class<C> configurationType,
C configuration)
Protected constructor assigning application and configuration types
Usage example in sub-implementation : for Junit test
class MyApplication extends AbstractVitamApplication
|
protected |
AbstractVitamApplication(Class<C> configurationType,
String configurationFile)
Protected constructor assigning application and configuration types
Usage example in sub-implementation :
class MyApplication extends AbstractVitamApplication
|
| Modifier and Type | Method and Description |
|---|---|
protected org.eclipse.jetty.server.Handler |
buildAdminHandler()
This is (admin config) an other implementation of the method @see buildApplicationHandler The default
implementation is for business api
|
protected org.eclipse.jetty.server.Handler |
buildApplicationHandler()
Re Implement this method to construct your application specific handler if necessary.
|
protected void |
checkJerseyMetrics(org.glassfish.jersey.server.ResourceConfig resourceConfig) |
protected static void |
clearAndconfigureMetrics()
Clear the metrics map from any existing
VitamMetrics and reload the configuration from the
AbstractVitamApplication#METRICS_CONF_FILE_NAME |
protected void |
configure(String configurationFile)
From the configuration file, read the configuration, the Jetty Configuration and create the associate VitamServer
using Jetty, adding the applicationHandler from buildApplicationHandler
|
protected void |
configureVitamParameters()
To allow override on non Vitam platform such as IHM
|
org.eclipse.jetty.server.Handler |
getApplicationHandlers() |
static VitamMetricRegistry |
getBusinessMetricsRegistry()
Return the
VitamMetricRegistry of VitamMetricsType.BUSINESS type. |
String |
getConfigFilename()
Return the name as a string of your configuration file.
|
C |
getConfiguration() |
Class<C> |
getConfigurationType() |
boolean |
getServerStatus() |
protected int |
getSession() |
static VitamMetrics |
getVitamMetrics(VitamMetricsType type)
Return a
VitamMetrics object for a given VitamMetricsType or null if the VitamMetrics does not
exists. |
VitamServer |
getVitamServer()
retrieve the vitam server
|
protected abstract boolean |
registerInAdminConfig(org.glassfish.jersey.server.ResourceConfig resourceConfig)
This method must add the Application Admin resources and eventually registering specific Admin component
|
protected abstract void |
registerInResourceConfig(org.glassfish.jersey.server.ResourceConfig resourceConfig)
This method must add the Application resources and eventually registering specific component
|
protected void |
registerLifeCycleListener()
register LifeCycle Listener for jetty
|
void |
run()
Start the server as full daemon and blocking
|
void |
setConfiguration(C configuration)
Allow to override this method in Junit
|
protected void |
setFilter(org.eclipse.jetty.servlet.ServletContextHandler context,
boolean isAdminConnector)
To set extra filters
|
void |
start()
Start the server without blocking
|
void |
startMetrics()
Start the reporting of every metrics
|
void |
stop()
Stop the server
|
protected static final String CONFIG_FILE_IS_A_MANDATORY_ARGUMENT
protected AbstractVitamApplication(Class<C> configurationType, String configurationFile)
configurationType - the configuration class typeconfigurationFile - the configuration fileIllegalStateExceptionprotected AbstractVitamApplication(Class<C> configurationType, C configuration)
configurationType - the configuration class typeconfiguration - the configuration objectIllegalStateExceptionpublic boolean getServerStatus()
protected final void configure(String configurationFile)
configurationFile - IllegalStateExceptionprotected void configureVitamParameters()
public final void startMetrics()
protected static final void clearAndconfigureMetrics()
VitamMetrics and reload the configuration from the
AbstractVitamApplication#METRICS_CONF_FILE_NAMEprotected void checkJerseyMetrics(org.glassfish.jersey.server.ResourceConfig resourceConfig)
protected abstract void registerInResourceConfig(org.glassfish.jersey.server.ResourceConfig resourceConfig)
resourceConfig - the ResourceConfig to setupprotected abstract boolean registerInAdminConfig(org.glassfish.jersey.server.ResourceConfig resourceConfig)
resourceConfig - the ResourceConfig to setupprotected int getSession()
protected void setFilter(org.eclipse.jetty.servlet.ServletContextHandler context,
boolean isAdminConnector)
throws VitamApplicationServerException
context - the context on which to call context.addFilter (as many times as needed)isAdminConnector - use to be able to add or not some specific filter or listener to the contextVitamApplicationServerExceptionprotected org.eclipse.jetty.server.Handler buildApplicationHandler()
throws VitamApplicationServerException
VitamApplicationServerExceptionprotected org.eclipse.jetty.server.Handler buildAdminHandler()
throws VitamApplicationServerException
VitamApplicationServerExceptionpublic String getConfigFilename()
VitamApplicationgetConfigFilename in interface VitamApplication<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration>public final C getConfiguration()
getConfiguration in interface VitamApplication<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration>public void setConfiguration(C configuration)
VitamApplicationsetConfiguration in interface VitamApplication<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration>public final Class<C> getConfigurationType()
getConfigurationType in interface VitamApplication<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration>public final org.eclipse.jetty.server.Handler getApplicationHandlers()
getApplicationHandlers in interface VitamApplication<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration>public final VitamServer getVitamServer()
VitamApplicationInterfacegetVitamServer in interface VitamApplicationInterface<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration>public final void run()
throws VitamApplicationServerException
VitamApplicationrun in interface VitamApplication<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration>VitamApplicationServerExceptionpublic final void start()
throws VitamApplicationServerException
VitamApplicationInterfacestart in interface VitamApplicationInterface<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration>VitamApplicationServerExceptionpublic final void stop()
throws VitamApplicationServerException
VitamApplicationInterfacestop in interface VitamApplicationInterface<A extends VitamApplication<A,C>,C extends VitamApplicationConfiguration>VitamApplicationServerExceptionpublic static final VitamMetricRegistry getBusinessMetricsRegistry()
VitamMetricRegistry of VitamMetricsType.BUSINESS type. This
VitamMetricRegistry can be used to register custom metrics wherever in the application.VitamMetrics BUSINESS VitamMetricspublic static final VitamMetrics getVitamMetrics(VitamMetricsType type)
VitamMetrics object for a given VitamMetricsType or null if the VitamMetrics does not
exists.type - VitamMetricsType typeVitamMetrics VitamMetricsprotected void registerLifeCycleListener()
Copyright © 2018 Vitam. All rights reserved.