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

org.hibernate.boot.registry.selector.StrategyRegistration Maven / Gradle / Ivy

The newest version!
/*
 * Hibernate, Relational Persistence for Idiomatic Java
 *
 * 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.boot.registry.selector;

/**
 * Describes the registration of a named strategy implementation.  A strategy + selector name should resolve
 * to a single implementation.
 *
 * @param  The type of the strategy described by this implementation registration.
 *
 * @author Steve Ebersole
 */
public interface StrategyRegistration {
	/**
	 * The strategy role.  Best practice says this should be an interface.
	 *
	 * @return The strategy contract/role.
	 */
	public Class getStrategyRole();

	/**
	 * Any registered names for this strategy registration.
	 *
	 * @return The registered selection names.
	 */
	public Iterable getSelectorNames();

	/**
	 * The strategy implementation class.
	 *
	 * @return The strategy implementation.
	 */
	public Class getStrategyImplementation();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy