From 1d91fc81aac7c6102b4c43193b18cb92ca6ba58c Mon Sep 17 00:00:00 2001 From: kaloyane <kaloyane> Date: Wed, 11 May 2011 13:07:57 +0000 Subject: [PATCH] minor: defensive code against NPE SVN: 21240 --- .../resolver/TemplateBasedDataSetResourceResolver.java | 8 +++++++- .../TemplateBasedDataSetResourceResolverTest.java | 6 ++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ftp/resolver/TemplateBasedDataSetResourceResolver.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ftp/resolver/TemplateBasedDataSetResourceResolver.java index edcd6b9e717..d5ebe727983 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ftp/resolver/TemplateBasedDataSetResourceResolver.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ftp/resolver/TemplateBasedDataSetResourceResolver.java @@ -181,7 +181,13 @@ public class TemplateBasedDataSetResourceResolver implements IFtpPathResolver, String relativePath = evaluationResult.fileName; if (false == StringUtils.isBlank(nestedSubPath)) { - relativePath += FtpConstants.FILE_SEPARATOR + nestedSubPath; + if (StringUtils.isBlank(relativePath)) + { + relativePath = nestedSubPath; + } else + { + relativePath += FtpConstants.FILE_SEPARATOR + nestedSubPath; + } } IHierarchicalContentNodeFilter fileFilter = getFileFilter(evaluationResult.dataSet); diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/ftp/resolver/TemplateBasedDataSetResourceResolverTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/ftp/resolver/TemplateBasedDataSetResourceResolverTest.java index 294e3aa4e61..fbce42d118e 100644 --- a/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/ftp/resolver/TemplateBasedDataSetResourceResolverTest.java +++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/ftp/resolver/TemplateBasedDataSetResourceResolverTest.java @@ -166,9 +166,11 @@ public class TemplateBasedDataSetResourceResolverTest extends AssertJUnit resolver = new TemplateBasedDataSetResourceResolver(config); final String dataSetCode = "dataSetCode"; - final String subPath = "/level1/level2/fileName.txt"; + final String subPath = "level1/level2/fileName.txt"; - String path = EXP_ID + FtpConstants.FILE_SEPARATOR + dataSetCode + subPath; + String path = + EXP_ID + FtpConstants.FILE_SEPARATOR + dataSetCode + FtpConstants.FILE_SEPARATOR + + subPath; List<ExternalData> dataSets = Arrays.asList(createDataSet(dataSetCode, DS_TYPE1)); -- GitLab