diff --git a/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/core/CassandraAdminTemplate.java b/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/core/CassandraAdminTemplate.java index 317417e21..790130c66 100644 --- a/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/core/CassandraAdminTemplate.java +++ b/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/core/CassandraAdminTemplate.java @@ -114,7 +114,7 @@ public class CassandraAdminTemplate extends CassandraTemplate implements Cassand } public void dropTable(Class entityClass) { - dropTable(determineTableName(entityClass)); + dropTable(getTableName(entityClass)); } @Override diff --git a/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/core/CassandraTemplate.java b/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/core/CassandraTemplate.java index ee22c5c86..6f0aa1410 100644 --- a/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/core/CassandraTemplate.java +++ b/spring-data-cassandra/src/main/java/org/springframework/data/cassandra/core/CassandraTemplate.java @@ -516,10 +516,6 @@ public class CassandraTemplate extends CqlTemplate implements CassandraOperation return doUpdateAsync(entity, listener, options); } - protected CqlIdentifier determineTableName(T obj) { - return obj == null ? null : determineTableName(obj.getClass()); - } - protected List select(final String query, CassandraConverterRowCallback readRowCallback) { ResultSet resultSet = doExecute(new SessionCallback() { diff --git a/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/template/CassandraAdminTemplateTest.java b/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/template/CassandraAdminTemplateTest.java index 4f188f2be..a23be4a64 100644 --- a/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/template/CassandraAdminTemplateTest.java +++ b/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/template/CassandraAdminTemplateTest.java @@ -94,4 +94,19 @@ public class CassandraAdminTemplateTest extends AbstractSpringDataEmbeddedCassan cassandraAdminTemplate.createTable(true, CqlIdentifier.cqlId("book"), Book.class, null); assertThat(getKeyspaceMetadata().getTables().size(), is(1)); } + + @Test + public void testDropTable() throws Exception { + + cassandraAdminTemplate.createTable(true, CqlIdentifier.cqlId("book"), Book.class, null); + assertThat(getKeyspaceMetadata().getTables().size(), is(1)); + + cassandraAdminTemplate.dropTable(Book.class); + assertThat(getKeyspaceMetadata().getTables().size(), is(0)); + + cassandraAdminTemplate.createTable(true, CqlIdentifier.cqlId("book"), Book.class, null); + cassandraAdminTemplate.dropTable(CqlIdentifier.cqlId("book")); + + assertThat(getKeyspaceMetadata().getTables().size(), is(0)); + } }