Class ServiceConfigurationBase

java.lang.Object
eu.cloudnetservice.driver.service.ServiceConfigurationBase
All Implemented Interfaces:
DefaultedDocPropertyHolder, DocPropertyHolder
Direct Known Subclasses:
GroupConfiguration, ServiceConfiguration, ServiceTask

public abstract class ServiceConfigurationBase extends Object implements DefaultedDocPropertyHolder
The base configuration class for everything which can configure a service in any way. It holds the most common information which every component managing a service should provide to a user.
Since:
4.0
  • Field Details

  • Constructor Details

  • Method Details

    • jvmOptions

      @NonNull public abstract @Unmodifiable @NonNull Collection<String> jvmOptions()
      Get the jvm options which should get applied to the service command line. JVM options are there to configure the behaviour of the jvm, for example the garbage collector.
      Returns:
      the jvm options to set for services created based on this configuration.
    • processParameters

      @NonNull public abstract @Unmodifiable @NonNull Collection<String> processParameters()
      Get the process parameters which should get appended to the command line. Process parameters are there to configure the application, for example setting an option like --online-mode=true.
      Returns:
      the process parameters to set for services created based on this configuration.
    • environmentVariables

      @NonNull public abstract @Unmodifiable @NonNull Map<String,String> environmentVariables()
      Get the environment variables which should get appended to all environments of services which are created based on this configuration.
      Returns:
      the environment variables to set for services created based on this configuration.
    • inclusions

      Get all includes which should be added initially to services created based on this configuration. These inclusions are downloaded and included either when explicitly requested or before starting the service.
      Returns:
      all inclusions which should get added initially to services created based on this configuration.
    • templates

      Get all templates that should get copied onto services created based on this configuration when preparing. Templates of configured groups and groups targeting the environment of this configuration will be included automatically.

      NOTE: the returned set is not yet sorted, sorting will be made when actually including the templates. The sorting changes will not reflect into this configuration.

      Returns:
      all templates to include when preparing a service based on this configuration.
    • deployments

      Get all deployments that should be added initially to services created based on this configuration. These deployments will not get executed directly, you need to execute them for each service individually using the service provider.
      Returns:
      all deployments which should get added initially when preparing a service.
    • propertyHolder

      @NonNull public @NonNull Document propertyHolder()
      Get the underlying document that all read and write operations are delegated to.
      Specified by:
      propertyHolder in interface DocPropertyHolder
      Returns:
      the underlying document.