r629 - in trunk: echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb echobase-domain/src/main/resources/META-INF/services echobase-domain/src/main/xmi echobase-services/src/test/java/fr/ifremer/echobase/services echobase-ui/src/main/webapp/WEB-INF/jsp/importData
Author: tchemit Date: 2012-09-06 17:21:36 +0200 (Thu, 06 Sep 2012) New Revision: 629 Url: http://forge.codelutin.com/repositories/revision/echobase/629 Log: refs #1437: Suppression des imports (ajout table imortlog + migration) + fix common import jsp Added: trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV0_9.java trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV1_2.java Modified: trunk/echobase-domain/src/main/resources/META-INF/services/fr.ifremer.echobase.persistence.migration.workingDb.MigrationCallBackForVersion trunk/echobase-domain/src/main/xmi/echobase.zargo trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/FakeEchoBaseServiceContext.java trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/ImportDbServiceTest.java trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureCommonImport.jsp Added: trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV0_9.java =================================================================== --- trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV0_9.java (rev 0) +++ trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV0_9.java 2012-09-06 15:21:36 UTC (rev 629) @@ -0,0 +1,90 @@ +package fr.ifremer.echobase.persistence.migration.workingDb; + +import org.hibernate.dialect.Dialect; +import org.hibernate.dialect.H2Dialect; +import org.hibernate.dialect.PostgreSQLDialect; +import org.nuiton.topia.TopiaException; +import org.nuiton.topia.TopiaNotFoundException; +import org.nuiton.topia.framework.TopiaContextImplementor; +import org.nuiton.util.Version; +import org.nuiton.util.VersionUtil; + +import java.util.List; + +/** + * Migration for version {@code 0.9}. + * + * @author tchemit <chemit@codelutin.com> + * @since 1.2 + */ +public class MigrationCallbackV0_9 extends MigrationCallBackForVersion { + + @Override + public Version getVersion() { + return VersionUtil.valueOf("0.9"); + } + + @Override + protected void prepareMigrationScript(TopiaContextImplementor tx, + List<String> queries, + boolean showSql, + boolean showProgression) throws TopiaException { + + + // add strata column on lengthweightkey table + addStrataToLengthWeightKeyTable(tx, queries); + +// createSexCategoryTable(tx,queries); + } + + protected void addStrataToLengthWeightKeyTable(TopiaContextImplementor tx, + List<String> queries) throws TopiaNotFoundException { + Dialect dialect = + Dialect.getDialect(tx.getHibernateConfiguration().getProperties()); + + if (dialect instanceof PostgreSQLDialect) { + + queries.add("ALTER TABLE lengthweightkey ADD COLUMN strata character varying(255);"); + + queries.add("ALTER TABLE lengthweightkey ADD CONSTRAINT FK1687F88192874545_INDEX_E FOREIGN KEY(strata) REFERENCES strata(topiaid);"); + + } else if (dialect instanceof H2Dialect) { + + queries.add("ALTER TABLE lengthweightkey ADD COLUMN strata VARCHAR(255);"); + + queries.add("ALTER TABLE lengthweightkey ADD CONSTRAINT FK1687F88192874545_INDEX_E FOREIGN KEY(strata) REFERENCES strata(topiaid);"); + } + } + +// +// protected void createSexCategoryTable(TopiaContextImplementor tx, +// List<String> queries) throws TopiaNotFoundException { +// Dialect dialect = +// Dialect.getDialect(tx.getHibernateConfiguration().getProperties()); +// +// if (dialect instanceof PostgreSQLDialect) { +// queries.add("CREATE TABLE sexcategory (\n" + +// "topiaid character varying(255) NOT NULL,\n" + +// "topiaversion bigint NOT NULL,\n" + +// "topiacreatedate date,\n" + +// "name character varying(1024),\n" + +// "meaning character varying(255)\n" + +// ");"); +// queries.add("ALTER TABLE sexcategory ADD CONSTRAINT PRIMARY_KEY_472 PRIMARY KEY(topiaid);"); +// queries.add("ALTER TABLE sexcategory ADD CONSTRAINT CONSTRAINT_INDEX_472 UNIQUE KEY(name);"); +// +// } else if (dialect instanceof H2Dialect) { +// +// queries.add("CREATE TABLE sexcategory (\n" + +// "topiaid VARCHAR(255) NOT NULL,\n" + +// "topiaversion BIGINT NOT NULL,\n" + +// "topiacreatedate DATE,\n" + +// "name VARCHAR(1024),\n" + +// "meaning VARCHAR(255)\n" + +// ");"); +// +// queries.add("ALTER TABLE sexcategory ADD CONSTRAINT PRIMARY_KEY_472 PRIMARY KEY(topiaid);"); +// queries.add("ALTER TABLE sexcategory ADD CONSTRAINT CONSTRAINT_INDEX_472 UNIQUE KEY(topiaid);"); +// } +// } +} Property changes on: trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV0_9.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV1_2.java =================================================================== --- trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV1_2.java (rev 0) +++ trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV1_2.java 2012-09-06 15:21:36 UTC (rev 629) @@ -0,0 +1,83 @@ +package fr.ifremer.echobase.persistence.migration.workingDb; + +import org.hibernate.dialect.Dialect; +import org.hibernate.dialect.H2Dialect; +import org.hibernate.dialect.PostgreSQLDialect; +import org.nuiton.topia.TopiaException; +import org.nuiton.topia.TopiaNotFoundException; +import org.nuiton.topia.framework.TopiaContextImplementor; +import org.nuiton.util.Version; +import org.nuiton.util.VersionUtil; + +import java.util.List; + +/** + * Migration for version {@code 1.2}. + * + * @author tchemit <chemit@codelutin.com> + * @since 1.2 + */ +public class MigrationCallbackV1_2 extends MigrationCallBackForVersion { + + @Override + public Version getVersion() { + return VersionUtil.valueOf("1.2"); + } + + @Override + protected void prepareMigrationScript(TopiaContextImplementor tx, + List<String> queries, + boolean showSql, + boolean showProgression) throws TopiaException { + + + + // create new table import log (http://forge.codelutin.com/issues/1437) + createImportLogTable(tx, queries); + } + + protected void createImportLogTable(TopiaContextImplementor tx, + List<String> queries) throws TopiaNotFoundException { + Dialect dialect = + Dialect.getDialect(tx.getHibernateConfiguration().getProperties()); + + if (dialect instanceof PostgreSQLDialect) { + queries.add("CREATE TABLE importlog (\n" + + "topiaid character varying(255) NOT NULL,\n" + + "topiaversion bigint NOT NULL,\n" + + "topiacreatedate date,\n" + + "importdate date,\n" + + "importtext character varying(1024),\n" + + "importuser character varying(255)\n" + + ");"); + queries.add("ALTER TABLE importlog ADD CONSTRAINT PRIMARY_KEY_99A PRIMARY KEY(topiaid);"); + + queries.add("CREATE TABLE importlog_importid (\n" + + "owner character varying(255) NOT NULL,\n" + + "importid character varying(255) NOT NULL\n" + + ");"); + + queries.add("ALTER TABLE importlog_importid ADD CONSTRAINT FK2987B5F3CDA24477_INDEX_3 FOREIGN KEY(owner) REFERENCES importlog(topiaid);"); + + } else if (dialect instanceof H2Dialect) { + + queries.add("CREATE TABLE importlog (\n" + + "topiaid VARCHAR(255) NOT NULL,\n" + + "topiaversion BIGINT NOT NULL,\n" + + "topiacreatedate DATE,\n" + + "importdate DATE,\n" + + "importtext VARCHAR(1024),\n" + + "importuser VARCHAR(255)\n" + + ");"); + + queries.add("ALTER TABLE importlog ADD CONSTRAINT PRIMARY_KEY_99A PRIMARY KEY(topiaid);"); + + queries.add("CREATE TABLE importlog_importid (\n" + + "owner VARCHAR(255) NOT NULL,\n" + + "importid VARCHAR(255)\n" + + ");"); + + queries.add("ALTER TABLE importlog_importid ADD CONSTRAINT FK2987B5F3CDA24477_INDEX_3 FOREIGN KEY(owner) REFERENCES importlog(topiaid);"); + } + } +} Property changes on: trunk/echobase-domain/src/main/java/fr/ifremer/echobase/persistence/migration/workingDb/MigrationCallbackV1_2.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Modified: trunk/echobase-domain/src/main/resources/META-INF/services/fr.ifremer.echobase.persistence.migration.workingDb.MigrationCallBackForVersion =================================================================== --- trunk/echobase-domain/src/main/resources/META-INF/services/fr.ifremer.echobase.persistence.migration.workingDb.MigrationCallBackForVersion 2012-09-06 15:20:42 UTC (rev 628) +++ trunk/echobase-domain/src/main/resources/META-INF/services/fr.ifremer.echobase.persistence.migration.workingDb.MigrationCallBackForVersion 2012-09-06 15:21:36 UTC (rev 629) @@ -1 +1,3 @@ -fr.ifremer.echobase.persistence.migration.workingDb.MigrationCallbackV1_1 \ No newline at end of file +fr.ifremer.echobase.persistence.migration.workingDb.MigrationCallbackV0_9 +fr.ifremer.echobase.persistence.migration.workingDb.MigrationCallbackV1_1 +fr.ifremer.echobase.persistence.migration.workingDb.MigrationCallbackV1_2 \ No newline at end of file Modified: trunk/echobase-domain/src/main/xmi/echobase.zargo =================================================================== (Binary files differ) Modified: trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/FakeEchoBaseServiceContext.java =================================================================== --- trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/FakeEchoBaseServiceContext.java 2012-09-06 15:20:42 UTC (rev 628) +++ trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/FakeEchoBaseServiceContext.java 2012-09-06 15:21:36 UTC (rev 629) @@ -152,7 +152,7 @@ Properties properties = EchobaseTopiaContexts.loadWorkingDbConfiguration(dbConf); //FIXME should never try to update db, tests db should always be uptodate... - properties.put("hibernate.hbm2ddl.auto", "update"); + //properties.put("hibernate.hbm2ddl.auto", "update"); rootContext = EchobaseTopiaContexts.newDb(properties); } Modified: trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/ImportDbServiceTest.java =================================================================== --- trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/ImportDbServiceTest.java 2012-09-06 15:20:42 UTC (rev 628) +++ trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/ImportDbServiceTest.java 2012-09-06 15:21:36 UTC (rev 629) @@ -51,6 +51,8 @@ @Test public void importDb() throws IOException, TopiaException { + serviceContext.getTransaction().updateSchema(); + ImportDbService service = getService(ImportDbService.class); ImportDbConfiguration conf = new ImportDbConfiguration(getLocale()); Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureCommonImport.jsp =================================================================== --- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureCommonImport.jsp 2012-09-06 15:20:42 UTC (rev 628) +++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureCommonImport.jsp 2012-09-06 15:21:36 UTC (rev 629) @@ -32,19 +32,19 @@ jQuery(document).ready(function () { - $('[name="model.importTtype"]').change(function (event) { + $('[name="model.importType"]').change(function (event) { $('[class~="importMode"]').hide(); $('#' + this.value).show(); $('#' + this.value + ' .errorMessage').hide(); }); - var incomingVal = $('[name="model.importTtype"][checked="checked"]').val(); + var incomingVal = $('[name="model.importType"][checked="checked"]').val(); $('#' + incomingVal).show(); }); </script> -<s:radio id='mode' key='model.importTtype' list="importTypes" +<s:radio id='mode' key='model.importType' list="importTypes" cssClass="cleanBoth" label='%{getText("echobase.common.importType")}' required="true" template="myradiomap"/> @@ -73,7 +73,7 @@ list="missions" headerKey="" headerValue=""/> <br/> - <s:hidden key="model.importTtype" value="COMMON_ALL" label=''/> + <s:hidden key="model.importType" value="COMMON_ALL" label=''/> <s:select key="model.areaOfOperationId" required="true" label='%{getText("echobase.common.areaOfOperation")}' @@ -127,7 +127,7 @@ <s:text name="echobase.legend.importData.configure"/> </legend> - <s:hidden key="model.importTtype" value="COMMON_TRANSECT" label=''/> + <s:hidden key="model.importType" value="COMMON_TRANSECT" label=''/> <div class="cleanBoth help"> <s:a href="%{getDocumentation('imports.html','voyage-transit-transect')}"
participants (1)
-
tchemit@users.forge.codelutin.com