All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.hibernate.search.engine.cfg.spi.OptionalPropertyContext Maven / Gradle / Ivy

There is a newer version: 8.0.0.Alpha1
Show newest version
/*
 * SPDX-License-Identifier: Apache-2.0
 * Copyright Red Hat Inc. and Hibernate Authors
 */
package org.hibernate.search.engine.cfg.spi;

import java.util.List;
import java.util.function.Consumer;
import java.util.function.Supplier;
import java.util.function.UnaryOperator;

public interface OptionalPropertyContext {

	OptionalPropertyContext substitute(UnaryOperator substitution);

	OptionalPropertyContext substitute(Object expected, Object replacement);

	OptionalPropertyContext> multivalued();

	OptionalPropertyContext validate(Consumer validation);

	DefaultedPropertyContext withDefault(T defaultValue);

	DefaultedPropertyContext withDefault(Supplier defaultValueSupplier);

	OptionalConfigurationProperty build();

}