Skip to content

Commit 811e0c5

Browse files
committed
Upgrade spring-data-commons to 2.0.5.RELEASE for using spring boot 2.0.0.
1 parent 8b23324 commit 811e0c5

12 files changed

Lines changed: 125 additions & 146 deletions

File tree

pom.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@
66
<parent>
77
<groupId>org.springframework.data.build</groupId>
88
<artifactId>spring-data-parent</artifactId>
9-
<version>2.0.4.RELEASE</version>
9+
<version>2.0.5.RELEASE</version>
1010
</parent>
1111

1212
<groupId>io.github.hexagonframework.data</groupId>
1313
<artifactId>spring-data-ebean</artifactId>
14-
<version>1.3.0.SNAPSHOT</version>
14+
<version>1.3.0-SNAPSHOT</version>
1515
<packaging>jar</packaging>
1616

1717
<name>Spring Data Ebean</name>
@@ -47,8 +47,8 @@
4747
<properties>
4848
<bundlor.enabled>false</bundlor.enabled>
4949
<bundlor.failOnWarnings>false</bundlor.failOnWarnings>
50-
<spring>4.3.14.RELEASE</spring>
51-
<springdata.commons>1.13.10.RELEASE</springdata.commons>
50+
<spring>5.0.1.RELEASE</spring>
51+
<springdata.commons>2.0.5.RELEASE</springdata.commons>
5252
<ebean.version>11.13.1</ebean.version>
5353
<ebean-spring-txn.version>11.10.3</ebean-spring-txn.version>
5454
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>

src/main/java/org/springframework/data/ebean/domain/AbstractEntity.java

Lines changed: 34 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,11 @@
2020
import io.ebean.annotation.UpdatedTimestamp;
2121
import io.ebean.annotation.WhoCreated;
2222
import io.ebean.annotation.WhoModified;
23+
import java.time.LocalDateTime;
24+
import java.util.Optional;
2325
import javax.persistence.Id;
2426
import javax.persistence.MappedSuperclass;
2527
import javax.persistence.Transient;
26-
import org.joda.time.DateTime;
2728
import org.springframework.data.domain.Auditable;
2829
import org.springframework.data.domain.Persistable;
2930
import org.springframework.util.ClassUtils;
@@ -36,7 +37,7 @@
3637
* @author Xuegui Yuan
3738
*/
3839
@MappedSuperclass
39-
public abstract class AbstractEntity implements Persistable<Long>, Auditable<String, Long> {
40+
public abstract class AbstractEntity implements Persistable<Long>, Auditable<String, Long, LocalDateTime> {
4041

4142
private static final long serialVersionUID = -5554308939380869754L;
4243

@@ -47,30 +48,40 @@ public abstract class AbstractEntity implements Persistable<Long>, Auditable<Str
4748
String createdBy;
4849

4950
@CreatedTimestamp
50-
DateTime createdDate;
51+
LocalDateTime createdDate;
5152

5253
@WhoModified
5354
String lastModifiedBy;
5455

5556
@UpdatedTimestamp
56-
DateTime lastModifiedDate;
57+
LocalDateTime lastModifiedDate;
5758

5859
@Override
59-
public String getCreatedBy() {
60-
return createdBy;
60+
public Optional<String> getCreatedBy() {
61+
return Optional.ofNullable(createdBy);
6162
}
6263

6364
@Override
64-
public Long getId() {
65-
return id;
65+
public void setCreatedBy(String createdBy) {
66+
this.createdBy = createdBy;
6667
}
6768

69+
@Override
70+
public Long getId() {
71+
return id;
72+
}
73+
6874
@Override
69-
public void setCreatedBy(String createdBy) {
70-
this.createdBy = createdBy;
75+
public Optional<LocalDateTime> getCreatedDate() {
76+
return Optional.ofNullable(createdDate);
7177
}
7278

73-
/**
79+
@Override
80+
public void setCreatedDate(LocalDateTime createdDate) {
81+
this.createdDate = createdDate;
82+
}
83+
84+
/**
7485
* Sets the id of the entity.
7586
*
7687
* @param id the id to set
@@ -80,38 +91,28 @@ public void setId(final Long id) {
8091
}
8192

8293
@Override
83-
public DateTime getCreatedDate() {
84-
return createdDate;
85-
}
86-
87-
@Transient
88-
@Override
89-
public boolean isNew() {
90-
return null == getId();
91-
}
92-
93-
@Override
94-
public void setCreatedDate(DateTime createdDate) {
95-
this.createdDate = createdDate;
96-
}
97-
98-
@Override
99-
public String getLastModifiedBy() {
100-
return lastModifiedBy;
94+
public Optional<String> getLastModifiedBy() {
95+
return Optional.ofNullable(lastModifiedBy);
10196
}
10297

10398
@Override
10499
public void setLastModifiedBy(String lastModifiedBy) {
105100
this.lastModifiedBy = lastModifiedBy;
106101
}
107102

103+
@Transient
108104
@Override
109-
public DateTime getLastModifiedDate() {
110-
return lastModifiedDate;
105+
public boolean isNew() {
106+
return null == getId();
111107
}
112108

113109
@Override
114-
public void setLastModifiedDate(DateTime lastModifiedDate) {
110+
public Optional<LocalDateTime> getLastModifiedDate() {
111+
return Optional.ofNullable(lastModifiedDate);
112+
}
113+
114+
@Override
115+
public void setLastModifiedDate(LocalDateTime lastModifiedDate) {
115116
this.lastModifiedDate = lastModifiedDate;
116117
}
117118

@@ -140,14 +141,9 @@ public boolean equals(Object obj) {
140141

141142
AbstractEntity that = (AbstractEntity) obj;
142143

143-
return null == this.getId() ? false : this.getId().equals(that.getId());
144+
return null != this.getId() && this.getId().equals(that.getId());
144145
}
145146

146-
/*
147-
* (non-Javadoc)
148-
*
149-
* @see java.lang.Object#toString()
150-
*/
151147
@Override
152148
public String toString() {
153149
return String.format("Entity of type %s with id: %s", this.getClass().getName(), getId());

src/main/java/org/springframework/data/ebean/repository/config/EbeanRepositoryConfigExtension.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,8 @@ public class EbeanRepositoryConfigExtension extends RepositoryConfigurationExten
4646
* (non-Javadoc)
4747
* @see org.springframework.data.repository.config.RepositoryConfigurationExtension#getRepositoryFactoryBeanClassName()
4848
*/
49-
// public String getRepositoryFactoryBeanClassName() {
50-
// return EbeanRepositoryFactoryBean.class.getName();
51-
// }
52-
5349
@Override
54-
public String getRepositoryFactoryClassName() {
50+
public String getRepositoryFactoryBeanClassName() {
5551
return EbeanRepositoryFactoryBean.class.getName();
5652
}
5753

src/main/java/org/springframework/data/ebean/repository/query/EbeanQueryWrapper.java

Lines changed: 34 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,15 @@
2020
import io.ebean.Query;
2121
import io.ebean.SqlUpdate;
2222
import io.ebean.Update;
23+
import java.util.List;
24+
import java.util.stream.Stream;
2325
import org.springframework.data.domain.Page;
2426
import org.springframework.data.domain.Pageable;
27+
import org.springframework.data.domain.Slice;
2528
import org.springframework.data.domain.SliceImpl;
2629
import org.springframework.data.repository.support.PageableExecutionUtils;
2730
import org.springframework.data.util.StreamUtils;
2831

29-
import java.util.List;
30-
import java.util.stream.Stream;
31-
3232
import static org.springframework.data.ebean.repository.query.EbeanQueryWrapper.QueryType.QUERY;
3333

3434
/**
@@ -53,11 +53,11 @@ public EbeanQueryWrapper(T queryInstance) {
5353
}
5454
}
5555

56-
public static <T> EbeanQueryWrapper ofEbeanQuery(T queryInstance) {
57-
return new EbeanQueryWrapper(queryInstance);
56+
static <T> EbeanQueryWrapper ofEbeanQuery(T queryInstance) {
57+
return new EbeanQueryWrapper<T>(queryInstance);
5858
}
5959

60-
public void setParameter(String name, Object value) {
60+
void setParameter(String name, Object value) {
6161
switch (queryType) {
6262
case QUERY:
6363
((Query) queryInstance).setParameter(name, value);
@@ -73,7 +73,7 @@ public void setParameter(String name, Object value) {
7373
}
7474
}
7575

76-
public void setParameter(int position, Object value) {
76+
void setParameter(int position, Object value) {
7777
switch (queryType) {
7878
case QUERY:
7979
((Query) queryInstance).setParameter(position, value);
@@ -89,26 +89,28 @@ public void setParameter(int position, Object value) {
8989
}
9090
}
9191

92-
public Object findOne() {
92+
@SuppressWarnings("unchecked")
93+
<E> E findOne() {
9394
if (queryType == QUERY) {
94-
return ((Query) queryInstance).findOne();
95+
return ((Query<E>) queryInstance).findOne();
9596
}
9697
throw new IllegalArgumentException("query not supported!");
9798
}
9899

99-
public Page findPage(Pageable pageable) {
100+
@SuppressWarnings("unchecked")
101+
<E> Page<E> findPage(Pageable pageable) {
100102
if (queryType == QUERY) {
101-
PagedList pagedList = ((Query) queryInstance)
103+
PagedList<E> pagedList = ((Query<E>) queryInstance)
102104
.setFirstRow((int) pageable.getOffset())
103105
.setMaxRows(pageable.getPageSize())
104106
.findPagedList();
105-
return PageableExecutionUtils.getPage(pagedList.getList(), pageable, () -> pagedList.getTotalCount());
107+
return PageableExecutionUtils.getPage(pagedList.getList(), pageable, pagedList::getTotalCount);
106108

107109
}
108110
throw new IllegalArgumentException("query not supported!");
109111
}
110112

111-
public int update() {
113+
int update() {
112114
switch (queryType) {
113115
case QUERY:
114116
return ((Query) queryInstance).update();
@@ -121,7 +123,7 @@ public int update() {
121123
}
122124
}
123125

124-
public int delete() {
126+
int delete() {
125127
switch (queryType) {
126128
case QUERY:
127129
return ((Query) queryInstance).delete();
@@ -134,68 +136,71 @@ public int delete() {
134136
}
135137
}
136138

137-
public boolean isExists() {
139+
boolean isExists() {
138140
if (queryType == QUERY) {
139141
return ((Query) queryInstance).findCount() > 0;
140142
}
141143
throw new IllegalArgumentException("query not supported!");
142144
}
143145

144-
public Stream findStream() {
146+
@SuppressWarnings("unchecked")
147+
<E> Stream<E> findStream() {
145148
if (queryType == QUERY) {
146-
return StreamUtils.createStreamFromIterator(((Query) queryInstance).findIterate());
149+
return StreamUtils.createStreamFromIterator(((Query<E>) queryInstance).findIterate());
147150
}
148151
throw new IllegalArgumentException("query not supported!");
149152
}
150153

151-
public Object findList() {
154+
@SuppressWarnings("unchecked")
155+
<E> List<E> findList() {
152156
if (queryType == QUERY) {
153-
return ((Query) queryInstance).findList();
157+
return ((Query<E>) queryInstance).findList();
154158
}
155159
throw new IllegalArgumentException("query not supported!");
156160
}
157161

158-
public Object findSlice(Pageable pageable) {
159-
List resultList = null;
162+
@SuppressWarnings("unchecked")
163+
<E> Slice<E> findSlice(Pageable pageable) {
164+
List<E> resultList = null;
160165
int pageSize = pageable.getPageSize();
161166
int offset = (int)pageable.getOffset();
162167
if (queryType == QUERY) {
163-
resultList = ((Query) queryInstance).setFirstRow(offset).setMaxRows(pageSize + 1).findList();
164-
boolean hasNext = resultList != null && resultList.size() > pageSize;
165-
return new SliceImpl<Object>(hasNext ? resultList.subList(0, pageSize) : resultList, pageable, hasNext);
168+
resultList = ((Query<E>) queryInstance).setFirstRow(offset).setMaxRows(pageSize + 1).findList();
169+
boolean hasNext = resultList.size() > pageSize;
170+
return new SliceImpl<E>(hasNext ? resultList.subList(0, pageSize) : resultList, pageable, hasNext);
166171
}
167172
throw new IllegalArgumentException("query not supported!");
168173
}
169174

170-
public Integer getMaxRows() {
175+
Integer getMaxRows() {
171176
if (queryType == QUERY) {
172177
return ((Query) queryInstance).getMaxRows();
173178
}
174179
throw new IllegalArgumentException("query not supported!");
175180
}
176181

177-
public void setMaxRows(int maxRows) {
182+
void setMaxRows(int maxRows) {
178183
if (queryType == QUERY) {
179184
((Query) queryInstance).setMaxRows(maxRows);
180185
}
181186
throw new IllegalArgumentException("query not supported!");
182187
}
183188

184-
public int getFirstRow() {
189+
int getFirstRow() {
185190
if (queryType == QUERY) {
186191
return ((Query) queryInstance).getFirstRow();
187192
}
188193
throw new IllegalArgumentException("query not supported!");
189194
}
190195

191-
public void setFirstRow(int firstRow) {
196+
void setFirstRow(int firstRow) {
192197
if (queryType == QUERY) {
193198
((Query) queryInstance).setFirstRow(firstRow);
194199
}
195200
throw new IllegalArgumentException("query not supported!");
196201
}
197202

198-
public static enum QueryType {
203+
public enum QueryType {
199204
/**
200205
* Query
201206
*/

src/main/java/org/springframework/data/ebean/repository/query/ParameterBinder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ protected boolean canBindParameter(Parameter parameter) {
149149
*/
150150
protected void bind(EbeanQueryWrapper query, Parameter parameter, Object value, int position) {
151151
if (parameter.isNamedParameter()) {
152-
query.setParameter(parameter.getName(), value);
152+
query.setParameter(parameter.getName().get(), value);
153153
} else {
154154
query.setParameter(position, value);
155155
}

src/main/java/org/springframework/data/ebean/repository/query/ParameterMetadataProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ public <T> ParameterMetadata<T> next(Part part) {
100100
private <T> ParameterMetadata<T> next(Part part, Class<T> type, Parameter parameter) {
101101
Assert.notNull(type, "Type must not be null!");
102102

103-
ParameterMetadata<T> value = new ParameterMetadata<T>(type, parameter.getName(), part.getType(),
103+
ParameterMetadata<T> value = new ParameterMetadata<T>(type, parameter.getName().get(), part.getType(),
104104
bindableParameterValues == null ? ParameterMetadata.PLACEHOLDER : bindableParameterValues.next());
105105
expressions.add(value);
106106

src/main/java/org/springframework/data/ebean/repository/query/StringQueryParameterBinder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ private ParameterBinding getBindingFor(Object ebeanQuery, int position, Paramete
7474
Assert.notNull(parameter, "Parameter must not be null!");
7575

7676
if (parameter.isNamedParameter()) {
77-
return query.getBindingFor(parameter.getName());
77+
return query.getBindingFor(parameter.getName().orElseThrow(() -> new IllegalArgumentException("Parameter needs to be named!")));
7878
}
7979

8080
try {

0 commit comments

Comments
 (0)