Interface ApplicationSettings

All Known Implementing Classes:
DefaultApplicationSettings

public interface ApplicationSettings
Allows retrieving or persisting application settings. Use only for application settings that are not user specific
  • Method Details

    • getSetting

      <T> Optional<T> getSetting(String key, Class<T> type)
      Get setting value from default setting store. Returns empty if no value found
      Type Parameters:
      T - returned setting type
      Parameters:
      key - setting key
      type - returned type
      Returns:
      setting for key
    • getSettingAsString

      Optional<String> getSettingAsString(String key)
      Get setting value from default setting store. Returns empty if no value found
      Parameters:
      key - setting key
      Returns:
      setting for key
    • getSettingOrDefault

      <T> T getSettingOrDefault(String key, Class<T> type)
      Get setting value from default setting store. Returns default value or null if no default value
      Type Parameters:
      T - returned setting type
      Parameters:
      key - setting key
      type - returned type
      Returns:
      setting for key
    • isTrue

      boolean isTrue(String key)
      Assumes that setting is boolean type and returns primitive boolean.
      Parameters:
      key - setting key
      Returns:
      true if setting is set to true or if default value is set to true, false otherwise
    • getSettingOrDefaultAsString

      String getSettingOrDefaultAsString(String key)
      Get setting value from default setting store. Returns default value or null if no default value
      Parameters:
      key - setting key
      Returns:
      setting for key
    • getPropertyBackedSetting

      <T> T getPropertyBackedSetting(String key, Class<T> type)
      Get setting value from system properties or default setting store or default value.
      Type Parameters:
      T - returned setting type
      Parameters:
      key - setting key
      type - returned type
      Returns:
      setting for key
    • getPropertyBackedSettingAsString

      String getPropertyBackedSettingAsString(String key)
      Get setting value from system properties or default setting store or default value.
      Parameters:
      key - setting key
      Returns:
      setting for key
    • setSetting

      <T> void setSetting(String key, T value)
      Persist setting value. If no serializer specified then tries store setting value as json
      Type Parameters:
      T - returned setting type
      Parameters:
      key - setting key
      value - value to persist
    • setDefaultSetting

      <T> void setDefaultSetting(String key, T defaultValue)
      Configures default value for setting.
      Type Parameters:
      T - returned setting type
      Parameters:
      key - setting key
      defaultValue - value to persist
    • addTypeSerializer

      <T> void addTypeSerializer(Class<T> type, SettingSerializer<T> serializer)
      Adds serializer for custom type. Replaces default json serializer for provided type
      Type Parameters:
      T - serializable type
      Parameters:
      type - type of serializer
      serializer - instance of serializer for provided type