1717package org .springframework .data .ebean .repository .support ;
1818
1919import io .ebean .EbeanServer ;
20+ import io .ebean .PagedList ;
2021import io .ebean .SqlUpdate ;
2122import io .ebean .UpdateQuery ;
2223import io .ebean .text .PathProperties ;
@@ -70,32 +71,21 @@ public SimpleEbeanRepository(Class<T> entityType, EbeanServer ebeanServer) {
7071
7172 @ Override
7273 public Page <T > findAll (Pageable pageable ) {
73- return Converters .convertToSpringDataPage (db ().find (getEntityType ())
74- .setMaxRows (pageable .getPageSize ()).setFirstRow ((int ) pageable .getOffset ())
74+ PagedList <T > pagedList = db ().find (getEntityType ())
75+ .setMaxRows (pageable .getPageSize ())
76+ .setFirstRow ((int ) pageable .getOffset ())
7577 .setOrder (Converters .convertToEbeanOrderBy (pageable .getSort ()))
76- .findPagedList (), pageable .getSort ());
77- }
78-
79- private Class <T > getEntityType () {
80- return entityType ;
81- }
82-
83- @ Override
84- public <S extends T > Optional <S > findOne (Example <S > example ) {
85- return db ().find (example .getProbeType ())
86- .where (ExampleExpressionBuilder .exampleExpression (db (), example )).findOneOrEmpty ();
78+ .findPagedList ();
79+ return Converters .convertToSpringDataPage (pagedList , pageable .getSort ());
8780 }
8881
8982 @ Override
9083 public EbeanServer db () {
9184 return ebeanServer ;
9285 }
9386
94- @ Override
95- public <S extends T > Page <S > findAll (Example <S > example , Pageable pageable ) {
96- return Converters .convertToSpringDataPage (db ().find (example .getProbeType ())
97- .where (ExampleExpressionBuilder .exampleExpression (db (), example ))
98- .findPagedList (), pageable .getSort ());
87+ private Class <T > getEntityType () {
88+ return entityType ;
9989 }
10090
10191 @ Override
@@ -104,155 +94,115 @@ public EbeanServer db(EbeanServer db) {
10494 return this .ebeanServer ;
10595 }
10696
107- @ Override
108- public <S extends T > long count (Example <S > example ) {
109- return db ().find (example .getProbeType ())
110- .where (ExampleExpressionBuilder .exampleExpression (db (), example )).findCount ();
111- }
112-
11397 @ Override
11498 public UpdateQuery <T > updateQuery () {
11599 return db ().update (getEntityType ());
116100 }
117101
118- @ Override
119- public <S extends T > boolean exists (Example <S > example ) {
120- return db ().find (example .getProbeType ())
121- .where (ExampleExpressionBuilder .exampleExpression (db (), example )).findCount () > 0 ;
122- }
123-
124102 @ Override
125103 public SqlUpdate sqlUpdateOf (String sql ) {
126104 return db ().createSqlUpdate (sql );
127105 }
128106
129- @ Override
130- public <S extends T > S save (S s ) {
131- db ().save (s );
132- return s ;
133- }
134-
135107 @ Override
136108 public <S extends T > S update (S s ) {
137109 db ().update (s );
138110 return s ;
139111 }
140112
141- @ Override
142- public <S extends T > Iterable <S > saveAll (Iterable <S > entities ) {
143- Assert .notNull (entities , "The given Iterable of entities not be null!" );
144- db ().saveAll ((Collection <?>) entities );
145- return entities ;
146- }
147-
148113 @ Override
149114 public Iterable <T > updateAll (Iterable <T > entities ) {
150115 Assert .notNull (entities , "The given Iterable of entities not be null!" );
151116 db ().updateAll ((Collection <?>) entities );
152117 return entities ;
153118 }
154119
155- @ Override
156- public Optional <T > findById (ID id ) {
157- Assert .notNull (id , ID_MUST_NOT_BE_NULL );
158- return db ().find (getEntityType ()).where ().idEq (id ).findOneOrEmpty ();
159- }
160-
161- @ Override
162- public boolean existsById (ID id ) {
163- Assert .notNull (id , ID_MUST_NOT_BE_NULL );
164- return db ().find (getEntityType ()).where ().idEq (id ).findCount () > 0 ;
165- }
166-
167120 @ Override
168121 public List <T > findAll (Sort sort ) {
169122 return db ().find (getEntityType ()).setOrder (Converters .convertToEbeanOrderBy (sort )).findList ();
170123 }
171124
172- @ Override
173- public long count () {
174- return db ().find (getEntityType ()).findCount ();
175- }
176-
177125 @ Override
178126 public List <T > findAll () {
179127 return db ().find (getEntityType ()).where ().findList ();
180128 }
181129
182- @ Override
183- public void deleteById (ID id ) {
184- Assert .notNull (id , ID_MUST_NOT_BE_NULL );
185- db ().delete (getEntityType (), id );
186- }
187-
188130 @ Override
189131 public List <T > findAllById (Iterable <ID > ids ) {
190132 Assert .notNull (ids , "The given Iterable of Id's must not be null!" );
191- return db ().find (getEntityType ()).where ().idIn (ids ).findList ();
192- }
193-
194- @ Override
195- public void delete (T t ) {
196- db ().delete (t );
133+ return db ().find (getEntityType ())
134+ .where ()
135+ .idIn (ids )
136+ .findList ();
197137 }
198138
199139 @ Override
200140 public T findOne (ID id , String selects ) {
201141 Assert .notNull (id , ID_MUST_NOT_BE_NULL );
202- return db ().find (getEntityType ()).select (selects ).where ().idEq (id ).findOne ();
203- }
204-
205- @ Override
206- public void deleteAll (Iterable <? extends T > entities ) {
207- Assert .notNull (entities , "The given Iterable of entities not be null!" );
208- db ().deleteAll ((Collection <?>) entities );
142+ return db ().find (getEntityType ())
143+ .select (selects )
144+ .where ()
145+ .idEq (id )
146+ .findOne ();
209147 }
210148
211149 @ Override
212150 public T findOneByProperty (String propertyName , Object propertyValue ) {
213151 Assert .notNull (propertyName , PROP_MUST_NOT_BE_NULL );
214- return db ().find (getEntityType ()).where ().eq (propertyName , propertyValue ).findOne ();
215- }
216-
217- @ Override
218- public void deleteAll () {
219- db ().find (getEntityType ()).delete ();
152+ return db ().find (getEntityType ())
153+ .where ()
154+ .eq (propertyName , propertyValue )
155+ .findOne ();
220156 }
221157
222158 @ Override
223159 public T findOneByProperty (String propertyName , Object propertyValue , String selects ) {
224160 Assert .notNull (propertyName , PROP_MUST_NOT_BE_NULL );
225- return db ().find (getEntityType ()).apply (PathProperties .parse (selects )).where ()
226- .eq (propertyName , propertyValue ).findOne ();
161+ return db ().find (getEntityType ())
162+ .apply (PathProperties .parse (selects ))
163+ .where ()
164+ .eq (propertyName , propertyValue )
165+ .findOne ();
227166 }
228167
229168 @ Override
230169 public List <T > findAll (String selects ) {
231170 Assert .notNull (selects , SELECT_FIELDS_MUST_NOT_BE_NULL );
232- return db ().find (getEntityType ()).select (selects ).findList ();
171+ return db ().find (getEntityType ())
172+ .select (selects )
173+ .findList ();
233174 }
234175
235176 @ Override
236177 public List <T > findAll (Iterable <ID > ids , String selects ) {
237178 Assert .notNull (ids , "The given Iterable of Id's must not be null!" );
238179 Assert .notNull (selects , SELECT_FIELDS_MUST_NOT_BE_NULL );
239- return db ().find (getEntityType ()).select (selects ).where ().idIn (ids ).findList ();
180+ return db ().find (getEntityType ())
181+ .select (selects )
182+ .where ()
183+ .idIn (ids )
184+ .findList ();
240185 }
241186
242187 @ Override
243188 public List <T > findAll (Sort sort , String selects ) {
244189 Assert .notNull (selects , SELECT_FIELDS_MUST_NOT_BE_NULL );
245- return db ().find (getEntityType ()).select (selects ).setOrder (Converters .convertToEbeanOrderBy (sort )).findList ();
190+ return db ().find (getEntityType ())
191+ .select (selects )
192+ .setOrder (Converters .convertToEbeanOrderBy (sort ))
193+ .findList ();
246194 }
247195
248196 @ Override
249197 public Page <T > findAll (Pageable pageable , String selects ) {
250198 Assert .notNull (selects , SELECT_FIELDS_MUST_NOT_BE_NULL );
251- return Converters .convertToSpringDataPage (db ().find (getEntityType ())
252- .select (selects ).setMaxRows (pageable .getPageSize ())
199+ PagedList <T > pagedList = db ().find (getEntityType ())
200+ .select (selects )
201+ .setMaxRows (pageable .getPageSize ())
253202 .setFirstRow ((int ) pageable .getOffset ())
254203 .setOrder (Converters .convertToEbeanOrderBy (pageable .getSort ()))
255- .findPagedList (), pageable .getSort ());
204+ .findPagedList ();
205+ return Converters .convertToSpringDataPage (pagedList , pageable .getSort ());
256206 }
257207
258208 @ Override
@@ -269,5 +219,86 @@ public <S extends T> List<S> findAll(Example<S> example, Sort sort) {
269219 .findList ();
270220 }
271221
222+ @ Override
223+ public <S extends T > Optional <S > findOne (Example <S > example ) {
224+ return db ().find (example .getProbeType ())
225+ .where (ExampleExpressionBuilder .exampleExpression (db (), example )).findOneOrEmpty ();
226+ }
227+
228+ @ Override
229+ public <S extends T > Page <S > findAll (Example <S > example , Pageable pageable ) {
230+ PagedList <S > pagedList = db ().find (example .getProbeType ())
231+ .where (ExampleExpressionBuilder .exampleExpression (db (), example ))
232+ .setMaxRows (pageable .getPageSize ())
233+ .setFirstRow ((int ) pageable .getOffset ())
234+ .setOrder (Converters .convertToEbeanOrderBy (pageable .getSort ()))
235+ .findPagedList ();
236+ return Converters .convertToSpringDataPage (pagedList , pageable .getSort ());
237+ }
238+
239+ @ Override
240+ public <S extends T > long count (Example <S > example ) {
241+ return db ().find (example .getProbeType ())
242+ .where (ExampleExpressionBuilder .exampleExpression (db (), example )).findCount ();
243+ }
244+
245+ @ Override
246+ public <S extends T > boolean exists (Example <S > example ) {
247+ return db ().find (example .getProbeType ())
248+ .where (ExampleExpressionBuilder .exampleExpression (db (), example )).findCount () > 0 ;
249+ }
250+
251+ @ Override
252+ public <S extends T > S save (S s ) {
253+ db ().save (s );
254+ return s ;
255+ }
256+
257+ @ Override
258+ public <S extends T > Iterable <S > saveAll (Iterable <S > entities ) {
259+ Assert .notNull (entities , "The given Iterable of entities not be null!" );
260+ db ().saveAll ((Collection <?>) entities );
261+ return entities ;
262+ }
263+
264+ @ Override
265+ public Optional <T > findById (ID id ) {
266+ Assert .notNull (id , ID_MUST_NOT_BE_NULL );
267+ return db ().find (getEntityType ()).where ().idEq (id ).findOneOrEmpty ();
268+ }
269+
270+ @ Override
271+ public boolean existsById (ID id ) {
272+ Assert .notNull (id , ID_MUST_NOT_BE_NULL );
273+ return db ().find (getEntityType ()).where ().idEq (id ).findCount () > 0 ;
274+ }
275+
276+ @ Override
277+ public long count () {
278+ return db ().find (getEntityType ()).findCount ();
279+ }
280+
281+ @ Override
282+ public void deleteById (ID id ) {
283+ Assert .notNull (id , ID_MUST_NOT_BE_NULL );
284+ db ().delete (getEntityType (), id );
285+ }
286+
287+ @ Override
288+ public void delete (T t ) {
289+ db ().delete (t );
290+ }
291+
292+ @ Override
293+ public void deleteAll (Iterable <? extends T > entities ) {
294+ Assert .notNull (entities , "The given Iterable of entities not be null!" );
295+ db ().deleteAll ((Collection <?>) entities );
296+ }
297+
298+ @ Override
299+ public void deleteAll () {
300+ db ().find (getEntityType ()).delete ();
301+ }
302+
272303
273304}
0 commit comments