Class ParameterBinder

java.lang.Object
com.blazebit.persistence.spring.data.base.query.ParameterBinder
Direct Known Subclasses:
AbstractCriteriaQueryParameterBinder

public abstract class ParameterBinder extends Object
ParameterBinder is used to bind method parameters to a Query. This is usually done whenever an AbstractJpaQuery is executed. Christian Beikov: Copied to be able to share code between Spring Data integrations for 1.x and 2.x.
Since:
1.6.9
Author:
Oliver Gierke, Thomas Darimont, Mark Paluch, Eugen Mayer
  • Constructor Summary

    Constructors
    Constructor
    Description
    ParameterBinder(JpaParameters parameters, Object[] values)
    Creates a new ParameterBinder.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    bind(jakarta.persistence.Query query, JpaParameters.JpaParameter parameter, Object value, int position)
    Perform the actual query parameter binding.
    <T extends jakarta.persistence.Query>
    T
    bind(T query)
    Binds the parameters to the given Query.
    jakarta.persistence.Query
    bindAndPrepare(jakarta.persistence.Query query)
    Binds the parameters to the given query and applies special parameter types (e.g. pagination).
    protected boolean
    canBindParameter(org.springframework.data.repository.query.Parameter parameter)
    Returns true if the given parameter can be bound.
    protected abstract int
     
    org.springframework.data.domain.Pageable
    Returns the Pageable of the parameters, if available.
    org.springframework.data.domain.Sort
    Returns the sort instance to be used for query creation.
    protected Object[]
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ParameterBinder

      public ParameterBinder(JpaParameters parameters, Object[] values)
      Creates a new ParameterBinder.
      Parameters:
      parameters - must not be null.
      values - must not be null.
  • Method Details

    • getPageable

      public org.springframework.data.domain.Pageable getPageable()
      Returns the Pageable of the parameters, if available. Returns null otherwise.
      Returns:
    • getSort

      public org.springframework.data.domain.Sort getSort()
      Returns the sort instance to be used for query creation. Will use a Sort parameter if available or the Sort contained in a Pageable if available. Returns null if no Sort can be found.
      Returns:
    • bind

      public <T extends jakarta.persistence.Query> T bind(T query)
      Binds the parameters to the given Query.
      Parameters:
      query -
      Returns:
    • canBindParameter

      protected boolean canBindParameter(org.springframework.data.repository.query.Parameter parameter)
      Returns true if the given parameter can be bound.
      Parameters:
      parameter -
      Returns:
    • bind

      protected void bind(jakarta.persistence.Query query, JpaParameters.JpaParameter parameter, Object value, int position)
      Perform the actual query parameter binding.
      Parameters:
      query -
      parameter -
      value -
      position -
    • bindAndPrepare

      public jakarta.persistence.Query bindAndPrepare(jakarta.persistence.Query query)
      Binds the parameters to the given query and applies special parameter types (e.g. pagination).
      Parameters:
      query -
      Returns:
    • getOffset

      protected abstract int getOffset()
    • getValues

      protected Object[] getValues()