public Builder conditional()

in datasource-client/src/main/java/org/apache/seatunnel/datasource/configuration/util/OptionRule.java [196:212]


        public <T> Builder conditional(@NonNull Option<T> conditionalOption, @NonNull T expectValue, @NonNull Option<?>... requiredOptions) {
            for (Option<?> o : requiredOptions) {
                verifyDuplicate(o, "ConditionalOption");
                verifyRequiredOptionDefaultValue(o);
            }

            verifyConditionalExists(conditionalOption);

            /**
             * Each parameter can only be controlled by one other parameter
             */
            Expression expression = Expression.of(Condition.of(conditionalOption, expectValue));

            this.requiredOptions.add(RequiredOption.ConditionalRequiredOptions.of(expression,
                new ArrayList<>(Arrays.asList(requiredOptions))));
            return this;
        }