This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 54c2925b2805ddb2ca1823bf28d3bc4419d622b6 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Apr 9 10:24:31 2015 +0200 refs #6919 (possibilité d'avoir la source en cours de création) --- .../main/java/fr/ird/observe/db/ReplicationService.java | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/observe-business/src/main/java/fr/ird/observe/db/ReplicationService.java b/observe-business/src/main/java/fr/ird/observe/db/ReplicationService.java index 0468030..da02d00 100644 --- a/observe-business/src/main/java/fr/ird/observe/db/ReplicationService.java +++ b/observe-business/src/main/java/fr/ird/observe/db/ReplicationService.java @@ -29,7 +29,6 @@ import fr.ird.observe.entities.Entities; import fr.ird.observe.entities.Trip; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.entities.longline.TripLonglines; -import fr.ird.observe.entities.seine.TripSeine; import fr.ird.observe.entities.seine.TripSeineDAO; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.tuple.Pair; @@ -40,7 +39,6 @@ import org.nuiton.topia.TopiaException; import org.nuiton.topia.framework.TopiaContextImplementor; import org.nuiton.topia.framework.TopiaSQLQuery; import org.nuiton.topia.persistence.TopiaEntity; -import org.nuiton.topia.persistence.util.TopiaEntityHelper; import org.nuiton.topia.replication.TopiaReplicationService; import org.nuiton.topia.replication.model.ReplicationModel; import org.nuiton.util.StringUtil; @@ -141,6 +139,8 @@ public class ReplicationService { throw new NullPointerException("dstService can not be null"); } srcService.checkState(DataSourceState.OPEN); + // le service peut-être en cours d'ouverture + dstService.checkState(DataSourceState.INIT, DataSourceState.OPEN); // recuperation des marees a repliquer @@ -151,15 +151,18 @@ public class ReplicationService { srcCtxt = srcService.beginTransaction("replicateData"); TripSeineDAO srcTripDAO = ObserveDAOHelper.getTripSeineDAO(srcCtxt); - List<TripSeine> srcTripSeines = srcTripDAO.findAll(); + List<String> allIds = srcTripDAO.findAllIds(); + +// List<TripSeine> srcTripSeines = srcTripDAO.findAll(); - if (CollectionUtils.isEmpty(srcTripSeines)) { + if (CollectionUtils.isEmpty(allIds)) { // aucune donnee a repliquer srcService.fireNewMessage( t("observe.storage.message.replicate.data.no.data")); return; } - topiaIds = TopiaEntityHelper.getTopiaIdArray(srcTripSeines); +// topiaIds = TopiaEntityHelper.getTopiaIdArray(srcTripSeines); + topiaIds= allIds.toArray(new String[allIds.size()]); } catch (TopiaException e) { throw new DataSourceException(e, "replicateData"); @@ -199,7 +202,9 @@ public class ReplicationService { } srcService.checkState(DataSourceState.OPEN); - dstService.checkState(DataSourceState.OPEN); + // le service peut-être en cours d'ouverture + dstService.checkState(DataSourceState.INIT, DataSourceState.OPEN); + if (srcService.equals(dstService)) { throw new IllegalArgumentException( "can not replcate to the same service..."); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.