[tutti] branch develop updated (68079f0 -> 4eb8e4d)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository tutti. See http://git.codelutin.com/tutti.git from 68079f0 refs #5828 new 4eb8e4d refs #5997 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 4eb8e4de37e1798eeefeaf6b74aadcd72523faf4 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 3 17:05:45 2014 +0100 refs #5997 Summary of changes: .../tutti/persistence/entities/TuttiEntity.java | 4 --- .../persistence/entities/TuttiEntityBean.java | 5 --- .../service/ReferentialPersistenceServiceImpl.java | 2 +- .../tutti/service/referential/GearModel.java | 22 +------------ .../tutti/service/referential/PersonModel.java | 23 ++------------ .../referential/ReferentialImportService.java | 15 ++++++++- .../tutti/service/referential/SpeciesModel.java | 22 +------------ .../TemporaryReferentialEntityIdParser.java | 36 ++++++++++++++++++++++ .../resources/i18n/tutti-service_en_GB.properties | 4 +++ .../resources/i18n/tutti-service_fr_FR.properties | 4 +++ .../ui/swing/util/AbstractTuttiBeanUIModel.java | 5 --- 11 files changed, 63 insertions(+), 79 deletions(-) create mode 100644 tutti-service/src/main/java/fr/ifremer/tutti/service/referential/TemporaryReferentialEntityIdParser.java -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
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 4eb8e4de37e1798eeefeaf6b74aadcd72523faf4 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 3 17:05:45 2014 +0100 refs #5997 --- .../tutti/persistence/entities/TuttiEntity.java | 4 --- .../persistence/entities/TuttiEntityBean.java | 5 --- .../service/ReferentialPersistenceServiceImpl.java | 2 +- .../tutti/service/referential/GearModel.java | 22 +------------ .../tutti/service/referential/PersonModel.java | 23 ++------------ .../referential/ReferentialImportService.java | 15 ++++++++- .../tutti/service/referential/SpeciesModel.java | 22 +------------ .../TemporaryReferentialEntityIdParser.java | 36 ++++++++++++++++++++++ .../resources/i18n/tutti-service_en_GB.properties | 4 +++ .../resources/i18n/tutti-service_fr_FR.properties | 4 +++ .../ui/swing/util/AbstractTuttiBeanUIModel.java | 5 --- 11 files changed, 63 insertions(+), 79 deletions(-) diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/TuttiEntity.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/TuttiEntity.java index edacfe2..c2136a8 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/TuttiEntity.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/TuttiEntity.java @@ -34,16 +34,12 @@ public interface TuttiEntity extends Serializable { public static final String PROPERTY_ID = "id"; - public static final String PROPERTY_ID_AS_INT = "idAsInt"; - String getId(); void setId(String id); Integer getIdAsInt(); - void setIdAsInt(Integer idAsInt); - void setId(Integer id); } diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/TuttiEntityBean.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/TuttiEntityBean.java index 7cae605..b110487 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/TuttiEntityBean.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/TuttiEntityBean.java @@ -70,11 +70,6 @@ public abstract class TuttiEntityBean implements Serializable, TuttiEntity { } @Override - public void setIdAsInt(Integer idAsInt) { - setId(idAsInt); - } - - @Override public boolean equals(Object o) { if (this == o) { return true; diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ReferentialPersistenceServiceImpl.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ReferentialPersistenceServiceImpl.java index 9896723..d1042c8 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ReferentialPersistenceServiceImpl.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ReferentialPersistenceServiceImpl.java @@ -990,7 +990,7 @@ public class ReferentialPersistenceServiceImpl extends AbstractPersistenceServic } Species species = getSpeciesByReferenceTaxonId(id); if (species == null) { - throw new ApplicationBusinessException(String.format("Species with id %d does not exists", id)); + throw new ApplicationBusinessException(String.format("Species with id %d does not exist", id)); } if (checkIfUsed) { diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/GearModel.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/GearModel.java index 64a9e8d..6574232 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/GearModel.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/GearModel.java @@ -47,27 +47,7 @@ public class GearModel extends TuttiCsvUtil.AbstractTuttiImportExportModel<GearR // import definition - newMandatoryColumn(GearRow.PROPERTY_ID, GearRow.PROPERTY_ID_AS_INT, new Common.IntegerParserFormatter(null, true) { - - @Override - public Integer parse(String value) throws ParseException { - - // must be an integer - Integer parse = super.parse(value); - - if (parse != null) { - - // must also be negative value - if (parse >= 0) { - throw new IllegalArgumentException(t("tutti.service.referential.import.gear.idNotNegative.error", parse)); - } - } - - return parse; - - } - - }); + newMandatoryColumn(GearRow.PROPERTY_ID, new TemporaryReferentialEntityIdParser(n("tutti.service.referential.import.gear.idNotNegative.error"))); newMandatoryColumn(GearRow.PROPERTY_NAME); newMandatoryColumn(GearRow.PROPERTY_LABEL); newMandatoryColumn(GearRow.PROPERTY_SCIENTIFIC_GEAR, Common.PRIMITIVE_BOOLEAN); diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/PersonModel.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/PersonModel.java index a5a4d7b..1fcd1c5 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/PersonModel.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/PersonModel.java @@ -29,6 +29,7 @@ import org.nuiton.csv.Common; import java.text.ParseException; +import static org.nuiton.i18n.I18n.n; import static org.nuiton.i18n.I18n.t; /** @@ -44,27 +45,7 @@ public class PersonModel extends TuttiCsvUtil.AbstractTuttiImportExportModel<Per // import definition - newMandatoryColumn(PersonRow.PROPERTY_ID, PersonRow.PROPERTY_ID_AS_INT, new Common.IntegerParserFormatter(null, true) { - - @Override - public Integer parse(String value) throws ParseException { - - // must be an integer - Integer parse = super.parse(value); - - if (parse != null) { - - // must also be negative value - if (parse >= 0) { - throw new IllegalArgumentException(t("tutti.service.referential.import.person.idNotNegative.error", parse)); - } - } - - return parse; - - } - - }); + newMandatoryColumn(PersonRow.PROPERTY_ID, new TemporaryReferentialEntityIdParser(n("tutti.service.referential.import.person.idNotNegative.error"))); newMandatoryColumn(PersonRow.PROPERTY_FIRST_NAME); newMandatoryColumn(PersonRow.PROPERTY_LAST_NAME); newMandatoryColumn(PersonRow.PROPERTY_TO_DELETE, TuttiCsvUtil.BOOLEAN); diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java index d4a40e0..d63ce21 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java @@ -136,10 +136,13 @@ public class ReferentialImportService extends AbstractTuttiService { } if (delete) { + if (id == null) { + throw new IllegalArgumentException(t("tutti.service.referential.import.species.cannotDeleteWithoutId.error", id)); + } if (persistenceService.isTemporarySpeciesUsed(id)) { throw new IllegalArgumentException(t("tutti.service.referential.import.species.used.error", id)); } - toDelete.add(id); + toDelete.add(species.getReferenceTaxonId()); existingSpeciesNames.remove(name); } else { @@ -236,10 +239,14 @@ public class ReferentialImportService extends AbstractTuttiService { } if (delete) { + if (id == null) { + throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.cannotDeleteWithoutId.error", id)); + } if (persistenceService.isTemporaryVesselUsed(id)) { throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.used.error", id)); } toDelete.add(id); + existingVesselRegistrationCodes.remove(registrationCode); } else { if (id == null) { @@ -334,6 +341,9 @@ public class ReferentialImportService extends AbstractTuttiService { } if (delete) { + if (id == null) { + throw new IllegalArgumentException(t("tutti.service.referential.import.person.cannotDeleteWithoutId.error", id)); + } if (persistenceService.isTemporaryPersonUsed(id)) { throw new IllegalArgumentException(t("tutti.service.referential.import.person.used.error", id)); } @@ -440,6 +450,9 @@ public class ReferentialImportService extends AbstractTuttiService { } if (delete) { + if (id == null) { + throw new IllegalArgumentException(t("tutti.service.referential.import.gear.cannotDeleteWithoutId.error", id)); + } if (persistenceService.isTemporaryGearUsed(id)) { throw new IllegalArgumentException(t("tutti.service.referential.import.gear.used.error", id)); } diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/SpeciesModel.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/SpeciesModel.java index a602edf..3de629f 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/SpeciesModel.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/SpeciesModel.java @@ -50,27 +50,7 @@ public class SpeciesModel extends TuttiCsvUtil.AbstractTuttiImportExportModel<Sp // import definition - newMandatoryColumn(SpeciesRow.PROPERTY_ID, SpeciesRow.PROPERTY_ID_AS_INT, new Common.IntegerParserFormatter(null, true) { - - @Override - public Integer parse(String value) throws ParseException { - - // must be an integer - Integer parse = super.parse(value); - - if (parse != null) { - - // must also be negative value - if (parse >= 0) { - throw new IllegalArgumentException(t("tutti.service.referential.import.species.idNotNegative.error", parse)); - } - } - - return parse; - - } - - }); + newMandatoryColumn(SpeciesRow.PROPERTY_ID, new TemporaryReferentialEntityIdParser(n("tutti.service.referential.import.species.idNotNegative.error"))); newMandatoryColumn(SpeciesRow.PROPERTY_NAME); newMandatoryColumn(SpeciesRow.PROPERTY_TO_DELETE, TuttiCsvUtil.BOOLEAN); diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/TemporaryReferentialEntityIdParser.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/TemporaryReferentialEntityIdParser.java new file mode 100644 index 0000000..4216ddb --- /dev/null +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/TemporaryReferentialEntityIdParser.java @@ -0,0 +1,36 @@ +package fr.ifremer.tutti.service.referential; + +import org.apache.commons.lang3.StringUtils; +import org.nuiton.csv.ValueParser; + +import java.text.ParseException; + +import static org.nuiton.i18n.I18n.t; + +/** + * @author Kevin Morin (Code Lutin) + * @since 3.8 + */ +public class TemporaryReferentialEntityIdParser implements ValueParser<String> { + + protected String idNotNegativeMessageKey; + + public TemporaryReferentialEntityIdParser(String idNotNegativeMessageKey) { + this.idNotNegativeMessageKey = idNotNegativeMessageKey; + } + + @Override + public String parse(String value) throws ParseException { + + value = StringUtils.trimToNull(value); + + if (value != null) { + int id = Integer.parseInt(value); + if (id >= 0) { + throw new IllegalArgumentException(t(idNotNegativeMessageKey, id)); + } + } + + return value; + } +} diff --git a/tutti-service/src/main/resources/i18n/tutti-service_en_GB.properties b/tutti-service/src/main/resources/i18n/tutti-service_en_GB.properties index e5fb55e..d54161c 100644 --- a/tutti-service/src/main/resources/i18n/tutti-service_en_GB.properties +++ b/tutti-service/src/main/resources/i18n/tutti-service_en_GB.properties @@ -217,24 +217,28 @@ tutti.service.referential.export.gear.error= tutti.service.referential.export.person.error= tutti.service.referential.export.species.error= tutti.service.referential.export.vessel.error= +tutti.service.referential.import.gear.cannotDeleteWithoutId.error= tutti.service.referential.import.gear.existingName.error= tutti.service.referential.import.gear.idNotNegative.error= tutti.service.referential.import.gear.noName.error= tutti.service.referential.import.gear.notExistingId.error= tutti.service.referential.import.gear.used.error= tutti.service.referential.import.gears.error= +tutti.service.referential.import.person.cannotDeleteWithoutId.error= tutti.service.referential.import.person.existingName.error= tutti.service.referential.import.person.idNotNegative.error= tutti.service.referential.import.person.noName.error= tutti.service.referential.import.person.notExistingId.error= tutti.service.referential.import.person.used.error= tutti.service.referential.import.persons.error= +tutti.service.referential.import.species.cannotDeleteWithoutId.error= tutti.service.referential.import.species.error= tutti.service.referential.import.species.existingName.error= tutti.service.referential.import.species.idNotNegative.error= tutti.service.referential.import.species.noName.error= tutti.service.referential.import.species.notExistingId.error= tutti.service.referential.import.species.used.error= +tutti.service.referential.import.vessel.cannotDeleteWithoutId.error= tutti.service.referential.import.vessel.codePrefixMissing.error= tutti.service.referential.import.vessel.existingRegistrationCode.error= tutti.service.referential.import.vessel.noRegistrationCode.error= diff --git a/tutti-service/src/main/resources/i18n/tutti-service_fr_FR.properties b/tutti-service/src/main/resources/i18n/tutti-service_fr_FR.properties index 455163e..5ea79ee 100644 --- a/tutti-service/src/main/resources/i18n/tutti-service_fr_FR.properties +++ b/tutti-service/src/main/resources/i18n/tutti-service_fr_FR.properties @@ -197,24 +197,28 @@ tutti.service.referential.export.gear.error=Erreur lors de l'export des engins d tutti.service.referential.export.person.error=Erreur lors de l'export des personnes dans le fichier %s tutti.service.referential.export.species.error=Erreur lors de l'export des espèces dans le fichier %s tutti.service.referential.export.vessel.error=Erreur lors de l'export des navires dans le fichier %s +tutti.service.referential.import.gear.cannotDeleteWithoutId.error=L'identifiant est obligatoire pour la suppression tutti.service.referential.import.gear.existingName.error=L'engin '%s' n'a pas été ajouté au référentiel car il est déjà présent tutti.service.referential.import.gear.idNotNegative.error=L'identifiant d'un engin temporaire doit être négatif \: %s tutti.service.referential.import.gear.noName.error=Le nom de l'engin est obligatoire tutti.service.referential.import.gear.notExistingId.error=L'identifiant '%s' n'a pas été trouvé parmi les engins temporaires tutti.service.referential.import.gear.used.error=L'engin temporaire %s est utilisé dans l'application. Vous devez le remplacer pour pouvoir le supprimer. tutti.service.referential.import.gears.error=Erreur lors de l'import des engins du fichier %s +tutti.service.referential.import.person.cannotDeleteWithoutId.error=L'identifiant est obligatoire pour la suppression tutti.service.referential.import.person.existingName.error=Une personne avec ce nom (nom + prénom) existe déjà tutti.service.referential.import.person.idNotNegative.error=L'identifiant d'une personne temporaire doit être négatif \: %s tutti.service.referential.import.person.noName.error=Le nom de la personne (prénom ou nom) est obligatoire tutti.service.referential.import.person.notExistingId.error=L'identifiant '%s' n'a pas été trouvé parmi les personnes temporaires tutti.service.referential.import.person.used.error=La personne temporaire %s est utilisée dans l'application. Vous devez la remplacer pour pouvoir la supprimer. tutti.service.referential.import.persons.error=Erreur lors de l'import des personnes du fichier %s +tutti.service.referential.import.species.cannotDeleteWithoutId.error=L'identifiant est obligatoire pour la suppression tutti.service.referential.import.species.error=Erreur lors de l'import des espèces du fichier %s tutti.service.referential.import.species.existingName.error=L'espèce '%s' n'a pas été ajoutée au référentiel car elle est déjà présente tutti.service.referential.import.species.idNotNegative.error=L'identifiant d'une espèce temporaire doit être négatif \: %s tutti.service.referential.import.species.noName.error=Le nom pour l'espèce %s est obligatoire. tutti.service.referential.import.species.notExistingId.error=L'identifiant '%s' n'a pas été trouvé parmi les espèces temporaires tutti.service.referential.import.species.used.error=L'espèce temporaire %s est utilisée dans l'application. Vous devez la remplacer pour pouvoir la supprimer. +tutti.service.referential.import.vessel.cannotDeleteWithoutId.error=L'identifiant est obligatoire pour la suppression tutti.service.referential.import.vessel.codePrefixMissing.error=L'identifiant d'un navire temporaire doit commencer par %1$s \: %2$s tutti.service.referential.import.vessel.existingRegistrationCode.error=Le navire '%s' n'a pas été ajouté au référentiel car il est déjà présent tutti.service.referential.import.vessel.noRegistrationCode.error=L'immatriculation est obligatoire diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiBeanUIModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiBeanUIModel.java index bf71bee..8a240b8 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiBeanUIModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiBeanUIModel.java @@ -117,11 +117,6 @@ public abstract class AbstractTuttiBeanUIModel<E, B extends AbstractTuttiBeanUIM } @Override - public void setIdAsInt(Integer idAsInt) { - setId(idAsInt); - } - - @Override public void setId(Integer id) { if (id == null) { this.id = null; -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm