prepare cdm 4.7
authorAndreas Müller <a.mueller@bgbm.org>
Tue, 14 Mar 2017 08:31:48 +0000 (09:31 +0100)
committerAndreas Müller <a.mueller@bgbm.org>
Thu, 6 Apr 2017 12:37:07 +0000 (14:37 +0200)
cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/metadata/CdmMetaData.java
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/CdmUpdater.java
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v40_41/SchemaUpdater_40_41.java
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v41_47/SchemaUpdater_41_47.java [new file with mode: 0644]

index dac6132a866278f186b55f1f19320ff857e6582f..196cfabc852bf87dd1c446207af74c9b65617b1f 100644 (file)
@@ -46,10 +46,9 @@ public class CdmMetaData extends CdmBase{
         * be handled by SCHEMA_VALIDATION.UPDATE
         * The last number represents the date of change.
         */
-//     private static final String dbSchemaVersion = "3.6.0.0.201527040000";
 //     private static final String dbSchemaVersion = "4.0.0.0.201604200000";
-       private static final String dbSchemaVersion = "4.1.0.0.201607300000";
-
+//     private static final String dbSchemaVersion = "4.1.0.0.201607300000";
+  private static final String dbSchemaVersion = "4.7.0.0.201710040000";
 
 
 
index bbe9459131b03d45ba4804158c3a81e3a55bdba1..c3857b29921c9169195b3e4593e109dc0e81c49e 100644 (file)
@@ -17,8 +17,8 @@ import eu.etaxonomy.cdm.common.monitor.DefaultProgressMonitor;
 import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
 import eu.etaxonomy.cdm.database.CdmDataSource;
 import eu.etaxonomy.cdm.database.ICdmDataSource;
-import eu.etaxonomy.cdm.database.update.v40_41.SchemaUpdater_40_41;
 import eu.etaxonomy.cdm.database.update.v40_41.TermUpdater_40_41;
+import eu.etaxonomy.cdm.database.update.v41_47.SchemaUpdater_41_47;
 import eu.etaxonomy.cdm.model.metadata.CdmMetaData;
 
 /**
@@ -84,7 +84,7 @@ public class CdmUpdater {
      * @return
      */
     private ISchemaUpdater getCurrentSchemaUpdater() {
-        return SchemaUpdater_40_41.NewInstance();
+        return SchemaUpdater_41_47.NewInstance();
     }
 
     /**
index 909e08f4b7e193ec1785bc54eda9cc842f4499a6..d7dd7c9163b0f14dc62e4af6433efdadcd3a359f 100644 (file)
@@ -27,6 +27,7 @@ import eu.etaxonomy.cdm.database.update.SimpleSchemaUpdaterStep;
 import eu.etaxonomy.cdm.database.update.SortIndexUpdater;
 import eu.etaxonomy.cdm.database.update.TableDroper;
 import eu.etaxonomy.cdm.database.update.v36_40.SchemaUpdater_36_40;
+import eu.etaxonomy.cdm.database.update.v41_47.SchemaUpdater_41_47;
 
 /**
  * @author a.mueller
@@ -488,7 +489,7 @@ public class SchemaUpdater_40_41 extends SchemaUpdaterBase {
 
     @Override
        public ISchemaUpdater getNextUpdater() {
-               return null;
+               return SchemaUpdater_41_47.NewInstance();
        }
 
        @Override
diff --git a/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v41_47/SchemaUpdater_41_47.java b/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v41_47/SchemaUpdater_41_47.java
new file mode 100644 (file)
index 0000000..765e576
--- /dev/null
@@ -0,0 +1,118 @@
+/**
+ * Copyright (C) 2007 EDIT
+ * European Distributed Institute of Taxonomy
+ * http://www.e-taxonomy.eu
+ *
+ * The contents of this file are subject to the Mozilla Public License Version 1.1
+ * See LICENSE.TXT at the top of this package for the full license terms.
+ */
+
+package eu.etaxonomy.cdm.database.update.v41_47;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.log4j.Logger;
+
+import eu.etaxonomy.cdm.database.update.ColumnAdder;
+import eu.etaxonomy.cdm.database.update.ISchemaUpdater;
+import eu.etaxonomy.cdm.database.update.ISchemaUpdaterStep;
+import eu.etaxonomy.cdm.database.update.IndexAdder;
+import eu.etaxonomy.cdm.database.update.LanguageStringTableCreator;
+import eu.etaxonomy.cdm.database.update.SchemaUpdaterBase;
+import eu.etaxonomy.cdm.database.update.v40_41.NomenclaturalCodeUpdater;
+import eu.etaxonomy.cdm.database.update.v40_41.SchemaUpdater_40_41;
+
+/**
+ * @author a.mueller
+ * @created 16.04.2016
+ */
+public class SchemaUpdater_41_47 extends SchemaUpdaterBase {
+
+       @SuppressWarnings("unused")
+       private static final Logger logger = Logger.getLogger(SchemaUpdater_41_47.class);
+       private static final String endSchemaVersion = "4.1.0.0.201607300000";
+       private static final String startSchemaVersion = "4.0.0.0.201604200000";
+
+       // ********************** FACTORY METHOD *************************************
+
+       public static SchemaUpdater_41_47 NewInstance() {
+               return new SchemaUpdater_41_47();
+       }
+
+       /**
+        * @param startSchemaVersion
+        * @param endSchemaVersion
+        */
+       protected SchemaUpdater_41_47() {
+               super(startSchemaVersion, endSchemaVersion);
+       }
+
+       @Override
+       protected List<ISchemaUpdaterStep> getUpdaterList() {
+
+               String stepName;
+               String tableName;
+               ISchemaUpdaterStep step;
+               String query;
+               String newColumnName;
+               String oldColumnName;
+
+               List<ISchemaUpdaterStep> stepList = new ArrayList<ISchemaUpdaterStep>();
+
+
+        //#3658 update nomenclatural code
+        NomenclaturalCodeUpdater.NewInstance(stepList);
+
+        //#5970
+        //Implement allowOverride in CdmPreference
+        stepName = "Add allowOverride in CdmPreference";
+        tableName = "CdmPreference";
+        newColumnName = "allowOverride";
+        step = ColumnAdder.NewBooleanInstance(stepName, tableName, newColumnName, ! INCLUDE_AUDIT, false);
+        stepList.add(step);
+
+        //#5875
+        //Implement isDefault to DescriptionBase
+        stepName = "Add isDefault in DescriptionBase";
+        tableName = "DescriptionBase";
+        newColumnName = "isDefault";
+        step = ColumnAdder.NewBooleanInstance(stepName, tableName, newColumnName, INCLUDE_AUDIT, false);
+        stepList.add(step);
+
+
+        //index
+        stepName = "Add identityCache index";
+        tableName = "SpecimenOrObservationBase";
+        newColumnName = "identityCache";
+        step = IndexAdder.NewInstance(stepName, tableName, newColumnName, null);
+        stepList.add(step);
+
+        stepName = "Add protectedIdentityCache";
+        tableName = "SpecimenOrObservationBase";
+        newColumnName = "protectedIdentityCache";
+        step = ColumnAdder.NewBooleanInstance(stepName, tableName, newColumnName, INCLUDE_AUDIT, false);
+        stepList.add(step);
+
+        //#5634 Add excluded note
+        stepName = "Add excluded note";
+        tableName = "TaxonNode";
+        String attributeName = "excludedNote";
+        step = LanguageStringTableCreator.NewLanguageStringInstance(stepName, tableName, attributeName, INCLUDE_AUDIT);
+        stepList.add(step);
+
+        return stepList;
+    }
+
+
+    @Override
+       public ISchemaUpdater getNextUpdater() {
+               return null;
+       }
+
+       @Override
+       public ISchemaUpdater getPreviousUpdater() {
+               return SchemaUpdater_40_41.NewInstance();
+       }
+
+}