Class AbstractParameterDescriptor<T>

java.lang.Object
org.hibernate.engine.query.spi.AbstractParameterDescriptor<T>
All Implemented Interfaces:
Parameter<T>, QueryParameter<T>
Direct Known Subclasses:
NamedParameterDescriptor, OrdinalParameterDescriptor

@Incubating public abstract class AbstractParameterDescriptor<T> extends Object implements QueryParameter<T>
API Note:
Consider this contract (and its subcontracts) as incubating as we transition to 6.0 and SQM.
  • Constructor Details

    • AbstractParameterDescriptor

      public AbstractParameterDescriptor(int[] sourceLocations, BindableType<T> expectedType)
  • Method Details

    • getName

      public String getName()
      Specified by:
      getName in interface Parameter<T>
    • getPosition

      public Integer getPosition()
      Specified by:
      getPosition in interface Parameter<T>
    • getParameterType

      public Class<T> getParameterType()
      Specified by:
      getParameterType in interface Parameter<T>
    • getHibernateType

      public BindableType<T> getHibernateType()
      Description copied from interface: QueryParameter
      Get the Hibernate Type associated with this parameter, if one. May return null.
      Specified by:
      getHibernateType in interface QueryParameter<T>
      Returns:
      The associated Hibernate Type, may be null.
    • getExpectedType

      public BindableType<T> getExpectedType()
    • resetExpectedType

      public void resetExpectedType(BindableType<T> expectedType)
    • allowsMultiValuedBinding

      public boolean allowsMultiValuedBinding()
      Description copied from interface: QueryParameter
      Does this parameter allow multi-valued (collection, array, etc) binding?

      This is only valid for HQL/JPQL and (I think) Criteria queries, and is determined based on the context of the parameters declaration.

      Specified by:
      allowsMultiValuedBinding in interface QueryParameter<T>
      Returns:
      true indicates that multi-valued binding is allowed for this parameter