Package org.hibernate.procedure.internal
Class ProcedureParameterMetadataImpl
- java.lang.Object
-
- org.hibernate.procedure.internal.ProcedureParameterMetadataImpl
-
- All Implemented Interfaces:
ParameterMetadata,ParameterMetadataImplementor,ProcedureParameterMetadataImplementor
public class ProcedureParameterMetadataImpl extends Object implements ProcedureParameterMetadataImplementor
Specialized ParameterMetadataImplementor for callable queries implementing expandable parameter registrations
-
-
Constructor Summary
Constructors Constructor Description ProcedureParameterMetadataImpl()ProcedureParameterMetadataImpl(NamedCallableQueryMemento memento, SharedSessionContractImplementor session)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancontainsReference(QueryParameter parameter)Is this parameter reference registered in this collection?ProcedureParameterImplementor<?>findQueryParameter(int positionLabel)Find the QueryParameter registered under the given position-label, if one.ProcedureParameterImplementor<?>findQueryParameter(String name)Find the QueryParameter registered under the given name, if one.Set<String>getNamedParameterNames()Return the names of all named parameters of the query.Set<Integer>getOrdinalParameterLabels()intgetParameterCount()The total number of registered parameters.ParameterStrategygetParameterStrategy()ProcedureParameterImplementor<?>getQueryParameter(int positionLabel)Get the QueryParameter reference registered here under the given position-label.ProcedureParameterImplementor<?>getQueryParameter(String name)Get the QueryParameter reference registered here under the given name.Set<? extends QueryParameter<?>>getRegistrations()List<? extends ProcedureParameterImplementor<?>>getRegistrationsAsList()booleanhasAnyMatching(Predicate<QueryParameterImplementor<?>> filter)booleanhasNamedParameters()Does this parameter set contain any named parameters?booleanhasPositionalParameters()Does this parameter set contain any positional parameters?voidregisterParameter(ProcedureParameterImplementor parameter)<P> ProcedureParameterImplementor<P>resolve(Parameter<P> param)A deeper resolution attempt from a JPA parameter reference to Hibernate's contract.voidvisitParameters(Consumer<QueryParameterImplementor<?>> consumer)voidvisitRegistrations(Consumer<? extends QueryParameter<?>> action)General purpose visitation using functional-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.query.ParameterMetadata
getInferredParameterType
-
Methods inherited from interface org.hibernate.query.spi.ParameterMetadataImplementor
collectAllParameters
-
-
-
-
Constructor Detail
-
ProcedureParameterMetadataImpl
public ProcedureParameterMetadataImpl()
-
ProcedureParameterMetadataImpl
public ProcedureParameterMetadataImpl(NamedCallableQueryMemento memento, SharedSessionContractImplementor session)
-
-
Method Detail
-
registerParameter
public void registerParameter(ProcedureParameterImplementor parameter)
-
visitParameters
public void visitParameters(Consumer<QueryParameterImplementor<?>> consumer)
- Specified by:
visitParametersin interfaceParameterMetadataImplementor
-
hasNamedParameters
public boolean hasNamedParameters()
Description copied from interface:ParameterMetadataDoes this parameter set contain any named parameters?- Specified by:
hasNamedParametersin interfaceParameterMetadata- Returns:
trueif there are named parameters;falseotherwise.
-
hasPositionalParameters
public boolean hasPositionalParameters()
Description copied from interface:ParameterMetadataDoes this parameter set contain any positional parameters?- Specified by:
hasPositionalParametersin interfaceParameterMetadata- Returns:
trueif there are positional parameters;falseotherwise.
-
getNamedParameterNames
public Set<String> getNamedParameterNames()
Description copied from interface:ParameterMetadataReturn the names of all named parameters of the query.- Specified by:
getNamedParameterNamesin interfaceParameterMetadata- Returns:
- the parameter names
-
getParameterCount
public int getParameterCount()
Description copied from interface:ParameterMetadataThe total number of registered parameters.- Specified by:
getParameterCountin interfaceParameterMetadata
-
containsReference
public boolean containsReference(QueryParameter parameter)
Description copied from interface:ParameterMetadataIs this parameter reference registered in this collection?- Specified by:
containsReferencein interfaceParameterMetadata
-
getParameterStrategy
public ParameterStrategy getParameterStrategy()
-
hasAnyMatching
public boolean hasAnyMatching(Predicate<QueryParameterImplementor<?>> filter)
- Specified by:
hasAnyMatchingin interfaceParameterMetadataImplementor
-
findQueryParameter
public ProcedureParameterImplementor<?> findQueryParameter(String name)
Description copied from interface:ParameterMetadataFind the QueryParameter registered under the given name, if one.- Specified by:
findQueryParameterin interfaceParameterMetadata- Specified by:
findQueryParameterin interfaceParameterMetadataImplementor- Returns:
- The registered match, or
nullis there is no match - See Also:
ParameterMetadata.getQueryParameter(String)
-
getQueryParameter
public ProcedureParameterImplementor<?> getQueryParameter(String name)
Description copied from interface:ParameterMetadataGet the QueryParameter reference registered here under the given name.- Specified by:
getQueryParameterin interfaceParameterMetadata- Specified by:
getQueryParameterin interfaceParameterMetadataImplementor- Returns:
- The registered match. Never
null
-
findQueryParameter
public ProcedureParameterImplementor<?> findQueryParameter(int positionLabel)
Description copied from interface:ParameterMetadataFind the QueryParameter registered under the given position-label, if one.- Specified by:
findQueryParameterin interfaceParameterMetadata- Specified by:
findQueryParameterin interfaceParameterMetadataImplementor- Returns:
- The registered match, or
nullis there is no match - See Also:
ParameterMetadata.getQueryParameter(int)
-
getQueryParameter
public ProcedureParameterImplementor<?> getQueryParameter(int positionLabel)
Description copied from interface:ParameterMetadataGet the QueryParameter reference registered here under the given position-label.- Specified by:
getQueryParameterin interfaceParameterMetadata- Specified by:
getQueryParameterin interfaceParameterMetadataImplementor- Returns:
- The registered match. Never
null
-
resolve
public <P> ProcedureParameterImplementor<P> resolve(Parameter<P> param)
Description copied from interface:ParameterMetadataA deeper resolution attempt from a JPA parameter reference to Hibernate's contract. Generally should return the same param reference. According to the spec, only Parameter references obtained from the provider are valid.- Specified by:
resolvein interfaceParameterMetadata- Specified by:
resolvein interfaceParameterMetadataImplementor
-
getRegistrations
public Set<? extends QueryParameter<?>> getRegistrations()
- Specified by:
getRegistrationsin interfaceParameterMetadata
-
getRegistrationsAsList
public List<? extends ProcedureParameterImplementor<?>> getRegistrationsAsList()
- Specified by:
getRegistrationsAsListin interfaceProcedureParameterMetadataImplementor
-
visitRegistrations
public void visitRegistrations(Consumer<? extends QueryParameter<?>> action)
Description copied from interface:ParameterMetadataGeneral purpose visitation using functional- Specified by:
visitRegistrationsin interfaceParameterMetadata- Specified by:
visitRegistrationsin interfaceParameterMetadataImplementor
-
getOrdinalParameterLabels
public Set<Integer> getOrdinalParameterLabels()
- Specified by:
getOrdinalParameterLabelsin interfaceParameterMetadata
-
-