[Suiviobsmer-commits] r598 - trunk/wao-business/src/main/java/fr/ifremer/wao
Author: fdesbois Date: 2010-07-08 17:46:41 +0000 (Thu, 08 Jul 2010) New Revision: 598 Log: Evo #2352 : Cartography for contacts : - Use fixed topiaId for BoatDistrict creation in migration Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java 2010-07-08 17:18:49 UTC (rev 597) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java 2010-07-08 17:46:41 UTC (rev 598) @@ -39,6 +39,7 @@ import java.util.Date; import java.util.HashMap; import java.util.HashSet; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Set; @@ -169,10 +170,10 @@ @Override protected Map<String, List<String>> retrieveBoatDistrictCodes_1_5a(TopiaContextImplementor tx) throws TopiaException { - Map<String, List<String>> boatDistrictCodes = new HashMap<String, List<String>>(); + Map<String, List<String>> boatDistrictCodes = new LinkedHashMap<String, List<String>>(); SQLQuery query = tx.getHibernate(). - createSQLQuery("SELECT topiaId, districtCode FROM Boat"); + createSQLQuery("SELECT topiaId, districtCode FROM Boat ORDER BY topiaCreateDate"); List<Object[]> results = query.list(); @@ -205,6 +206,10 @@ ");"); } + protected static final long BOAT_DISTRICT_ID_TIMESTAMP = 1239832675584l; + + protected static final double BOAT_DISTRICT_ID_RANDOM = 0.7208429105932204; + @Override protected Map<String, String> insertBoatDistricts_1_5c(List<String> queries, Map<String, List<String>> boatDistrictCodes) { @@ -218,9 +223,13 @@ StringBuilder query = new StringBuilder("INSERT INTO BoatDistrict VALUES "); String separator = ""; + double random = BOAT_DISTRICT_ID_RANDOM; for (String code : codes) { - // FIXME-fdesbois-2010-06-29 : Seems dangerous to use class, maybe it's better to use full qualified name 'fr.ifremer.wao.entity.BoatDistrict' - String districtId = TopiaId.create(BoatDistrict.class); + + random++; + String districtId = "fr.ifremer.wao.entity.BoatDistrict#" + + BOAT_DISTRICT_ID_TIMESTAMP + "#" + random; + String createDate = dateFormat.format(new Date()); query.append(separator).append(String.format( "('%s', %d, '%s', '%s', null, null, null)",
participants (1)
-
fdesbois@users.labs.libre-entreprise.org