public static <T> ClientFactoryOption<T> define(String name, T defaultValue) {
        return define(name, defaultValue, Function.identity(), (oldValue, newValue) -> newValue);
    }
Defines a new {@link ClientFactoryOption} of the specified name and default value.

@param name the name of the option.
@param defaultValue the default value of the option, which will be used when unspecified.

@throws IllegalStateException if an option with the specified name exists already.
core/src/main/java/com/linecorp/armeria/client/ClientFactoryOption.java