[Suiviobsmer-commits] r193 - trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl
Author: fdesbois Date: 2010-01-13 18:06:05 +0000 (Wed, 13 Jan 2010) New Revision: 193 Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java Log: Resolve issue on saving FishingZone for SampleRow Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java 2010-01-13 18:02:43 UTC (rev 192) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java 2010-01-13 18:06:05 UTC (rev 193) @@ -212,17 +212,11 @@ } // Add new linked FishingZone // ConcurrentModificationException ???? - for (FishingZone zone : newZones) { - if (log.isInfoEnabled()) { - log.info("boucle 2, begin for zone : "+zone.getCode()+" list size = "+newZones.size()); - } + for (FishingZone zone : new ArrayList<FishingZone>(newZones)) { if (!oldZones.contains(zone)) { updateFishingZones(transaction, zone.getTopiaId(), row, false); rowLog.addChange("La zone de pêche " + zone.getCode() + " a été associée à la ligne"); } - if (log.isInfoEnabled()) { - log.info("boucle 2, end for zone : "+zone.getCode()+" list size = "+newZones.size()); - } } // Save sampleRow : create or update @@ -233,21 +227,6 @@ row.addSampleRowLog(rowLog); rowDAO.update(row); - if(newRow) { - - // Save fishingZones : update links - // FIXME find a way to avoid saving links from FishingZone instead of SampleRow : - // variable inverse="true" in hibernate mapping of FishingZone, how to set this variable to SampleRow instead - FishingZoneDAO fishingZoneDAO = SuiviObsmerModelDAOHelper.getFishingZoneDAO(transaction); - for (FishingZone zone : row.getFishingZone()) { - FishingZone zoneFromDB = fishingZoneDAO.findByTopiaId(zone.getTopiaId()); - List<SampleRow> rows = zoneFromDB.getSampleRow(); - rows.add(row); - zoneFromDB.setSampleRow(rows); - fishingZoneDAO.update(zoneFromDB); - } - } - if (log.isDebugEnabled()) { log.debug("Change log : " + rowLog.getLogText()); log.debug("commit transaction !"); @@ -696,6 +675,7 @@ * @throws IOException for CsvReader errors * @throws TopiaException for SampleMonthDAO errors * @throws ParseException for format errors + * @see #getMonthAndYear(java.lang.String) */ protected void updateRow(TopiaContext transaction, SampleRow sampleRow, CsvReader reader) throws IOException, TopiaException, ParseException {
participants (1)
-
fdesbois@users.labs.libre-entreprise.org