Package net.solarnetwork.service
Interface IdentifiableConfiguration
- All Known Implementing Classes:
BasicIdentifiableConfiguration
public interface IdentifiableConfiguration
API for a user-supplied set of configuration to use with some
Identifiable service.- Since:
- 1.42
- Version:
- 1.1
- Author:
- matt
-
Method Summary
Modifier and TypeMethodDescriptiongetName()Get a name for this configuration.Get the unique identifier for the service this configuration is associated with.Get a map of properties to pass to the service in order to perform actions.static <T extends IdentifiableConfiguration>
TmaskConfiguration(T config, ConcurrentMap<String, List<SettingSpecifier>> serviceSettings, Function<Void, Iterable<? extends SettingSpecifierProvider>> settingProviderFunction) Mask sensitive information in a set of configurations.static <T extends IdentifiableConfiguration>
List<T>maskConfigurations(List<T> configurations, ConcurrentMap<String, List<SettingSpecifier>> serviceSettings, Function<Void, Iterable<? extends SettingSpecifierProvider>> settingProviderFunction) Mask sensitive information in a set of configurations.
-
Method Details
-
getName
String getName()Get a name for this configuration.This is expected to be a user-supplied name.
- Returns:
- a configuration name
-
getServiceIdentifier
String getServiceIdentifier()Get the unique identifier for the service this configuration is associated with.This value will correspond to some
Identifiable.getUid()value.- Returns:
- the service type identifier
-
getServiceProperties
Get a map of properties to pass to the service in order to perform actions.It is expected this map would contain user-supplied runtime configuration such as credentials to use, host name, etc.
- Returns:
- the runtime properties to pass to the service
-
maskConfigurations
static <T extends IdentifiableConfiguration> List<T> maskConfigurations(List<T> configurations, ConcurrentMap<String, List<SettingSpecifier>> serviceSettings, Function<Void, Iterable<? extends SettingSpecifierProvider>> settingProviderFunction) Mask sensitive information in a set of configurations.- Type Parameters:
T- the configuration type- Parameters:
configurations- the configurationsserviceSettings- a service settings cachesettingProviderFunction- a function to apply to settings to perform the masking- Returns:
- the masked configurations
- Since:
- 1.1
-
maskConfiguration
static <T extends IdentifiableConfiguration> T maskConfiguration(T config, ConcurrentMap<String, List<SettingSpecifier>> serviceSettings, Function<Void, Iterable<? extends SettingSpecifierProvider>> settingProviderFunction) Mask sensitive information in a set of configurations.- Type Parameters:
T- the configuration type- Parameters:
config- the configurationserviceSettings- a service settings cachesettingProviderFunction- a function to apply to settings to perform the masking- Returns:
- the masked configuration
- Since:
- 1.1
-