Skip to content

Commit eb9e346

Browse files
committed
DATAJDBC-518 - Polishing.
Tweak Javadoc to reflect the used type. Create Criteria objects via Criteria.from(…) to expose the Criteria API without the need of casting. Original pull request: #205.
1 parent 8df5037 commit eb9e346

File tree

2 files changed

+21
-16
lines changed

2 files changed

+21
-16
lines changed

spring-data-relational/src/main/java/org/springframework/data/relational/core/query/Criteria.java

+12-9
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ public static Criteria empty() {
113113
*
114114
* @return new {@link Criteria}.
115115
*/
116-
public static CriteriaDefinition from(CriteriaDefinition... criteria) {
116+
public static Criteria from(Criteria... criteria) {
117117

118118
Assert.notNull(criteria, "Criteria must not be null");
119119
Assert.noNullElements(criteria, "Criteria must not contain null elements");
@@ -126,7 +126,7 @@ public static CriteriaDefinition from(CriteriaDefinition... criteria) {
126126
*
127127
* @return new {@link Criteria}.
128128
*/
129-
public static CriteriaDefinition from(List<CriteriaDefinition> criteria) {
129+
public static Criteria from(List<Criteria> criteria) {
130130

131131
Assert.notNull(criteria, "Criteria must not be null");
132132
Assert.noNullElements(criteria, "Criteria must not contain null elements");
@@ -168,7 +168,7 @@ public CriteriaStep and(String column) {
168168
SqlIdentifier identifier = SqlIdentifier.unquoted(column);
169169
return new DefaultCriteriaStep(identifier) {
170170
@Override
171-
protected Criteria createCriteria(Comparator comparator, Object value) {
171+
protected Criteria createCriteria(Comparator comparator, @Nullable Object value) {
172172
return new Criteria(Criteria.this, Combinator.AND, Collections.emptyList(), identifier, comparator, value);
173173
}
174174
};
@@ -194,11 +194,12 @@ public Criteria and(CriteriaDefinition criteria) {
194194
* @param criteria criteria objects.
195195
* @return a new {@link Criteria} object.
196196
*/
197-
public Criteria and(List<CriteriaDefinition> criteria) {
197+
@SuppressWarnings("unchecked")
198+
public Criteria and(List<? extends CriteriaDefinition> criteria) {
198199

199200
Assert.notNull(criteria, "Criteria must not be null!");
200201

201-
return new Criteria(Criteria.this, Combinator.AND, criteria);
202+
return new Criteria(Criteria.this, Combinator.AND, (List<CriteriaDefinition>) criteria);
202203
}
203204

204205
/**
@@ -214,7 +215,7 @@ public CriteriaStep or(String column) {
214215
SqlIdentifier identifier = SqlIdentifier.unquoted(column);
215216
return new DefaultCriteriaStep(identifier) {
216217
@Override
217-
protected Criteria createCriteria(Comparator comparator, Object value) {
218+
protected Criteria createCriteria(Comparator comparator, @Nullable Object value) {
218219
return new Criteria(Criteria.this, Combinator.OR, Collections.emptyList(), identifier, comparator, value);
219220
}
220221
};
@@ -241,11 +242,12 @@ public Criteria or(CriteriaDefinition criteria) {
241242
* @return a new {@link Criteria} object.
242243
* @since 1.1
243244
*/
244-
public Criteria or(List<CriteriaDefinition> criteria) {
245+
@SuppressWarnings("unchecked")
246+
public Criteria or(List<? extends CriteriaDefinition> criteria) {
245247

246248
Assert.notNull(criteria, "Criteria must not be null!");
247249

248-
return new Criteria(Criteria.this, Combinator.OR, criteria);
250+
return new Criteria(Criteria.this, Combinator.OR, (List<CriteriaDefinition>) criteria);
249251
}
250252

251253
/**
@@ -336,6 +338,7 @@ public Combinator getCombinator() {
336338
return combinator;
337339
}
338340

341+
@Override
339342
public List<CriteriaDefinition> getGroup() {
340343
return group;
341344
}
@@ -858,7 +861,7 @@ public Criteria isFalse() {
858861
return createCriteria(Comparator.IS_FALSE, null);
859862
}
860863

861-
protected Criteria createCriteria(Comparator comparator, Object value) {
864+
protected Criteria createCriteria(Comparator comparator, @Nullable Object value) {
862865
return new Criteria(this.property, comparator, value);
863866
}
864867
}

spring-data-relational/src/main/java/org/springframework/data/relational/core/query/CriteriaDefinition.java

+9-7
Original file line numberDiff line numberDiff line change
@@ -33,18 +33,19 @@
3333
public interface CriteriaDefinition {
3434

3535
/**
36-
* Static factory method to create an empty Criteria.
36+
* Static factory method to create an empty {@link CriteriaDefinition}.
3737
*
38-
* @return an empty {@link Criteria}.
38+
* @return an empty {@link CriteriaDefinition}.
3939
*/
4040
static CriteriaDefinition empty() {
4141
return Criteria.EMPTY;
4242
}
4343

4444
/**
45-
* Create a new {@link Criteria} and combine it as group with {@code AND} using the provided {@link List Criterias}.
45+
* Create a new {@link CriteriaDefinition} and combine it as group with {@code AND} using the provided {@link List
46+
* Criterias}.
4647
*
47-
* @return new {@link Criteria}.
48+
* @return new {@link CriteriaDefinition}.
4849
*/
4950
static CriteriaDefinition from(CriteriaDefinition... criteria) {
5051

@@ -55,12 +56,13 @@ static CriteriaDefinition from(CriteriaDefinition... criteria) {
5556
}
5657

5758
/**
58-
* Create a new {@link Criteria} and combine it as group with {@code AND} using the provided {@link List Criterias}.
59+
* Create a new {@link CriteriaDefinition} and combine it as group with {@code AND} using the provided {@link List
60+
* Criterias}.
5961
*
60-
* @return new {@link Criteria}.
62+
* @return new {@link CriteriaDefinition}.
6163
* @since 1.1
6264
*/
63-
static CriteriaDefinition from(List<CriteriaDefinition> criteria) {
65+
static CriteriaDefinition from(List<? extends CriteriaDefinition> criteria) {
6466

6567
Assert.notNull(criteria, "Criteria must not be null");
6668
Assert.noNullElements(criteria, "Criteria must not contain null elements");

0 commit comments

Comments
 (0)