Class FeatureFlagService


  • @Deprecated
    public class FeatureFlagService
    extends AbstractService
    Deprecated.
    Provides feature flag management. Feature flag is a boolean flag used for enabling / disabling some specific feature of GoodData platform. It can be used in various scopes (per project, per project group, per user, global etc.).
    • Field Detail

      • PROJECT_FEATURE_FLAG_TEMPLATE

        public static final org.springframework.web.util.UriTemplate PROJECT_FEATURE_FLAG_TEMPLATE
        Deprecated.
      • PROJECT_FEATURE_FLAGS_TEMPLATE

        public static final org.springframework.web.util.UriTemplate PROJECT_FEATURE_FLAGS_TEMPLATE
        Deprecated.
      • AGGREGATED_FEATURE_FLAGS_TEMPLATE

        public static final org.springframework.web.util.UriTemplate AGGREGATED_FEATURE_FLAGS_TEMPLATE
        Deprecated.
    • Constructor Detail

      • FeatureFlagService

        public FeatureFlagService​(org.springframework.web.client.RestTemplate restTemplate,
                                  GoodDataSettings settings)
        Deprecated.
        Constructs service for GoodData feature flags management.
        Parameters:
        restTemplate - RESTful HTTP Spring template
        settings - settings
    • Method Detail

      • listFeatureFlags

        public com.gooddata.sdk.model.featureflag.FeatureFlags listFeatureFlags​(com.gooddata.sdk.model.project.Project project)
        Returns aggregated feature flags for given project and current user (aggregates global, project group, project and user feature flags). It doesn't matter whether feature flag is enabled or not, it'll be included in both cases.
        Parameters:
        project - project, cannot be null
        Returns:
        aggregated feature flags for given project and current user
      • listProjectFeatureFlags

        public com.gooddata.sdk.model.featureflag.ProjectFeatureFlags listProjectFeatureFlags​(com.gooddata.sdk.model.project.Project project)
        Returns project feature flags (only project scoped flags, use listFeatureFlags(Project) for aggregated flags from all scopes) for given project. It doesn't matter whether feature flag is enabled or not, it'll be included in both cases.
        Parameters:
        project - project, cannot be null
        Returns:
        list of all feature flags for given project
      • getProjectFeatureFlag

        public com.gooddata.sdk.model.featureflag.ProjectFeatureFlag getProjectFeatureFlag​(com.gooddata.sdk.model.project.Project project,
                                                                                           java.lang.String featureFlagName)
        Returns project feature flag (only project scoped flags, use listFeatureFlags(Project) for aggregated flags from all scopes) for given project by its unique name (aka "key"). It doesn't matter whether feature flag is enabled or not, it'll be included in both cases.
        Parameters:
        project - project, cannot be null
        featureFlagName - unique name (key) of feature flag, cannot be empty
        Returns:
        feature flag for given project with given name (key)
      • createProjectFeatureFlag

        public com.gooddata.sdk.model.featureflag.ProjectFeatureFlag createProjectFeatureFlag​(com.gooddata.sdk.model.project.Project project,
                                                                                              com.gooddata.sdk.model.featureflag.ProjectFeatureFlag flag)
        Creates new feature flag for given project.

        Usually, it doesn't make sense to create feature flag that is disabled because this is the same as having no feature flag at all.

        Parameters:
        project - project for which the feature flag should be created, cannot be null
        flag - feature flag to be created, cannot be null
        Returns:
        created feature flag
      • updateProjectFeatureFlag

        public com.gooddata.sdk.model.featureflag.ProjectFeatureFlag updateProjectFeatureFlag​(com.gooddata.sdk.model.featureflag.ProjectFeatureFlag flag)
        Updates existing project feature flag. Note that it doesn't make sense to update any other property than ProjectFeatureFlag.isEnabled().
        Parameters:
        flag - feature flag to be updated, cannot be null and it has to contain URI
        Returns:
        updated feature flag
      • deleteProjectFeatureFlag

        public void deleteProjectFeatureFlag​(com.gooddata.sdk.model.featureflag.ProjectFeatureFlag flag)
        Deletes existing project feature flag.
        Parameters:
        flag - existing project feature flag with links set properly, cannot be null