|
27 | 27 | * @author Steve Ebersole |
28 | 28 | */ |
29 | 29 | public class JpaCriteriaParameter<T> |
30 | | - extends AbstractSqmExpression<T> |
31 | | - implements SqmParameter<T>, QueryParameterImplementor<T> { |
| 30 | + extends AbstractSqmParameter<T> |
| 31 | + implements QueryParameterImplementor<T> { |
32 | 32 | private final String name; |
33 | | - private boolean allowsMultiValuedBinding; |
34 | 33 |
|
35 | 34 | public JpaCriteriaParameter( |
36 | 35 | String name, |
37 | 36 | BindableType<? super T> type, |
38 | 37 | boolean allowsMultiValuedBinding, |
39 | 38 | NodeBuilder nodeBuilder) { |
40 | | - super( toSqmType( type, nodeBuilder ), nodeBuilder ); |
| 39 | + super( allowsMultiValuedBinding, toSqmType( type, nodeBuilder ), nodeBuilder ); |
41 | 40 | this.name = name; |
42 | | - this.allowsMultiValuedBinding = allowsMultiValuedBinding; |
43 | 41 | } |
44 | 42 |
|
45 | 43 | protected JpaCriteriaParameter(JpaCriteriaParameter<T> original) { |
46 | | - super( original.getNodeType(), original.nodeBuilder() ); |
| 44 | + super( original.allowMultiValuedBinding(), original.getNodeType(), original.nodeBuilder() ); |
47 | 45 | this.name = original.name; |
48 | | - this.allowsMultiValuedBinding = original.allowsMultiValuedBinding; |
49 | 46 | } |
50 | 47 |
|
51 | 48 | private static <T> SqmExpressible<T> toSqmType(BindableType<T> type, NodeBuilder nodeBuilder) { |
@@ -84,17 +81,7 @@ public Integer getTupleLength() { |
84 | 81 |
|
85 | 82 | @Override |
86 | 83 | public boolean allowsMultiValuedBinding() { |
87 | | - return allowsMultiValuedBinding; |
88 | | - } |
89 | | - |
90 | | - @Override |
91 | | - public void disallowMultiValuedBinding() { |
92 | | - allowsMultiValuedBinding = false; |
93 | | - } |
94 | | - |
95 | | - @Override |
96 | | - public boolean allowMultiValuedBinding() { |
97 | | - return allowsMultiValuedBinding(); |
| 84 | + return allowMultiValuedBinding(); |
98 | 85 | } |
99 | 86 |
|
100 | 87 | @Override |
@@ -129,11 +116,6 @@ public Class<T> getParameterType() { |
129 | 116 | return nodeType == null ? null : nodeType.getExpressibleJavaType().getJavaTypeClass(); |
130 | 117 | } |
131 | 118 |
|
132 | | - @Override |
133 | | - protected void internalApplyInferableType(SqmExpressible<?> newType) { |
134 | | - super.internalApplyInferableType( newType ); |
135 | | - } |
136 | | - |
137 | 119 | @Override |
138 | 120 | public <X> X accept(SemanticQueryWalker<X> walker) { |
139 | 121 | return walker.visitJpaCriteriaParameter( this ); |
|
0 commit comments