public class FeatureFlagService extends AbstractService
AbstractService.OutputStreamResponseExtractor| Modifier and Type | Field and Description |
|---|---|
protected static org.springframework.web.util.UriTemplate |
AGGREGATED_FEATURE_FLAGS_TEMPLATE |
protected static org.springframework.web.util.UriTemplate |
PROJECT_FEATURE_FLAG_TEMPLATE |
protected static org.springframework.web.util.UriTemplate |
PROJECT_FEATURE_FLAGS_TEMPLATE |
mapper, restTemplate| Constructor and Description |
|---|
FeatureFlagService(org.springframework.web.client.RestTemplate restTemplate,
GoodDataSettings settings)
Constructs service for GoodData feature flags management.
|
| Modifier and Type | Method and Description |
|---|---|
ProjectFeatureFlag |
createProjectFeatureFlag(Project project,
ProjectFeatureFlag flag)
Creates new feature flag for given project.
|
void |
deleteProjectFeatureFlag(ProjectFeatureFlag flag)
Deletes existing project feature flag.
|
ProjectFeatureFlag |
getProjectFeatureFlag(Project project,
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"). |
FeatureFlags |
listFeatureFlags(Project project)
Returns aggregated feature flags for given project and current user (aggregates global, project group, project
and user feature flags).
|
ProjectFeatureFlags |
listProjectFeatureFlags(Project project)
Returns project feature flags (only project scoped flags, use
listFeatureFlags(Project) for aggregated
flags from all scopes) for given project. |
ProjectFeatureFlag |
updateProjectFeatureFlag(ProjectFeatureFlag flag)
Updates existing project feature flag.
|
extractDataprotected static final org.springframework.web.util.UriTemplate PROJECT_FEATURE_FLAG_TEMPLATE
protected static final org.springframework.web.util.UriTemplate PROJECT_FEATURE_FLAGS_TEMPLATE
protected static final org.springframework.web.util.UriTemplate AGGREGATED_FEATURE_FLAGS_TEMPLATE
public FeatureFlagService(org.springframework.web.client.RestTemplate restTemplate,
GoodDataSettings settings)
restTemplate - RESTful HTTP Spring templatesettings - settingspublic FeatureFlags listFeatureFlags(Project project)
project - project, cannot be nullpublic ProjectFeatureFlags listProjectFeatureFlags(Project project)
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.project - project, cannot be nullpublic ProjectFeatureFlag getProjectFeatureFlag(Project project, String featureFlagName)
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.project - project, cannot be nullfeatureFlagName - unique name (key) of feature flag, cannot be emptypublic ProjectFeatureFlag createProjectFeatureFlag(Project project, ProjectFeatureFlag flag)
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.
project - project for which the feature flag should be created, cannot be nullflag - feature flag to be created, cannot be nullpublic ProjectFeatureFlag updateProjectFeatureFlag(ProjectFeatureFlag flag)
ProjectFeatureFlag.isEnabled().flag - feature flag to be updated, cannot be null and it has to contain URIpublic void deleteProjectFeatureFlag(ProjectFeatureFlag flag)
flag - existing project feature flag with links set properly, cannot be nullCopyright © 2019. All rights reserved.