From de78641fc6f80962d2c6713eeaaae0ad80d9cc05 Mon Sep 17 00:00:00 2001
From: felmer <franz-josef.elmer@id.ethz.ch>
Date: Wed, 13 May 2020 09:24:08 +0200
Subject: [PATCH] SSDM-9541: remove config parameter
 'property-type-update-allowed'. instead 'master-data-update-allowed'

---
 .../sync/harvester/config/SyncConfig.java     | 22 +++++--------------
 .../config/SynchronizationConfigReader.java   |  7 ++----
 .../synchronizer/EntitySynchronizer.java      |  5 +----
 .../synchronizer/MasterDataSynchronizer.java  | 12 +++++-----
 4 files changed, 14 insertions(+), 32 deletions(-)

diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SyncConfig.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SyncConfig.java
index 7768b257798..04df84a8447 100644
--- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SyncConfig.java
+++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SyncConfig.java
@@ -220,9 +220,7 @@ public class SyncConfig
 
     private Boolean verbose = false;
 
-    private boolean masterDataUpdate;
-
-    private boolean propertyTypeUpdateAllowed;
+    private boolean masterDataUpdateAllowed;
 
     private boolean propertyUnassignmentAllowed;
 
@@ -352,14 +350,14 @@ public class SyncConfig
         this.verbose = verbose;
     }
 
-    public boolean isMasterDataUpdate()
+    public boolean isMasterDataUpdateAllowed()
     {
-        return masterDataUpdate;
+        return masterDataUpdateAllowed;
     }
 
-    public void setMasterDataUpdate(boolean masterDataUpdate)
+    public void setMasterDataUpdateAllowed(boolean masterDataUpdate)
     {
-        this.masterDataUpdate = masterDataUpdate;
+        this.masterDataUpdateAllowed = masterDataUpdate;
     }
 
     public boolean isPropertyUnassignmentAllowed()
@@ -372,16 +370,6 @@ public class SyncConfig
         this.propertyUnassignmentAllowed = propertyUnassignmentAllowed;
     }
 
-    public boolean isPropertyTypeUpdateAllowed()
-    {
-        return propertyTypeUpdateAllowed;
-    }
-
-    public void setPropertyTypeUpdateAllowed(boolean propertyTypeUpdateAllowed)
-    {
-        this.propertyTypeUpdateAllowed = propertyTypeUpdateAllowed;
-    }
-
     public boolean isDeletionAllowed()
     {
         return deletionAllowed;
diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SynchronizationConfigReader.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SynchronizationConfigReader.java
index e0827b3d3fc..f64e46eccbc 100644
--- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SynchronizationConfigReader.java
+++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SynchronizationConfigReader.java
@@ -84,12 +84,10 @@ public class SynchronizationConfigReader
 
     private static final String SPACE_WHITE_LIST_PROPERTY_NAME = "space-white-list";
 
-    private static final String MASTER_DATA_UPDATE_PROPERTY_NAME = "master-data-update";
+    private static final String MASTER_DATA_UPDATE_ALLOWED_PROPERTY_NAME = "master-data-update-allowed";
 
     private static final String PROPERTY_UNASSIGNMENT_ALLOWED_PROPERTY_NAME = "property-unassignment-allowed";
 
-    private static final String PROPERTY_TYPE_UPDATE_ALLOWED_PROPERTY_NAME = "property-type-update-allowed";
-
     private static final String DELETION_ALLOWED_PROPERTY_NAME = "deletion-allowed";
 
     private static final String KEEP_ORIGINAL_TIMESTAMPS_AND_USERS_PROPERTY_NAME = "keep-original-timestamps-and-users";
@@ -194,10 +192,9 @@ public class SynchronizationConfigReader
             {
                 config.setVerbose(true);
             }
-            config.setMasterDataUpdate(reader.getBoolean(section, MASTER_DATA_UPDATE_PROPERTY_NAME, true));
+            config.setMasterDataUpdateAllowed(reader.getBoolean(section, MASTER_DATA_UPDATE_ALLOWED_PROPERTY_NAME, false));
             config.setDeletionAllowed(reader.getBoolean(section, DELETION_ALLOWED_PROPERTY_NAME, false));
             config.setPropertyUnassignmentAllowed(reader.getBoolean(section, PROPERTY_UNASSIGNMENT_ALLOWED_PROPERTY_NAME, false));
-            config.setPropertyTypeUpdateAllowed(reader.getBoolean(section, PROPERTY_TYPE_UPDATE_ALLOWED_PROPERTY_NAME, false));
             config.setKeepOriginalTimestampsAndUsers(reader.getBoolean(section, KEEP_ORIGINAL_TIMESTAMPS_AND_USERS_PROPERTY_NAME, true));
             config.setKeepOriginalFrozenFlags(reader.getBoolean(section, KEEP_ORIGINAL_FROZEN_FLAGS_PROPERTY_NAME, true));
             config.setWishedNumberOfStreams(reader.getInt(section, WISHED_NUMBER_OF_STREAMS_PROPERTY_NAME, null, false));
diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/EntitySynchronizer.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/EntitySynchronizer.java
index 0d538d039b7..e28ab1e55c4 100644
--- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/EntitySynchronizer.java
+++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/EntitySynchronizer.java
@@ -206,10 +206,7 @@ public class EntitySynchronizer
         {
             processDeletions(data);
         }
-        if (config.isMasterDataUpdate())
-        {
-            registerMasterData(data.getMasterData());
-        }
+        registerMasterData(data.getMasterData());
         MultiKeyMap<String, String> newEntities = registerEntities(data);
         registerAttachments(data, newEntities);
         populateFileServiceRepository(data);
diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/MasterDataSynchronizer.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/MasterDataSynchronizer.java
index ea0c2f4adfd..02be3bc3990 100644
--- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/MasterDataSynchronizer.java
+++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/MasterDataSynchronizer.java
@@ -152,7 +152,7 @@ public class MasterDataSynchronizer
             if (existingPluginOrNull != null)
             {
                 String diff = calculateDiff(existingPluginOrNull, incomingplugin);
-                if (StringUtils.isNotBlank(diff))
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     incomingplugin.setModificationDate(existingPluginOrNull.getModificationDate());
                     incomingplugin.setId(existingPluginOrNull.getId());
@@ -260,7 +260,7 @@ public class MasterDataSynchronizer
             if (existingVocabulary != null)
             {
                 String diff = calculateDiff(existingVocabulary, newVocabulary);
-                if (StringUtils.isNotBlank(diff))
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     newVocabulary.setModificationDate(existingVocabulary.getModificationDate());
                     newVocabulary.setId(existingVocabulary.getId());
@@ -299,7 +299,7 @@ public class MasterDataSynchronizer
             } else
             {
                 String diff = calculateDiff(existingTerm, incomingTerm);
-                if (StringUtils.isNotBlank(diff))
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     incomingTerm.setModificationDate(existingTerm.getModificationDate());
                     incomingTerm.setId(existingTerm.getId());
@@ -353,7 +353,7 @@ public class MasterDataSynchronizer
             if (existingEntityType != null)
             {
                 String diff = calculateDiff(entityKind, existingEntityType, incomingEntityType);
-                if (StringUtils.isNotBlank(diff) && config.isPropertyTypeUpdateAllowed())
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     incomingEntityType.setModificationDate(existingEntityType.getModificationDate());
                     updateEntityType(entityKind, incomingEntityType, diff);
@@ -393,7 +393,7 @@ public class MasterDataSynchronizer
             if (foundType != null)
             {
                 String diff = calculateDiff(foundType, newETPTAssignment);
-                if (StringUtils.isNotBlank(diff) && config.isPropertyTypeUpdateAllowed())
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     newETPTAssignment.setModificationDate(foundType.getModificationDate());
                     synchronizerFacade.updatePropertyTypeAssignment(newETPTAssignment, diff);
@@ -620,7 +620,7 @@ public class MasterDataSynchronizer
             if (existingPropertyType != null)
             {
                 String diff = calculateDiff(existingPropertyType, incomingPropertyType);
-                if (StringUtils.isNotBlank(diff))
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     incomingPropertyType.setModificationDate(existingPropertyType.getModificationDate());
                     incomingPropertyType.setId(existingPropertyType.getId());
-- 
GitLab