diff --git a/spring-cassandra/src/main/java/org/springframework/cassandra/config/CassandraSessionFactoryBean.java b/spring-cassandra/src/main/java/org/springframework/cassandra/config/CassandraSessionFactoryBean.java index dbd4970a7..f8beee1e9 100644 --- a/spring-cassandra/src/main/java/org/springframework/cassandra/config/CassandraSessionFactoryBean.java +++ b/spring-cassandra/src/main/java/org/springframework/cassandra/config/CassandraSessionFactoryBean.java @@ -16,6 +16,7 @@ package org.springframework.cassandra.config; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.slf4j.Logger; @@ -88,7 +89,7 @@ public class CassandraSessionFactoryBean implements FactoryBean, Initia */ protected void executeScripts(List scripts) { - if (scripts == null) { + if (scripts == null || scripts.size() == 0) { return; } @@ -133,13 +134,27 @@ public class CassandraSessionFactoryBean implements FactoryBean, Initia * Sets CQL scripts to be executed immediately after the session is connected. */ public void setStartupScripts(List scripts) { - this.startupScripts = scripts; + this.startupScripts = scripts == null ? new ArrayList() : new ArrayList(scripts); + } + + /** + * Returns an unmodifiable list of startup scripts. + */ + public List getStartupScripts() { + return Collections.unmodifiableList(startupScripts); } /** * Sets CQL scripts to be executed immediately before the session is shutdown. */ public void setShutdownScripts(List scripts) { - this.shutdownScripts = scripts; + this.shutdownScripts = scripts == null ? new ArrayList() : new ArrayList(scripts); + } + + /** + * Returns an unmodifiable list of shutdown scripts. + */ + public List getShutdownScripts() { + return Collections.unmodifiableList(shutdownScripts); } }