Interface SpincastConfigPluginConfig

All Known Implementing Classes:
SpincastConfigPluginConfigDefault

public interface SpincastConfigPluginConfig
Configurations for the Spincast Config plugin. WARNING : Beware of circular dependencies in implementations of this interface. In general, this component should not depend on anything else, since pretty much all other components depend on it. We use "@ImplementedBy" to specify the default configurations to use if none is specified in a Guice module.
  • Method Details

    • getClasspathFilePath

      String getClasspathFilePath()
      The path to a configuration file to load from the classpath.

      Defaults to "app-config.yaml". This means you can simply create that file in your /src/main/resources/ folder and it will be used.

    • getExternalFilePath

      String getExternalFilePath()
      The path to a configuration file to load from the file system.

      The path can be relative or absolute. Spincast will check this using : File configFile = new File(thePath); if(configFile.isAbsolute()) {...}

      If the path is relative, it is from the executable .jar.

      Defaults to "app-config.yaml".

    • getEnvironmentVariablesPrefixes

      List<String> getEnvironmentVariablesPrefixes()
      The allowed prefixes an environment variable can have to be used as a configuration.

      Defaults to "app.".

      Returns:
      the allowed prefixes or null to disable environment variables as a source for configurations.
    • isEnvironmentVariablesStripPrefix

      boolean isEnvironmentVariablesStripPrefix()
      Should the prefix of an environment variable be stripped? For example, if #environmentVariablesPrefixes indicates that "app." is an environment variable prefix, then "app.admin.email" will result in a "admin.email" key.

      Defaults to false.

    • getSystemPropertiesPrefixes

      List<String> getSystemPropertiesPrefixes()
      The allowed prefixes a system property can have to be used as a configuration.

      Defaults to "app.".

      Returns:
      the allowed prefixes or null to disable system properties as a source for configurations.
    • isSystemPropertiesStripPrefix

      boolean isSystemPropertiesStripPrefix()
      Should the prefix of an system property be stripped? For example, if #systemPropertiesPrefixes indicates that "app." is an system property prefix, then "app.admin.email" will result in a "admin.email" key.

      Defaults to false.

    • isExternalFileConfigsOverrideEnvironmentVariables

      boolean isExternalFileConfigsOverrideEnvironmentVariables()
      If an external configuration file is used and environment variables too, should configurations from the file override those from environment variables?

      The default is false : environment variables have priority.

    • isThrowExceptionIfSpecifiedClasspathConfigFileIsNotFound

      boolean isThrowExceptionIfSpecifiedClasspathConfigFileIsNotFound()
      Should an exception be thrown if a classpath config file is specified (is not null) but is not found.

      If set to false, a message will be logged but no exception will be thrown.

      Defaults to false.

    • isThrowExceptionIfSpecifiedExternalConfigFileIsNotFound

      boolean isThrowExceptionIfSpecifiedExternalConfigFileIsNotFound()
      Should an exception be thrown if an external config file is specified (is not null) but is not found.

      If set to false, a message will be logged but no exception will be thrown.

      Defaults to false.