From c6b7a957a63d337f3cedab6001e11f0a6b686028 Mon Sep 17 00:00:00 2001 From: Robert von Burg Date: Tue, 23 Oct 2018 17:10:38 +0200 Subject: [PATCH] [New] Added ListParameter.addAllValuesIfNotContains() --- .../li/strolch/model/parameter/FloatListParameter.java | 9 +++++++++ .../li/strolch/model/parameter/IntegerListParameter.java | 9 +++++++++ .../java/li/strolch/model/parameter/ListParameter.java | 8 ++++++++ .../li/strolch/model/parameter/LongListParameter.java | 9 +++++++++ .../li/strolch/model/parameter/StringListParameter.java | 9 +++++++++ 5 files changed, 44 insertions(+) diff --git a/li.strolch.model/src/main/java/li/strolch/model/parameter/FloatListParameter.java b/li.strolch.model/src/main/java/li/strolch/model/parameter/FloatListParameter.java index ac4f12fc1..c565f9e99 100644 --- a/li.strolch.model/src/main/java/li/strolch/model/parameter/FloatListParameter.java +++ b/li.strolch.model/src/main/java/li/strolch/model/parameter/FloatListParameter.java @@ -112,6 +112,15 @@ public class FloatListParameter extends AbstractParameter> implemen this.value.addAll(values); } + @Override + public void addAllValuesIfNotContains(List values) { + assertNotReadonly(); + for (Double value : values) { + if (!this.value.contains(value)) + this.value.add(value); + } + } + @Override public boolean addValueIfNotContains(Double value) { assertNotReadonly(); diff --git a/li.strolch.model/src/main/java/li/strolch/model/parameter/IntegerListParameter.java b/li.strolch.model/src/main/java/li/strolch/model/parameter/IntegerListParameter.java index 8af6c43ca..37a3814a3 100644 --- a/li.strolch.model/src/main/java/li/strolch/model/parameter/IntegerListParameter.java +++ b/li.strolch.model/src/main/java/li/strolch/model/parameter/IntegerListParameter.java @@ -112,6 +112,15 @@ public class IntegerListParameter extends AbstractParameter> imple this.value.addAll(values); } + @Override + public void addAllValuesIfNotContains(List values) { + assertNotReadonly(); + for (Integer value : values) { + if (!this.value.contains(value)) + this.value.add(value); + } + } + @Override public boolean addValueIfNotContains(Integer value) { assertNotReadonly(); diff --git a/li.strolch.model/src/main/java/li/strolch/model/parameter/ListParameter.java b/li.strolch.model/src/main/java/li/strolch/model/parameter/ListParameter.java index 0e4a854c5..8f2a39a6a 100644 --- a/li.strolch.model/src/main/java/li/strolch/model/parameter/ListParameter.java +++ b/li.strolch.model/src/main/java/li/strolch/model/parameter/ListParameter.java @@ -43,6 +43,14 @@ public interface ListParameter extends Parameter> { */ void addAllValues(List values); + /** + * Adds all of the given values to the {@link List} of values which are not already in the current list + * + * @param values + * the values to add + */ + void addAllValuesIfNotContains(List values); + /** * Adds a single value to the {@link List} of values if the current list does not already contain the value * diff --git a/li.strolch.model/src/main/java/li/strolch/model/parameter/LongListParameter.java b/li.strolch.model/src/main/java/li/strolch/model/parameter/LongListParameter.java index 00d5ef2a7..c5636c066 100644 --- a/li.strolch.model/src/main/java/li/strolch/model/parameter/LongListParameter.java +++ b/li.strolch.model/src/main/java/li/strolch/model/parameter/LongListParameter.java @@ -112,6 +112,15 @@ public class LongListParameter extends AbstractParameter> implements this.value.addAll(values); } + @Override + public void addAllValuesIfNotContains(List values) { + assertNotReadonly(); + for (Long value : values) { + if (!this.value.contains(value)) + this.value.add(value); + } + } + @Override public boolean addValueIfNotContains(Long value) { assertNotReadonly(); diff --git a/li.strolch.model/src/main/java/li/strolch/model/parameter/StringListParameter.java b/li.strolch.model/src/main/java/li/strolch/model/parameter/StringListParameter.java index add058d5c..236650aa1 100644 --- a/li.strolch.model/src/main/java/li/strolch/model/parameter/StringListParameter.java +++ b/li.strolch.model/src/main/java/li/strolch/model/parameter/StringListParameter.java @@ -112,6 +112,15 @@ public class StringListParameter extends AbstractParameter> impleme this.value.addAll(values); } + @Override + public void addAllValuesIfNotContains(List values) { + assertNotReadonly(); + for (String value : values) { + if (!this.value.contains(value)) + this.value.add(value); + } + } + @Override public boolean addValueIfNotContains(String value) { assertNotReadonly();