From 3b617d296e893575b34fbc507f074d2771fe603e Mon Sep 17 00:00:00 2001 From: kohleman <kohleman> Date: Fri, 24 Nov 2017 12:50:32 +0000 Subject: [PATCH] added data set based destination folders SVN: 38948 --- .../cisd/dsu/tracking/main/Parameters.java | 29 +++++++++++++++++++ .../cisd/dsu/tracking/main/TrackingBO.java | 6 ++-- 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/main/Parameters.java b/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/main/Parameters.java index 63f12304cf8..2b4d58a0f67 100644 --- a/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/main/Parameters.java +++ b/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/main/Parameters.java @@ -18,6 +18,8 @@ package ch.ethz.bsse.cisd.dsu.tracking.main; import static ch.systemsx.cisd.common.properties.PropertyUtils.getMandatoryProperty; +import java.util.HashMap; +import java.util.Map; import java.util.Properties; import ch.systemsx.cisd.common.mail.IMailClient; @@ -54,6 +56,8 @@ public class Parameters private static final String DATA_SET_TYPE_LIST = "dataset-type-list"; private static final String DESTINATION_FOLDER = "destination-folder"; + + private static final String DESTINATION_FOLDER_SUFFIX = "destination-folder"; private static final String RSYNC_BINARY = "rsync-binary"; @@ -92,6 +96,8 @@ public class Parameters private final String rsyncFlags; private final String dssRootDir; + + private final Map<String, String> destinationFolderMap; public Parameters(Properties props) { @@ -111,6 +117,8 @@ public class Parameters this.rsyncBinary = PropertyUtils.getProperty(props, RSYNC_BINARY); this.rsyncFlags = PropertyUtils.getProperty(props, RSYNC_FLAGS); this.dssRootDir = PropertyUtils.getProperty(props, DSS_ROOT_DIR); + + this.destinationFolderMap = this.setDataDestinationFolder(props); } public String getOpenbisUser() @@ -192,4 +200,25 @@ public class Parameters { return dssRootDir; } + + public Map<String, String> getDestinationFolderMap() { + return destinationFolderMap; + } + + private Map<String, String> setDataDestinationFolder(Properties properties) { + + final Map<String, String> destinationFolderMap = new HashMap<String, String>(); + + for (Object key : properties.keySet()) + { + final String propertyKey = (String) key; + + if (propertyKey.endsWith(DESTINATION_FOLDER_SUFFIX)) + { + String datasetTypePrefix = propertyKey.split("-")[0]; + destinationFolderMap.put(datasetTypePrefix, PropertyUtils.getMandatoryProperty(properties, propertyKey)); + } + } + return destinationFolderMap; + } } \ No newline at end of file diff --git a/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/main/TrackingBO.java b/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/main/TrackingBO.java index 5704d0c49d6..bb2e981e421 100644 --- a/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/main/TrackingBO.java +++ b/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/main/TrackingBO.java @@ -350,7 +350,7 @@ public class TrackingBO } String laneString = currentLaneId.toString().split(":")[1]; changedLanesMap.put(runNameFolder + ":" + laneString, laneSpace + " " + lane.getCode()); - LogUtils.info("DataSetID: " + newDataSetID + " of NEW data Sets > MAX DataSet id for this sample: " + maxDatasetIdForSample); + LogUtils.debug("DataSetID: " + newDataSetID + " of NEW data Sets > MAX DataSet id for this sample: " + maxDatasetIdForSample); } } @@ -509,10 +509,12 @@ public class TrackingBO { File source = new File(base_path_string, ds.tryGetAsDataSet().getFullLocation() + ORIGINAL_PATH); File targetName = new File(ds.tryGetAsDataSet().getFullLocation()); + + String datasetTypCode = ds.getDataSetType().getCode(); File omittedSource = new File(base_path_string, ds.tryGetAsDataSet().getFullLocation() + ORIGINAL_PATH + source.list()[0]); - File destination = new File(params.getDestinationFolder(), targetName.getName()); + File destination = new File(params.getDestinationFolderMap().get(datasetTypCode), targetName.getName()); if (!destination.exists()) { -- GitLab