Class FeatureManager

java.lang.Object
java.util.AbstractMap<K,V>
java.util.HashMap<String,Object>
com.azure.spring.cloud.feature.manager.FeatureManager
All Implemented Interfaces:
Serializable, Cloneable, Map<String,Object>

@Component("FeatureManagement") @ConfigurationProperties(prefix="feature-management") public class FeatureManager extends HashMap<String,Object>
Holds information on Feature Management properties and can check if a given feature is enabled.
See Also:
  • Constructor Details

    • FeatureManager

      public FeatureManager(FeatureManagementConfigProperties properties)
      Used to evaluate whether a feature is enabled or disabled.
      Parameters:
      properties - Configuration options for Feature Management
  • Method Details

    • isEnabledAsync

      public Mono<Boolean> isEnabledAsync(String feature) throws FilterNotFoundException
      Checks to see if the feature is enabled. If enabled it check each filter, once a single filter returns true it returns true. If no filter returns true, it returns false. If there are no filters, it returns true. If feature isn't found it returns false.
      Parameters:
      feature - Feature being checked.
      Returns:
      state of the feature
      Throws:
      FilterNotFoundException - file not found
    • putAll

      public void putAll(Map<? extends String,? extends Object> m)
      Specified by:
      putAll in interface Map<String,Object>
      Overrides:
      putAll in class HashMap<String,Object>
    • getAllFeatureNames

      public Set<String> getAllFeatureNames()
      Returns the names of all features flags
      Returns:
      a set of all feature names