Package org.apache.flink.configuration
Class DelegatingConfiguration
- java.lang.Object
-
- org.apache.flink.api.common.ExecutionConfig.GlobalJobParameters
-
- org.apache.flink.configuration.Configuration
-
- org.apache.flink.configuration.DelegatingConfiguration
-
- All Implemented Interfaces:
Serializable
,Cloneable
,ReadableConfig
,WritableConfig
,IOReadableWritable
public final class DelegatingConfiguration extends Configuration
A configuration that manages a subset of keys with a common prefix from a given configuration.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.flink.configuration.Configuration
confData
-
-
Constructor Summary
Constructors Constructor Description DelegatingConfiguration()
Default constructor for serialization.DelegatingConfiguration(Configuration backingConfig, String prefix)
Creates a new delegating configuration which stores its key/value pairs in the given configuration using the specifies key prefix.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addAll(Configuration other)
void
addAll(Configuration other, String prefix)
Adds all entries from the given configuration into this configuration.void
addAllToProperties(Properties props)
Adds all entries in thisConfiguration
to the givenProperties
.Configuration
clone()
boolean
contains(ConfigOption<?> configOption)
Checks whether there is an entry for the given config option.boolean
containsKey(String key)
Checks whether there is an entry with the specified key.boolean
equals(Object obj)
<T> T
get(ConfigOption<T> option)
Please check the java doc ofConfiguration.getRawValueFromOption(ConfigOption)
.<T> T
get(ConfigOption<T> configOption, T overrideDefault)
Returns the value associated with the given config option as a T.byte[]
getBytes(String key, byte[] defaultValue)
Returns the value associated with the given key as a byte array.<T extends Enum<T>>
TgetEnum(Class<T> enumClass, ConfigOption<String> configOption)
Returns the value associated with the given config option as an enum.<T> Optional<T>
getOptional(ConfigOption<T> option)
Reads a value using the metadata included inConfigOption
.String
getString(String key, String defaultValue)
Returns the value associated with the given key as a string.String
getValue(ConfigOption<?> configOption)
Returns the value associated with the given config option as a string.int
hashCode()
Set<String>
keySet()
Returns the keys of all key/value pairs stored inside this configuration object.void
read(DataInputView in)
Reads the object's internal data from the given data input view.<T> boolean
removeConfig(ConfigOption<T> configOption)
Removes given config option from the configuration.boolean
removeKey(String key)
Removes given key from the configuration.<T> Configuration
set(ConfigOption<T> option, T value)
Stores a given value using the metadata included in theConfigOption
.void
setBytes(String key, byte[] bytes)
Adds the given byte array to the configuration object.void
setString(String key, String value)
Adds the given key/value pair to the configuration object.Map<String,String>
toFileWritableMap()
Convert Config into aMap<String, String>
representation.Map<String,String>
toMap()
Convert UserConfig into aMap<String, String>
representation.String
toString()
void
write(DataOutputView out)
Writes the object's internal data to the given data output view.-
Methods inherited from class org.apache.flink.configuration.Configuration
fromMap
-
-
-
-
Constructor Detail
-
DelegatingConfiguration
public DelegatingConfiguration()
Default constructor for serialization. Creates an empty delegating configuration.
-
DelegatingConfiguration
public DelegatingConfiguration(Configuration backingConfig, String prefix)
Creates a new delegating configuration which stores its key/value pairs in the given configuration using the specifies key prefix.- Parameters:
backingConfig
- The configuration holding the actual config data.prefix
- The prefix prepended to all config keys.
-
-
Method Detail
-
getString
public String getString(String key, String defaultValue)
Description copied from class:Configuration
Returns the value associated with the given key as a string. We encourage users and developers to always use ConfigOption for getting the configurations if possible, for its rich description, type, default-value and other supports. The string-key-based getter should only be used when ConfigOption is not applicable, e.g., the key is programmatically generated in runtime.- Overrides:
getString
in classConfiguration
- Parameters:
key
- the key pointing to the associated valuedefaultValue
- the default value which is returned in case there is no value associated with the given key- Returns:
- the (default) value associated with the given key
-
setString
public void setString(String key, String value)
Description copied from class:Configuration
Adds the given key/value pair to the configuration object. We encourage users and developers to always use ConfigOption for setting the configurations if possible, for its rich description, type, default-value and other supports. The string-key-based setter should only be used when ConfigOption is not applicable, e.g., the key is programmatically generated in runtime.- Overrides:
setString
in classConfiguration
- Parameters:
key
- the key of the key/value pair to be addedvalue
- the value of the key/value pair to be added
-
getBytes
public byte[] getBytes(String key, byte[] defaultValue)
Description copied from class:Configuration
Returns the value associated with the given key as a byte array.- Overrides:
getBytes
in classConfiguration
- Parameters:
key
- The key pointing to the associated value.defaultValue
- The default value which is returned in case there is no value associated with the given key.- Returns:
- the (default) value associated with the given key.
-
setBytes
public void setBytes(String key, byte[] bytes)
Description copied from class:Configuration
Adds the given byte array to the configuration object. If key isnull
then nothing is added.- Overrides:
setBytes
in classConfiguration
- Parameters:
key
- The key under which the bytes are added.bytes
- The bytes to be added.
-
getValue
public String getValue(ConfigOption<?> configOption)
Description copied from class:Configuration
Returns the value associated with the given config option as a string.- Overrides:
getValue
in classConfiguration
- Parameters:
configOption
- The configuration option- Returns:
- the (default) value associated with the given config option
-
getEnum
public <T extends Enum<T>> T getEnum(Class<T> enumClass, ConfigOption<String> configOption)
Description copied from class:Configuration
Returns the value associated with the given config option as an enum.- Overrides:
getEnum
in classConfiguration
- Parameters:
enumClass
- The return enum classconfigOption
- The configuration option
-
addAllToProperties
public void addAllToProperties(Properties props)
Description copied from class:Configuration
Adds all entries in thisConfiguration
to the givenProperties
.- Overrides:
addAllToProperties
in classConfiguration
-
addAll
public void addAll(Configuration other)
- Overrides:
addAll
in classConfiguration
-
addAll
public void addAll(Configuration other, String prefix)
Description copied from class:Configuration
Adds all entries from the given configuration into this configuration. The keys are prepended with the given prefix.- Overrides:
addAll
in classConfiguration
- Parameters:
other
- The configuration whose entries are added to this configuration.prefix
- The prefix to prepend.
-
toString
public String toString()
- Overrides:
toString
in classConfiguration
-
keySet
public Set<String> keySet()
Description copied from class:Configuration
Returns the keys of all key/value pairs stored inside this configuration object.- Overrides:
keySet
in classConfiguration
- Returns:
- the keys of all key/value pairs stored inside this configuration object
-
clone
public Configuration clone()
- Overrides:
clone
in classConfiguration
-
toMap
public Map<String,String> toMap()
Description copied from class:ExecutionConfig.GlobalJobParameters
Convert UserConfig into aMap<String, String>
representation. This can be used by the runtime, for example for presenting the user config in the web frontend.- Specified by:
toMap
in interfaceReadableConfig
- Overrides:
toMap
in classConfiguration
- Returns:
- Key/Value representation of the UserConfig
-
toFileWritableMap
public Map<String,String> toFileWritableMap()
Description copied from class:Configuration
Convert Config into aMap<String, String>
representation.NOTE: This method is extracted from the
Configuration.toMap()
method and should be called when Config needs to be written to a file.This method ensures the value is properly escaped when writing the key-value pair to a standard YAML file.
- Overrides:
toFileWritableMap
in classConfiguration
-
removeConfig
public <T> boolean removeConfig(ConfigOption<T> configOption)
Description copied from class:Configuration
Removes given config option from the configuration.- Overrides:
removeConfig
in classConfiguration
- Type Parameters:
T
- Type of the config option- Parameters:
configOption
- config option to remove- Returns:
- true is config has been removed, false otherwise
-
removeKey
public boolean removeKey(String key)
Description copied from class:Configuration
Removes given key from the configuration.- Overrides:
removeKey
in classConfiguration
- Parameters:
key
- key of a config option to remove- Returns:
- true is config has been removed, false otherwise
-
containsKey
public boolean containsKey(String key)
Description copied from class:Configuration
Checks whether there is an entry with the specified key.- Overrides:
containsKey
in classConfiguration
- Parameters:
key
- key of entry- Returns:
- true if the key is stored, false otherwise
-
contains
public boolean contains(ConfigOption<?> configOption)
Description copied from class:Configuration
Checks whether there is an entry for the given config option.- Overrides:
contains
in classConfiguration
- Parameters:
configOption
- The configuration option- Returns:
- true if a valid (current or deprecated) key of the config option is stored, false otherwise
-
get
public <T> T get(ConfigOption<T> option)
Description copied from class:Configuration
Please check the java doc ofConfiguration.getRawValueFromOption(ConfigOption)
. If no keys are found inConfiguration
, default value of the given option will return. Please make sure there will be at least one value available. Otherwise, a NPE will be thrown by Flink when the value is used.NOTE: current logic is not able to get the default value of the fallback key's ConfigOption, in case the given ConfigOption has no default value. If you want to use fallback key, please make sure its value could be found in
Configuration
at runtime.- Specified by:
get
in interfaceReadableConfig
- Overrides:
get
in classConfiguration
- Type Parameters:
T
- type of the value to read- Parameters:
option
- metadata of the option to read- Returns:
- the value of the given option
- See Also:
ReadableConfig.getOptional(ConfigOption)
-
get
public <T> T get(ConfigOption<T> configOption, T overrideDefault)
Description copied from class:Configuration
Returns the value associated with the given config option as a T. If no value is mapped under any key of the option, it returns the specified default instead of the option's default value.- Overrides:
get
in classConfiguration
- Parameters:
configOption
- The configuration optionoverrideDefault
- The value to return if no value was mapper for any key of the option- Returns:
- the configured value associated with the given config option, or the overrideDefault
-
getOptional
public <T> Optional<T> getOptional(ConfigOption<T> option)
Description copied from interface:ReadableConfig
Reads a value using the metadata included inConfigOption
. In contrast toReadableConfig.get(ConfigOption)
returnsOptional.empty()
if value not present.- Specified by:
getOptional
in interfaceReadableConfig
- Overrides:
getOptional
in classConfiguration
- Type Parameters:
T
- type of the value to read- Parameters:
option
- metadata of the option to read- Returns:
- read value or
Optional.empty()
if not found - See Also:
ReadableConfig.get(ConfigOption)
-
set
public <T> Configuration set(ConfigOption<T> option, T value)
Description copied from interface:WritableConfig
Stores a given value using the metadata included in theConfigOption
. The value should be readable back throughReadableConfig
.- Specified by:
set
in interfaceWritableConfig
- Overrides:
set
in classConfiguration
- Type Parameters:
T
- type of the value to be stored- Parameters:
option
- metadata informationvalue
- value to be stored- Returns:
- instance of this configuration for fluent API
-
read
public void read(DataInputView in) throws IOException
Description copied from interface:IOReadableWritable
Reads the object's internal data from the given data input view.- Specified by:
read
in interfaceIOReadableWritable
- Overrides:
read
in classConfiguration
- Parameters:
in
- the input view to read the data from- Throws:
IOException
- thrown if any error occurs while reading from the input stream
-
write
public void write(DataOutputView out) throws IOException
Description copied from interface:IOReadableWritable
Writes the object's internal data to the given data output view.- Specified by:
write
in interfaceIOReadableWritable
- Overrides:
write
in classConfiguration
- Parameters:
out
- the output view to receive the data.- Throws:
IOException
- thrown if any error occurs while writing to the output stream
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classConfiguration
-
equals
public boolean equals(Object obj)
- Overrides:
equals
in classConfiguration
-
-