From 1da1c89fc0bb0ffa573a6057314f99848a4d1695 Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Tue, 14 Mar 2017 17:10:39 +0100 Subject: [PATCH] DATACASS-416 - Add overrides on TypedIdCassandraRepository for methods returning Lists. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit TypedIdCassandraRepository redeclares save() and findAll(…) methods returning List. Propagating the more specialized return type allows easier use of the collection result. --- .../TypedIdCassandraRepository.java | 22 ++++++++++++++++++- ...leCassandraRepositoryIntegrationTests.java | 21 +++++++++--------- 2 files changed, 32 insertions(+), 11 deletions(-) diff --git a/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/repository/TypedIdCassandraRepository.java b/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/repository/TypedIdCassandraRepository.java index b3f7e94e3..2d188ebd1 100644 --- a/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/repository/TypedIdCassandraRepository.java +++ b/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/repository/TypedIdCassandraRepository.java @@ -70,6 +70,27 @@ import org.springframework.data.repository.NoRepositoryBean; @NoRepositoryBean public interface TypedIdCassandraRepository extends CrudRepository { + /* + * (non-Javadoc) + * @see org.springframework.data.repository.CrudRepository#save(java.lang.Iterable) + */ + @Override + List save(Iterable entites); + + /* + * (non-Javadoc) + * @see org.springframework.data.repository.CrudRepository#findAll() + */ + @Override + List findAll(); + + /* + * (non-Javadoc) + * @see org.springframework.data.repository.CrudRepository#findAll(java.lang.Iterable) + */ + @Override + List findAll(Iterable ids); + /** * Inserts the given entity. Assumes the instance to be new to be able to apply insertion optimizations. Use the * returned instance for further operations as the save operation might have changed the entity instance completely. @@ -91,5 +112,4 @@ public interface TypedIdCassandraRepository extends * @since 2.0 */ List insert(Iterable entities); - } diff --git a/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/repository/support/SimpleCassandraRepositoryIntegrationTests.java b/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/repository/support/SimpleCassandraRepositoryIntegrationTests.java index 96378fd12..351f84364 100644 --- a/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/repository/support/SimpleCassandraRepositoryIntegrationTests.java +++ b/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/repository/support/SimpleCassandraRepositoryIntegrationTests.java @@ -18,6 +18,7 @@ package org.springframework.data.cassandra.repository.support; import static org.assertj.core.api.Assertions.*; import java.util.Arrays; +import java.util.List; import org.junit.Before; import org.junit.Test; @@ -136,18 +137,18 @@ public class SimpleCassandraRepositoryIntegrationTests extends AbstractKeyspaceC assertThat(person).isNull(); } - @Test // DATACASS-396 + @Test // DATACASS-396, DATACASS-416 public void findAllShouldReturnAllResults() { - Iterable persons = repository.findAll(); + List persons = repository.findAll(); assertThat(persons).hasSize(4); } - @Test // DATACASS-396 + @Test // DATACASS-396, DATACASS-416 public void findAllByIterableOfIdShouldReturnResults() { - Iterable persons = repository.findAll(Arrays.asList(dave.getId(), boyd.getId())); + List persons = repository.findAll(Arrays.asList(dave.getId(), boyd.getId())); assertThat(persons).hasSize(2); } @@ -212,19 +213,19 @@ public class SimpleCassandraRepositoryIntegrationTests extends AbstractKeyspaceC assertThat(loaded).isEqualTo(person); } - @Test // DATACASS-396 + @Test // DATACASS-396, DATACASS-416 public void saveIterableOfNewEntitiesShouldInsertEntity() { repository.deleteAll(); - Iterable saved = repository.save(Arrays.asList(dave, oliver, boyd)); + List saved = repository.save(Arrays.asList(dave, oliver, boyd)); assertThat(saved).hasSize(3); assertThat(repository.count()).isEqualTo(3); } - @Test // DATACASS-396 + @Test // DATACASS-396, DATACASS-416 public void saveIterableOfMixedEntitiesShouldInsertEntity() { Person person = new Person("36", "Homer", "Simpson"); @@ -232,7 +233,7 @@ public class SimpleCassandraRepositoryIntegrationTests extends AbstractKeyspaceC dave.setFirstname("Hello, Dave"); dave.setLastname("Bowman"); - Iterable saved = repository.save(Arrays.asList(person, dave)); + List saved = repository.save(Arrays.asList(person, dave)); assertThat(saved).hasSize(2); @@ -243,12 +244,12 @@ public class SimpleCassandraRepositoryIntegrationTests extends AbstractKeyspaceC assertThat(persistentHomer).isEqualTo(person); } - @Test // DATACASS-396 + @Test // DATACASS-396, DATACASS-416 public void deleteAllShouldRemoveEntities() { repository.deleteAll(); - Iterable result = repository.findAll(); + List result = repository.findAll(); assertThat(result).isEmpty(); }