This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See http://git.codelutin.com/tutti.git commit 740d00d919faf35b49d0cd8b215e298a59d4d120 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Feb 3 19:11:34 2015 +0100 introduction de classes différentes pour les différentes types de signes --- .../fr/ifremer/tutti/service/bigfin/signs/Sex.java | 109 ++++++++++++++++++++ .../ifremer/tutti/service/bigfin/signs/Sign.java | 27 +++++ .../ifremer/tutti/service/bigfin/signs/Size.java | 111 +++++++++++++++++++++ .../tutti/service/bigfin/signs/VracHorsVrac.java | 92 +++++++++++++++++ 4 files changed, 339 insertions(+) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/Sex.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/Sex.java new file mode 100644 index 0000000..cce79c8 --- /dev/null +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/Sex.java @@ -0,0 +1,109 @@ +package fr.ifremer.tutti.service.bigfin.signs; + +import com.google.common.base.Function; +import fr.ifremer.adagio.core.dao.referential.pmfm.PmfmId; +import fr.ifremer.adagio.core.dao.referential.pmfm.QualitativeValueId; +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValues; +import fr.ifremer.tutti.service.bigfin.csv.BigfinDataRow; + +import java.util.Map; + +/** + * Created on 2/3/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.13 + */ +public enum Sex implements Sign { + + NONE("NONE") { + @Override + public Integer getCategory() { + return PmfmId.SEX.getValue(); + } + + @Override + public Integer getQualitativeValueId() { + return QualitativeValueId.NON_SEXED_SEX.getValue(); + } + + @Override + public boolean isNullEquivalent() { + return false; + } + }, + MALE("MALE") { + @Override + public Integer getCategory() { + return PmfmId.SEX.getValue(); + } + + @Override + public Integer getQualitativeValueId() { + return QualitativeValueId.SEX_MALE.getValue(); + } + + @Override + public boolean isNullEquivalent() { + return false; + } + }, + FEMALE("FEMALE") { + @Override + public Integer getCategory() { + return PmfmId.SEX.getValue(); + } + + @Override + public Integer getQualitativeValueId() { + return QualitativeValueId.SEX_FEMALE.getValue(); + } + + @Override + public boolean isNullEquivalent() { + return false; + } + }; + + private String sign; + + Sex(String sign) { + this.sign = sign; + } + + @Override + public String getSign() { + return sign; + } + + @Override + public void registerSign(Caracteristic caracteristic, Map<Sign, CaracteristicQualitativeValue> map) { + Integer valueId = getQualitativeValueId(); + CaracteristicQualitativeValue result = CaracteristicQualitativeValues.getQualitativeValue(caracteristic, valueId); + map.put(this, result); + } + + public static Sex getValue(String sign) { + Sex result = null; + for (Sex s : values()) { + if (s.sign.equals(sign)) { + result = s; + break; + } + } + return result; + } + + public static Function<BigfinDataRow, Sign> newExtractValueFunction() { + return new Function<BigfinDataRow, Sign>() { + @Override + public Sign apply(BigfinDataRow bigfinDataRow) { + Sign result = bigfinDataRow.getSex(); + return result; + } + }; + } + +} diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/Sign.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/Sign.java new file mode 100644 index 0000000..d735381 --- /dev/null +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/Sign.java @@ -0,0 +1,27 @@ +package fr.ifremer.tutti.service.bigfin.signs; + +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; + +import java.util.Map; + +/** + * Created on 2/3/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.13 + */ +public interface Sign { + + public abstract Integer getCategory(); + + public abstract Integer getQualitativeValueId(); + + // if true, can use this value in the import file to replace a skipped category + public abstract boolean isNullEquivalent(); + + public String getSign(); + + public void registerSign(Caracteristic caracteristic, Map<Sign, CaracteristicQualitativeValue> map); + +} diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/Size.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/Size.java new file mode 100644 index 0000000..065f20c --- /dev/null +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/Size.java @@ -0,0 +1,111 @@ +package fr.ifremer.tutti.service.bigfin.signs; + +import com.google.common.base.Function; +import fr.ifremer.adagio.core.dao.referential.pmfm.PmfmId; +import fr.ifremer.adagio.core.dao.referential.pmfm.QualitativeValueId; +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValues; +import fr.ifremer.tutti.service.bigfin.csv.BigfinDataRow; + +import java.util.Map; + +/** + * Created on 2/3/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.13 + */ +public enum Size implements Sign { + + // classe de taille, 1 = petit ; 2 = gros ; 0 = pas de classe de taille (saisie libre donc risque fort de mauvaise saisie) + NOT_SIZED("0") { + @Override + public Integer getCategory() { + return PmfmId.SIZE_CATEGORY.getValue(); + } + + @Override + public Integer getQualitativeValueId() { + return QualitativeValueId.UNSORTED.getValue(); + } + + @Override + public boolean isNullEquivalent() { + return true; + } + + }, + SMALL("1") { + @Override + public Integer getCategory() { + return PmfmId.SIZE_CATEGORY.getValue(); + } + + @Override + public Integer getQualitativeValueId() { + return QualitativeValueId.SIZE_SMALL.getValue(); + } + + @Override + public boolean isNullEquivalent() { + return false; + } + }, + BIG("2") { + @Override + public Integer getCategory() { + return PmfmId.SIZE_CATEGORY.getValue(); + } + + @Override + public Integer getQualitativeValueId() { + return QualitativeValueId.SIZE_BIG.getValue(); + } + + @Override + public boolean isNullEquivalent() { + return false; + } + }; + + private String sign; + + Size(String sign) { + this.sign = sign; + } + + @Override + public String getSign() { + return sign; + } + + @Override + public void registerSign(Caracteristic caracteristic, Map<Sign, CaracteristicQualitativeValue> map) { + Integer valueId = getQualitativeValueId(); + CaracteristicQualitativeValue result = CaracteristicQualitativeValues.getQualitativeValue(caracteristic, valueId); + map.put(this, result); + } + + public static Size getValue(String sign) { + Size result = null; + for (Size s : values()) { + if (s.sign.equals(sign)) { + result = s; + break; + } + } + return result; + } + + public static Function<BigfinDataRow, Sign> newExtractValueFunction() { + return new Function<BigfinDataRow, Sign>() { + @Override + public Sign apply(BigfinDataRow bigfinDataRow) { + Sign result = bigfinDataRow.getSize(); + return result; + } + }; + } + +} diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/VracHorsVrac.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/VracHorsVrac.java new file mode 100644 index 0000000..27b9cbe --- /dev/null +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/bigfin/signs/VracHorsVrac.java @@ -0,0 +1,92 @@ +package fr.ifremer.tutti.service.bigfin.signs; + +import com.google.common.base.Function; +import fr.ifremer.adagio.core.dao.referential.pmfm.PmfmId; +import fr.ifremer.adagio.core.dao.referential.pmfm.QualitativeValueId; +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValues; +import fr.ifremer.tutti.service.bigfin.csv.BigfinDataRow; + +import java.util.Map; + +/** + * Created on 2/3/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.13 + */ +public enum VracHorsVrac implements Sign { + + VRAC("") { + @Override + public Integer getCategory() { + return PmfmId.SORTED_UNSORTED.getValue(); + } + + @Override + public Integer getQualitativeValueId() { + return QualitativeValueId.SORTED_VRAC.getValue(); + } + + @Override + public boolean isNullEquivalent() { + return false; + } + }, + HORS_VRAC("HV") { + @Override + public Integer getCategory() { + return PmfmId.SORTED_UNSORTED.getValue(); + } + + @Override + public Integer getQualitativeValueId() { + return QualitativeValueId.SORTED_HORS_VRAC.getValue(); + } + + @Override + public boolean isNullEquivalent() { + return false; + } + }; + + private String sign; + + VracHorsVrac(String sign) { + this.sign = sign; + } + + @Override + public String getSign() { + return sign; + } + + @Override + public void registerSign(Caracteristic caracteristic, Map<Sign, CaracteristicQualitativeValue> map) { + Integer valueId = getQualitativeValueId(); + CaracteristicQualitativeValue result = CaracteristicQualitativeValues.getQualitativeValue(caracteristic, valueId); + map.put(this, result); + } + + public static VracHorsVrac getValue(String sign) { + VracHorsVrac result = null; + for (VracHorsVrac s : values()) { + if (s.sign.equals(sign)) { + result = s; + break; + } + } + return result; + } + + public static Function<BigfinDataRow, Sign> newExtractValueFunction() { + return new Function<BigfinDataRow, Sign>() { + @Override + public Sign apply(BigfinDataRow bigfinDataRow) { + Sign result = bigfinDataRow.getVracHorsVrac(); + return result; + } + }; + } +} -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.