org.hibernate.param

Class CollectionFilterKeyParameterSpecification

Implemented Interfaces:
ParameterSpecification

public class CollectionFilterKeyParameterSpecification
extends java.lang.Object
implements ParameterSpecification

A specialized ParameterSpecification impl for dealing with a collection-key as part of a collection filter compilation.
Author:
Steve Ebersole

Constructor Summary

CollectionFilterKeyParameterSpecification(String collectionRole, Type keyType, int queryParameterPosition)
Creates a specialized collection-filter collection-key parameter spec.

Method Summary

int
bind(PreparedStatement statement, QueryParameters qp, SessionImplementor session, int position)
Bind the appropriate value into the given statement at the specified position.
Type
getExpectedType()
Get the type which we are expeting for a bind into this parameter based on translated contextual information.
String
renderDisplayInfo()
Render this parameter into displayable info (for logging, etc).
void
setExpectedType(Type expectedType)
Injects the expected type.

Constructor Details

CollectionFilterKeyParameterSpecification

public CollectionFilterKeyParameterSpecification(String collectionRole,
                                                 Type keyType,
                                                 int queryParameterPosition)
Creates a specialized collection-filter collection-key parameter spec.
Parameters:
collectionRole - The collection role being filtered.
keyType - The mapped collection-key type.
queryParameterPosition - The position within QueryParameters where we can find the appropriate param value to bind.

Method Details

bind

public int bind(PreparedStatement statement,
                QueryParameters qp,
                SessionImplementor session,
                int position)
            throws SQLException
Bind the appropriate value into the given statement at the specified position.
Specified by:
bind in interface ParameterSpecification
Parameters:
statement - The statement into which the value should be bound.
qp - The defined values for the current query execution.
session - The session against which the current execution is occuring.
position - The position from which to start binding value(s).
Returns:
The number of sql bind positions "eaten" by this bind operation.

getExpectedType

public Type getExpectedType()
Get the type which we are expeting for a bind into this parameter based on translated contextual information.
Specified by:
getExpectedType in interface ParameterSpecification
Returns:
The expected type.

renderDisplayInfo

public String renderDisplayInfo()
Render this parameter into displayable info (for logging, etc).
Specified by:
renderDisplayInfo in interface ParameterSpecification
Returns:
The displayable info.

setExpectedType

public void setExpectedType(Type expectedType)
Injects the expected type. Called during translation.
Specified by:
setExpectedType in interface ParameterSpecification
Parameters:
expectedType - The type to expect.