/*
* 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 <http://www.gnu.org/licenses/lgpl-2.1.html>.
*/
package org.hibernate.query.spi;
import java.util.Collection;
import javax.persistence.TemporalType;
import org.hibernate.Incubating;
import org.hibernate.query.internal.QueryParameterBindingsImpl;
import org.hibernate.type.Type;
Represents a "parameter list" binding: aka the binding of a collection of values for a single query parameter. At some point these need to be "expanded"; see QueryParameterBindingsImpl.expandListValuedParameters(String)
for details. Author: Steve Ebersole
/**
* Represents a "parameter list" binding: aka the binding of a collection of values for a single
* query parameter. At some point these need to be "expanded"; see {@link QueryParameterBindingsImpl#expandListValuedParameters(String)}
* for details.
*
* @author Steve Ebersole
*/
@Incubating
public interface QueryParameterListBinding<T> {
Sets the parameter binding values. The inherent parameter type (if known) is assumed in regards to the
individual values.
Params: - values – The bind values
/**
* Sets the parameter binding values. The inherent parameter type (if known) is assumed in regards to the
* individual values.
*
* @param values The bind values
*/
void setBindValues(Collection<T> values);
Sets the parameter binding values using the explicit Type in regards to the individual values.
Params: - values – The bind values
- clarifiedType – The explicit Type to use
/**
* Sets the parameter binding values using the explicit Type in regards to the individual values.
*
* @param values The bind values
* @param clarifiedType The explicit Type to use
*/
void setBindValues(Collection<T> values, Type clarifiedType);
Sets the parameter binding value using the explicit TemporalType in regards to the individual values.
Params: - values – The bind values
- clarifiedTemporalType – The temporal type to use
/**Sets the parameter binding value using the explicit TemporalType in regards to the individual values.
*
*
* @param values The bind values
* @param clarifiedTemporalType The temporal type to use
*/
void setBindValues(Collection<T> values, TemporalType clarifiedTemporalType);
Get the values currently bound.
Returns: The currently bound values
/**
* Get the values currently bound.
*
* @return The currently bound values
*/
Collection<T> getBindValues();
Get the Type currently associated with this binding.
Returns: The currently associated Type
/**
* Get the Type currently associated with this binding.
*
* @return The currently associated Type
*/
Type getBindType();
}