diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/RsyncArchiveCopierFactory.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/RsyncArchiveCopierFactory.java index 8a76f64c9d4ca527d7f45b832d345f554f48e7bd..248e6dea508c6c28264c3d3a6c848ba6c9fe8c90 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/RsyncArchiveCopierFactory.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/RsyncArchiveCopierFactory.java @@ -18,6 +18,7 @@ package ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard; import java.io.File; import java.io.Serializable; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -43,7 +44,8 @@ public final class RsyncArchiveCopierFactory implements Serializable, IPathCopie @Override public IPathCopier create(File rsyncExecutable, File sshExecutableOrNull, long timeoutInMillis, List<String> additionalCmdLineFlagsOrNull) { - List<String> additionalCmdLineFlags = Arrays.asList("--archive", "--delete", "--inplace", "--checksum", getTimeoutParameter(timeoutInMillis)); + List<String> additionalCmdLineFlags = new ArrayList<>( + Arrays.asList("--archive", "--delete", "--inplace", "--checksum", getTimeoutParameter(timeoutInMillis))); if (additionalCmdLineFlagsOrNull != null) { additionalCmdLineFlags.addAll(additionalCmdLineFlagsOrNull); diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/RsyncCopierFactory.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/RsyncCopierFactory.java index ce99c65af6e99b91e520dcadea464387fce97ad8..866eedefa2668efef8bbeb15c740dd9791cbf2df 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/RsyncCopierFactory.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/RsyncCopierFactory.java @@ -28,8 +28,15 @@ public final class RsyncCopierFactory implements Serializable, IPathCopierFactor private static final long serialVersionUID = 1L; @Override - public IPathCopier create(File rsyncExecutable, File sshExecutableOrNull, long timeoutInMillis, List<String> additionalCmdLineFlagsOrNull) + public IPathCopier create(File rsyncExecutable, File sshExecutableOrNull, long timeoutInMillis, + List<String> additionalCmdLineFlagsOrNull) { - return new RsyncCopier(rsyncExecutable, sshExecutableOrNull, false, false, additionalCmdLineFlagsOrNull.toArray(new String[0])); + String[] additionalCmdLineFlags = new String[0]; + if (additionalCmdLineFlagsOrNull != null) + { + additionalCmdLineFlags = additionalCmdLineFlagsOrNull.toArray(new String[0]); + } + return new RsyncCopier(rsyncExecutable, sshExecutableOrNull, false, false, + additionalCmdLineFlags); } } \ No newline at end of file