From 6e116a1de85e5bc6788b24810305cfcb7558ff27 Mon Sep 17 00:00:00 2001 From: gakin <gakin> Date: Thu, 30 Mar 2017 13:56:36 +0000 Subject: [PATCH] SSDM-4584 : New optional flag translate-using-data-source-alias in harvester-config file SVN: 38007 --- .../sync/harvester/config/ConfigReader.java | 14 ++++++++++++++ .../plugins/sync/harvester/config/SyncConfig.java | 13 +++++++++++++ .../config/SynchronizationConfigReader.java | 3 +++ 3 files changed, 30 insertions(+) diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/ConfigReader.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/ConfigReader.java index eb969e940d4..fdbcaa9708f 100644 --- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/ConfigReader.java +++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/ConfigReader.java @@ -191,4 +191,18 @@ public class ConfigReader } return Double.parseDouble(val); } + + public boolean getBoolean(String section, String key, boolean mandatory) + { + String val = getValue(section, key); + if (val == null) + { + if (mandatory) + { + throw new ConfigurationFailureException("Property '" + key + "' in section '" + section + "' is mandatory."); + } + return false; + } + return Boolean.parseBoolean(val); + } } \ No newline at end of file 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 7b974790af7..844f76d2958 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 @@ -199,6 +199,8 @@ public class SyncConfig private String dataSourceAlias; + private Boolean translateUsingDataSourceAlias = false; + private List<String> dataSourceSpaces = new ArrayList<>(); private List<String> harvesterSpaces = new ArrayList<>(); @@ -260,4 +262,15 @@ public class SyncConfig { return this.authCredentials.getPassword(); } + + public Boolean isTranslateUsingDataSourceAlias() + { + return translateUsingDataSourceAlias; + } + + public void setTranslateUsingDataSourceAlias(Boolean translateUsingDataSourceAlias) + { + this.translateUsingDataSourceAlias = translateUsingDataSourceAlias; + } + } 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 a3ef7edc568..f68ddfd440c 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 @@ -72,6 +72,8 @@ public class SynchronizationConfigReader private static final String EMAIL_ADDRESSES_PROPERTY_NAME = "email-addresses"; + private static final String TRANSLATE_USING_DATA_SOURCE_ALIAS = "translate-using-data-source-alias"; + private String defaultLastSyncTimestampFileName = "last-sync-timestamp-file_{alias}.txt"; private String defaultNotSyncedEntitiesFileName = "not-synced-entities_{alias}.txt"; @@ -123,6 +125,7 @@ public class SynchronizationConfigReader } config.setHarvesterTempDir(reader.getString(section, HARVESTER_TEMP_DIR_PROPERTY_NAME, DEFAULT_HARVESTER_TEMP_DIR, false)); + config.setTranslateUsingDataSourceAlias(reader.getBoolean(section, TRANSLATE_USING_DATA_SOURCE_ALIAS, false)); defaultLastSyncTimestampFileName = defaultLastSyncTimestampFileName.replaceFirst(Pattern.quote("{alias}"), config.getDataSourceAlias()); config.setLastSyncTimestampFileName( -- GitLab