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

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

/*
 * Hibernate Search, full-text search for your domain model
 *
 * License: GNU Lesser General Public License (LGPL), version 2.1 or later
 * See the lgpl.txt file in the root directory or .
 */
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();

}