Class Parameters<S extends Parameters<S,T> , T extends Parameter>
java.lang.Object
org.springframework.data.repository.query.Parameters<S,T>
- All Implemented Interfaces:
Iterable<T>
,Supplier<Stream<T>>
,Streamable<T>
- Direct Known Subclasses:
DefaultParameters
public abstract class Parameters<S extends Parameters<S,T>, T extends Parameter>
extends Object
implements Streamable<T>
Abstracts method parameters that have to be bound to query parameters or applied to the query independently.
- Author:
- Oliver Gierke, Christoph Strobl, Johannes Englmeier
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
Parameters
(List<T> originals) Creates a newParameters
instance with the givenParameter
s put into new context.protected
Parameters
(ParametersSource parametersSource, Function<MethodParameter, T> parameterFactory) Creates a newParameters
instance for the givenMethod
andFunction
to create aParameter
instance from aMethodParameter
. -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract S
createFrom
(List<T> parameters) getBindableParameter
(int bindableIndex) Returns a bindable parameter with the given index.Returns aParameters
instance with effectively all special parameters removed.int
Returns the index of the parameter that represents the dynamic projection type.int
int
Returns the number of parameters.int
getParameter
(int index) Returns the parameter with the given index.int
Returns the index of theScore
argument.int
int
Returns the index of theScrollPosition
Method
parameter if available.int
int
Returns the index of theVector
argument.boolean
Returns whether a parameter expressing a dynamic projection exists.boolean
Returns whether the method theParameters
was created for contains aLimit
argument.boolean
Returns whether the method theParameters
was created for contains aPageable
argument.boolean
hasParameterAt
(int position) Returns whether we have a parameter at the given position.boolean
Returns whether the method theParameters
was created for contains aScore
argument.boolean
boolean
Returns whether the method theParameters
was created for contains aScrollPosition
argument.boolean
Returns whether the method theParameters
was created for contains aSort
argument.boolean
boolean
Returns whether the method theParameters
was created for contains aVector
argument.static boolean
isBindable
(Class<?> type) Returns whether the given type is a bindable parameter.iterator()
boolean
Returns whether we potentially find aSort
parameter in the parameters.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Field Details
-
TYPES
-
-
Constructor Details
-
Parameters
protected Parameters(ParametersSource parametersSource, Function<MethodParameter, T> parameterFactory) Creates a newParameters
instance for the givenMethod
andFunction
to create aParameter
instance from aMethodParameter
.- Parameters:
parametersSource
- must not be null.parameterFactory
- must not be null.- Since:
- 3.2.1
-
Parameters
Creates a newParameters
instance with the givenParameter
s put into new context.- Parameters:
originals
-
-
-
Method Details
-
hasVectorParameter
public boolean hasVectorParameter()Returns whether the method theParameters
was created for contains aVector
argument.- Returns:
- Since:
- 4.0
-
getVectorIndex
public int getVectorIndex()Returns the index of theVector
argument.- Returns:
- the argument index or -1 if none defined.
- Since:
- 4.0
-
hasScoreParameter
public boolean hasScoreParameter()Returns whether the method theParameters
was created for contains aScore
argument.- Returns:
- Since:
- 4.0
-
getScoreIndex
public int getScoreIndex()Returns the index of theScore
argument.- Returns:
- the argument index or -1 if none defined.
- Since:
- 4.0
-
hasScoreRangeParameter
public boolean hasScoreRangeParameter()- Returns:
- Since:
- 4.0
-
getScoreRangeIndex
-
hasScrollPositionParameter
public boolean hasScrollPositionParameter()Returns whether the method theParameters
was created for contains aScrollPosition
argument.- Returns:
- Since:
- 3.1
-
getScrollPositionIndex
public int getScrollPositionIndex()Returns the index of theScrollPosition
Method
parameter if available. Will return -1 if there is noScrollPosition
argument in theMethod
's parameter list.- Returns:
- the scrollPositionIndex
- Since:
- 3.1
-
hasPageableParameter
public boolean hasPageableParameter()Returns whether the method theParameters
was created for contains aPageable
argument.- Returns:
-
getPageableIndex
-
getSortIndex
-
hasSortParameter
public boolean hasSortParameter()Returns whether the method theParameters
was created for contains aSort
argument.- Returns:
-
hasLimitParameter
public boolean hasLimitParameter()Returns whether the method theParameters
was created for contains aLimit
argument.- Returns:
- Since:
- 3.2
-
getLimitIndex
-
getDynamicProjectionIndex
public int getDynamicProjectionIndex()Returns the index of the parameter that represents the dynamic projection type. Will return -1 if no such parameter exists.- Returns:
-
hasDynamicProjection
public boolean hasDynamicProjection()Returns whether a parameter expressing a dynamic projection exists.- Returns:
-
potentiallySortsDynamically
public boolean potentiallySortsDynamically()Returns whether we potentially find aSort
parameter in the parameters.- Returns:
-
getParameter
Returns the parameter with the given index.- Parameters:
index
-- Returns:
-
hasParameterAt
public boolean hasParameterAt(int position) Returns whether we have a parameter at the given position.- Parameters:
position
-- Returns:
-
hasSpecialParameter
-
getNumberOfParameters
public int getNumberOfParameters()Returns the number of parameters.- Returns:
-
getBindableParameters
Returns aParameters
instance with effectively all special parameters removed.- Returns:
- See Also:
-
createFrom
-
getBindableParameter
-
isBindable
Returns whether the given type is a bindable parameter.- Parameters:
type
-- Returns:
-
iterator
-