Class FeatureFlags

java.lang.Object
com.vaadin.experimental.FeatureFlags
All Implemented Interfaces:
Serializable

public class FeatureFlags extends Object implements Serializable
Tracks available feature flags and their status. Enabled feature flags are stored in vaadin-featureflags.properties inside the resources folder (src/main/resources).
See Also:
  • Field Details

    • PROPERTIES_FILENAME

      public static final String PROPERTIES_FILENAME
      See Also:
    • SYSTEM_PROPERTY_PREFIX

      public static final String SYSTEM_PROPERTY_PREFIX
      See Also:
    • EXAMPLE

      public static final Feature EXAMPLE
    • COLLABORATION_ENGINE_BACKEND

      public static final Feature COLLABORATION_ENGINE_BACKEND
    • WEB_PUSH

      public static final Feature WEB_PUSH
    • FORM_FILLER_ADDON

      public static final Feature FORM_FILLER_ADDON
    • REACT_ROUTER

      public static final Feature REACT_ROUTER
  • Constructor Details

    • FeatureFlags

      public FeatureFlags(Lookup lookup)
      Generate FeatureFlags with given lookup data.
      Parameters:
      lookup - lookup to use
  • Method Details

    • get

      public static FeatureFlags get(VaadinContext context)
      Gets the FeatureFlags for the given Vaadin context. If the Vaadin context has no FeatureFlags, a new instance is created and assigned to the context.
      Parameters:
      context - the vaadin context for which to get FeatureFlags from, not null
      Returns:
      a feature flags instance for the given context, not null
    • setPropertiesLocation

      public void setPropertiesLocation(File propertiesFolder)
      Set by the Maven / Gradle plugin when running through that so the feature flags will be correctly detected.
    • loadProperties

      public void loadProperties()
      Read the feature flag properties files and updates the enable property of each feature object.
    • getFeatures

      public List<Feature> getFeatures()
      Get a list of all available features and their status.
      Returns:
      a list of all features
    • isEnabled

      public boolean isEnabled(Feature feature)
      Checks if the given feature is enabled.
      Parameters:
      feature - the feature to check
      Returns:
      true if enabled, false otherwise
    • isEnabled

      public boolean isEnabled(String featureId)
      Checks if the given feature is enabled.
      Parameters:
      featureId - the feature to check
      Returns:
      true if enabled, false otherwise
    • setEnabled

      public void setEnabled(String featureId, boolean enabled)
      Enables or disables the given feature.
      Parameters:
      featureId - the feature id
      enabled - true to enable, false to disable
    • getEnableHelperMessage

      public String getEnableHelperMessage(Feature feature)