Author: bleny Date: 2011-02-28 17:32:58 +0000 (Mon, 28 Feb 2011) New Revision: 1047 Log: add migration for wao 3.0 Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java 2011-02-28 17:12:10 UTC (rev 1046) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java 2011-02-28 17:32:58 UTC (rev 1047) @@ -791,4 +791,23 @@ // Here we deal with a user who want to update data but miss the feature in Wao queries.add("UPDATE FishingZone SET districtCode='GSA07' WHERE topiaId='fr.ifremer.wao.entity.FishingZone#1264666466997#0.7383156631150655'"); } + + @Override + protected void addTerrestrialDivisions_3_0(List<String> queries) { + queries.add("CREATE TABLE TerrestrialDivision (" + + "topiaId CHARACTER VARYING(255) PRIMARY KEY," + + "topiaVersion BIGINT NOT NULL," + + "topiaCreateDate TIMESTAMP WITHOUT TIME ZONE NOT NULL," + + "code CHARACTER VARYING(255)," + + "skillZoneCode CHARACTER VARYING(255)," + + "skillZoneName CHARACTER VARYING(255)," + + "subPopulationCode CHARACTER VARYING(255)," + + "subPopulationName CHARACTER VARYING(255)," + + "observationUnitCode CHARACTER VARYING(255)," + + "observationUnitName CHARACTER VARYING(255)," + + "regionIfremerCode CHARACTER VARYING(255)," + + "port CHARACTER VARYING(255) NOT NULL," + + "CONSTRAINT port_fkey FOREIGN KEY (port) " + + "REFERENCES TerrestrialLocation (topiaid));"); + } } Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java 2011-02-28 17:12:10 UTC (rev 1046) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java 2011-02-28 17:32:58 UTC (rev 1047) @@ -131,6 +131,8 @@ protected abstract void correctFishingZoneReferential_2_1(List<String> queries); + protected abstract void addTerrestrialDivisions_3_0(List<String> queries); + protected static final Version[] VERSIONS = new Version[] { VersionUtil.valueOf("1.0"), VersionUtil.valueOf("1.1"), @@ -140,7 +142,8 @@ VersionUtil.valueOf("1.5"), VersionUtil.valueOf("1.6"), VersionUtil.valueOf("2.0"), - VersionUtil.valueOf("2.1") + VersionUtil.valueOf("2.1"), + VersionUtil.valueOf("3.0") }; @Override @@ -462,4 +465,16 @@ executeSQL(tx, showSql, showProgression, strings); } + + public void migrateTo_3_0(TopiaContextImplementor tx, + boolean showSql, + boolean showProgression) throws TopiaException { + + List<String> queries = new LinkedList<String>(); + + addTerrestrialDivisions_3_0(queries); + + String[] strings = queries.toArray(new String[queries.size()]); + executeSQL(tx, showSql, showProgression, strings); + } }