From f3da0a1adc54306ffaf60d2f8ac4b8913d14b82e Mon Sep 17 00:00:00 2001 From: Matthew Adams Date: Mon, 20 Jan 2014 14:12:08 -0600 Subject: [PATCH] DATACASS-1 - added collection safety to setters & collection-safe getters for scripts --- .../config/CassandraSessionFactoryBean.java | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) 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); } }