Interface ConfigurationManager
@ProviderType
public interface ConfigurationManager
Manages reading and writing configurations e.g. for Editor GUIs.
It manages only configurations handled by
ConfigurationResolver
,
no low-level configuration resources managed by ConfigurationResourceResolver
.-
Method Summary
Modifier and TypeMethodDescriptionvoid
deleteConfiguration
(@NotNull Resource resource, @NotNull String configName) Delete configuration or configuration collection data from repository using the inner-most context path as reference.@Nullable ConfigurationData
getConfiguration
(@NotNull Resource resource, @NotNull String configName) Get configuration data for the given context resource and configuration name.@NotNull ConfigurationCollectionData
getConfigurationCollection
(@NotNull Resource resource, @NotNull String configName) Get configuration data collection for the given context resource and configuration name.@Nullable ConfigurationMetadata
getConfigurationMetadata
(@NotNull String configName) Get configuration metadata from any configuration metadata provider.Get all configuration names.@Nullable String
getPersistenceResourcePath
(@NotNull String configResourcePath) Deprecated.@Nullable ConfigurationData
newCollectionItem
(@NotNull Resource resource, @NotNull String configName) Creates a new empty configuration data item for a configuration data collection for the given configuration name.void
persistConfiguration
(@NotNull Resource resource, @NotNull String configName, @NotNull ConfigurationPersistData data) Write configuration data to repository using the inner-most context path as reference.void
persistConfigurationCollection
(@NotNull Resource resource, @NotNull String configName, @NotNull ConfigurationCollectionPersistData data) Write configuration data collection using the inner-most context path as reference.
-
Method Details
-
getConfiguration
@Nullable @Nullable ConfigurationData getConfiguration(@NotNull @NotNull Resource resource, @NotNull @NotNull String configName) Get configuration data for the given context resource and configuration name.- Parameters:
resource
- Context resourceconfigName
- Configuration name- Returns:
- Configuration data. Is null when no configuration resource found and no configuration metadata exists.
-
getConfigurationCollection
@NotNull @NotNull ConfigurationCollectionData getConfigurationCollection(@NotNull @NotNull Resource resource, @NotNull @NotNull String configName) Get configuration data collection for the given context resource and configuration name.- Parameters:
resource
- Context resourceconfigName
- Configuration name- Returns:
- Configuration data collection. Is empty when no configuration resources found.
-
persistConfiguration
void persistConfiguration(@NotNull @NotNull Resource resource, @NotNull @NotNull String configName, @NotNull @NotNull ConfigurationPersistData data) Write configuration data to repository using the inner-most context path as reference.- Parameters:
resource
- Context resourceconfigName
- Configuration namedata
- Configuration data to be stored. All existing properties are erased and replaced with the new ones.
-
persistConfigurationCollection
void persistConfigurationCollection(@NotNull @NotNull Resource resource, @NotNull @NotNull String configName, @NotNull @NotNull ConfigurationCollectionPersistData data) Write configuration data collection using the inner-most context path as reference.- Parameters:
resource
- Context resourceconfigName
- Configuration namedata
- Configuration collection data to be stored. All existing collection entries on this context path level are erased and replaced with the new ones.
-
newCollectionItem
@Nullable @Nullable ConfigurationData newCollectionItem(@NotNull @NotNull Resource resource, @NotNull @NotNull String configName) Creates a new empty configuration data item for a configuration data collection for the given configuration name.- Parameters:
resource
- Context resourceconfigName
- Configuration name- Returns:
- Configuration data. Is null when no configuration metadata exists.
-
deleteConfiguration
Delete configuration or configuration collection data from repository using the inner-most context path as reference.- Parameters:
resource
- Context resourceconfigName
- Configuration name
-
getConfigurationNames
Get all configuration names. The results of all configuration metadata provider implementations are merged.- Returns:
- Configuration names
-
getConfigurationMetadata
@Nullable @Nullable ConfigurationMetadata getConfigurationMetadata(@NotNull @NotNull String configName) Get configuration metadata from any configuration metadata provider.- Parameters:
configName
- Configuration name- Returns:
- Configuration metadata or null if none exists for the given name.
-
getPersistenceResourcePath
@Deprecated @Nullable @Nullable String getPersistenceResourcePath(@NotNull @NotNull String configResourcePath) Deprecated.Please useConfigurationPersistenceStrategyMultiplexer
instead.Rewrite given resource path or configuration name according to current persistence strategies.- Parameters:
configResourcePath
- Resource path or config name- Returns:
- Rewritten resource path or config name
-
ConfigurationPersistenceStrategyMultiplexer
instead.