public ConfigOption<T> withDeprecatedKeys(String... deprecatedKeys) {
        final Stream<FallbackKey> newDeprecatedKeys = Arrays.stream(deprecatedKeys)
                .map(FallbackKey::createDeprecatedKey);
        final Stream<FallbackKey> currentAlternativeKeys = Arrays.stream(this.fallbackKeys);

        // put deprecated keys last so that they are de-prioritized
        final FallbackKey[] mergedAlternativeKeys = Stream
                .concat(currentAlternativeKeys, newDeprecatedKeys)
                .toArray(FallbackKey[]::new);
        return new ConfigOption<>(key, description, defaultValue, mergedAlternativeKeys);
    }
Creates a new config option, using this option's key and default value, and adding the given
deprecated keys.

<p>When obtaining a value from the configuration via
{@link Configuration#getValue(ConfigOption)}, the deprecated keys will be checked in the
order provided to this method. The first key for which a value is found will be used - that
value will be returned.</p>

@param deprecatedKeys The deprecated keys, in the order in which they should be
        checked.
@return A new config options, with the given deprecated keys.
inlong-sort/sort-common/src/main/java/org/apache/inlong/sort/configuration/ConfigOption.java