branch develop updated (6b7a0f0 -> 12328c6)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository wao. See http://git.codelutin.com/wao.git from 6b7a0f0 Fusion du référentiel des espèces cibles dans develop (fixes #5973) new ff4a960 Simplification bête new 12328c6 La version 4.3 n'aura pas lieu, on renomme la migration The 2 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 12328c6721c4a5da21e09757434c9279bb7c3d9e Author: Brendan Le Ny <bleny@codelutin.com> Date: Thu Dec 18 17:43:52 2014 +0100 La version 4.3 n'aura pas lieu, on renomme la migration commit ff4a960c8a89b331a0ce19ef36efa287c5b2d88c Author: Brendan Le Ny <bleny@codelutin.com> Date: Thu Dec 18 17:21:52 2014 +0100 Simplification bête Summary of changes: ...sql => V5_0__add_species,_add_laboratories.sql} | 0 .../service/administration/ReferentialService.java | 80 +++++++--------------- 2 files changed, 25 insertions(+), 55 deletions(-) rename wao-persistence/src/main/resources/db/migration/{V4_3__add_species,_add_laboratories.sql => V5_0__add_species,_add_laboratories.sql} (100%) -- 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 wao. See http://git.codelutin.com/wao.git commit ff4a960c8a89b331a0ce19ef36efa287c5b2d88c Author: Brendan Le Ny <bleny@codelutin.com> Date: Thu Dec 18 17:21:52 2014 +0100 Simplification bête --- .../service/administration/ReferentialService.java | 80 +++++++--------------- 1 file changed, 25 insertions(+), 55 deletions(-) diff --git a/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java b/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java index eda6d1b..23a0f5b 100644 --- a/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java +++ b/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java @@ -29,6 +29,7 @@ import com.google.common.base.Preconditions; import com.google.common.base.Splitter; import com.google.common.collect.Collections2; import com.google.common.collect.ImmutableSet; +import com.google.common.collect.ImmutableSetMultimap; import com.google.common.collect.Iterables; import com.google.common.collect.Sets; import fr.ifremer.wao.WaoTechnicalException; @@ -85,9 +86,7 @@ import org.nuiton.util.beans.Binder; import org.nuiton.util.beans.BinderFactory; import java.io.InputStream; -import java.util.Arrays; import java.util.Collection; -import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; @@ -108,29 +107,18 @@ public class ReferentialService extends WaoServiceSupport { protected static final Splitter BOAT_REGISTRATION_CODES_SPLITTER = Splitter.on(Pattern.compile("[^0-9]+")).omitEmptyStrings(); /** Pour chaque programme, les référentiels utilisés par ce programme. */ - protected static final Map<ObsProgram, List<String>> PER_PROGRAM_REFERENTIAL; - - static { - Map<ObsProgram, List<String>> perProgramReferential = new HashMap<>(); - - perProgramReferential.put(ObsProgram.OBSMER, Arrays.asList( - FishingZone.class.getName(), - ContactStateMotif.class.getName(), - TerrestrialLocation.class.getName(), - Boat.class.getName())); - - perProgramReferential.put(ObsProgram.OBSVENTE, Arrays.asList( - FishingZone.class.getName(), - TerrestrialLocation.class.getName(), - Boat.class.getName())); - - perProgramReferential.put(ObsProgram.SCLEROCHRONOLOGY, Arrays.asList( - FishingZone.class.getName(), - Species.class.getName())); - - PER_PROGRAM_REFERENTIAL = Collections.unmodifiableMap(perProgramReferential); - } - + protected static final ImmutableSetMultimap<ObsProgram, Class<? extends TopiaEntity>> PER_PROGRAM_REFERENTIAL = + ImmutableSetMultimap.<ObsProgram, Class<? extends TopiaEntity>>builder() + .put(ObsProgram.OBSMER, FishingZone.class) + .put(ObsProgram.OBSMER, ContactStateMotif.class) + .put(ObsProgram.OBSMER, TerrestrialLocation.class) + .put(ObsProgram.OBSMER, Boat.class) + .put(ObsProgram.OBSVENTE, FishingZone.class) + .put(ObsProgram.OBSVENTE, TerrestrialLocation.class) + .put(ObsProgram.OBSVENTE, Boat.class) + .put(ObsProgram.SCLEROCHRONOLOGY, FishingZone.class) + .put(ObsProgram.SCLEROCHRONOLOGY, Species.class) + .build(); /** * Permet de maintenir à jour les informations sur les référentiels. À @@ -140,21 +128,12 @@ public class ReferentialService extends WaoServiceSupport { * Cela aura pour effet de sauvegarder la date de dernière mise à jour du * référentiel lorsqu'il faudra l'indiquer aux administrateurs plus tard. * - * @param entityClassFqn le FQN de la classe-entité du référentiel modifié. - * Il doit être parmi les classe listées dans #PER_PROGRAM_REFERENTIAL + * @param entityClass la classe-entité du référentiel modifié. + * Elle doit être parmi les classe listées dans #PER_PROGRAM_REFERENTIAL */ - protected void updateReferentialMeta(String entityClassFqn) { + protected void updateReferentialMeta(Class<? extends TopiaEntity> entityClass) { - Class<?> entityClass; - try { - entityClass = getClass().getClassLoader().loadClass(entityClassFqn); - } catch (ClassNotFoundException e) { - throw new IllegalArgumentException(entityClassFqn); - } - - if ( ! TopiaEntity.class.isAssignableFrom(entityClass)) { - throw new IllegalArgumentException("il faut passer le FQN d'une classe d'entité"); - } + String entityClassFqn = entityClass.getName(); ReferentialMetaTopiaDao dao = getPersistenceContext().getReferentialMetaDao(); ReferentialMeta referentialMeta = dao.forEntityClassFqnEquals(entityClassFqn).findUniqueOrNull(); @@ -202,7 +181,7 @@ public class ReferentialService extends WaoServiceSupport { throw new ImportErrorException(e); } - updateReferentialMeta(FishingZone.class.getName()); + updateReferentialMeta(FishingZone.class); commit(); @@ -365,7 +344,7 @@ public class ReferentialService extends WaoServiceSupport { log.info(regionAdded + " terrestrial region added, " + regionUpdated + " updated"); } - updateReferentialMeta(TerrestrialLocation.class.getName()); + updateReferentialMeta(TerrestrialLocation.class); commit(); @@ -416,7 +395,7 @@ public class ReferentialService extends WaoServiceSupport { throw new ImportErrorException(e); } - updateReferentialMeta(ContactStateMotif.class.getName()); + updateReferentialMeta(ContactStateMotif.class); commit(); @@ -597,20 +576,11 @@ public class ReferentialService extends WaoServiceSupport { List<ReferentialState> referentialStates = new LinkedList<>(); - for (String entityClassFqn : PER_PROGRAM_REFERENTIAL.get(obsProgram)) { + for (Class<? extends TopiaEntity> entityClass : PER_PROGRAM_REFERENTIAL.get(obsProgram)) { - Class<?> entityClass; - try { - entityClass = getClass().getClassLoader().loadClass(entityClassFqn); - } catch (ClassNotFoundException e) { - throw new WaoTechnicalException("cannot load class " + entityClassFqn, e); - } - - if ( ! TopiaEntity.class.isAssignableFrom(entityClass)) { - throw new IllegalArgumentException("il faut passer le FQN d'une classe d'entité"); - } + String entityClassFqn = entityClass.getName(); - TopiaDao<? extends TopiaEntity> dao = getPersistenceContext().getDao((Class<? extends TopiaEntity>) entityClass); + TopiaDao<? extends TopiaEntity> dao = getPersistenceContext().getDao(entityClass); long count = dao.count(); ReferentialMetaTopiaDao referentialMetaDao = getPersistenceContext().getReferentialMetaDao(); @@ -708,7 +678,7 @@ public class ReferentialService extends WaoServiceSupport { throw new ImportErrorException(e); } - updateReferentialMeta(Boat.class.getName()); + updateReferentialMeta(Boat.class); commit(); @@ -856,7 +826,7 @@ public class ReferentialService extends WaoServiceSupport { throw new ImportErrorException(e); } - updateReferentialMeta(Species.class.getName()); + updateReferentialMeta(Species.class); commit(); -- 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 wao. See http://git.codelutin.com/wao.git commit 12328c6721c4a5da21e09757434c9279bb7c3d9e Author: Brendan Le Ny <bleny@codelutin.com> Date: Thu Dec 18 17:43:52 2014 +0100 La version 4.3 n'aura pas lieu, on renomme la migration --- ...cies,_add_laboratories.sql => V5_0__add_species,_add_laboratories.sql} | 0 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/wao-persistence/src/main/resources/db/migration/V4_3__add_species,_add_laboratories.sql b/wao-persistence/src/main/resources/db/migration/V5_0__add_species,_add_laboratories.sql similarity index 100% rename from wao-persistence/src/main/resources/db/migration/V4_3__add_species,_add_laboratories.sql rename to wao-persistence/src/main/resources/db/migration/V5_0__add_species,_add_laboratories.sql -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm