This is an automated email from the git hooks/post-receive script. New commit to branch feature/8130 in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit f04b084836517e03a9289974e15626eaa1fc7ab6 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Mar 16 05:36:36 2016 +0100 ajout de méthodes sympas pour éviter les cast --- .../persistence/entities/CaracteristicMap.java | 28 +++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/CaracteristicMap.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/CaracteristicMap.java index b0a727e..09fa9e5 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/CaracteristicMap.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/CaracteristicMap.java @@ -23,6 +23,7 @@ package fr.ifremer.tutti.persistence.entities; */ import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import java.io.Serializable; import java.util.Collection; @@ -57,7 +58,32 @@ public class CaracteristicMap extends LinkedHashMap<Caracteristic, Serializable> public boolean hasNonNullValues(Collection<Caracteristic> caracteristicsToIgnore) { return keySet().stream() .filter(caracteristic -> caracteristicsToIgnore.contains(caracteristic) - && get(caracteristic) != null) + && get(caracteristic) != null) .count() > 0; } + + public CaracteristicQualitativeValue removeQualitativeValue(Caracteristic caracteristic) { + Serializable remove = remove(caracteristic); + if (remove != null && !(remove instanceof CaracteristicQualitativeValue)) { + throw new IllegalArgumentException("caracteristic value for " + caracteristic + " is not qualitative: " + remove); + } + return (CaracteristicQualitativeValue) remove; + } + + public String removeStringValue(Caracteristic caracteristic) { + Serializable remove = remove(caracteristic); + if (remove != null && !(remove instanceof String)) { + throw new IllegalArgumentException("caracteristic value for " + caracteristic + " is not text: " + remove); + } + return (String) remove; + } + + public Float removeFloatValue(Caracteristic caracteristic) { + Serializable remove = remove(caracteristic); + if (remove != null && !(remove instanceof Float)) { + throw new IllegalArgumentException("caracteristic value for " + caracteristic + " is not float: " + remove); + } + return (Float) remove; + } + } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.