Repository: jclouds Updated Branches: refs/heads/2.0.x 3668a9905 -> efc568b48
Propagate error on non-existent container or key Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/efc568b4 Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/efc568b4 Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/efc568b4 Branch: refs/heads/2.0.x Commit: efc568b4824fb737e9eefe04d4de883cc72ff768 Parents: 3668a99 Author: Andrew Gaul <[email protected]> Authored: Wed Jan 18 11:17:07 2017 -0800 Committer: Andrew Gaul <[email protected]> Committed: Wed Jan 18 11:21:02 2017 -0800 ---------------------------------------------------------------------- .../strategy/internal/FilesystemStorageStrategyImpl.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds/blob/efc568b4/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java ---------------------------------------------------------------------- diff --git a/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java b/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java index 7e65dcd..6958fc3 100644 --- a/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java +++ b/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java @@ -52,6 +52,8 @@ import javax.inject.Inject; import javax.inject.Named; import javax.inject.Provider; +import org.jclouds.blobstore.ContainerNotFoundException; +import org.jclouds.blobstore.KeyNotFoundException; import org.jclouds.blobstore.LocalStorageStrategy; import org.jclouds.blobstore.domain.Blob; import org.jclouds.blobstore.domain.BlobAccess; @@ -552,7 +554,14 @@ public class FilesystemStorageStrategyImpl implements LocalStorageStrategy { @Override public BlobAccess getBlobAccess(String containerName, String blobName) { - Path path = new File(buildPathStartingFromBaseDir(containerName, blobName)).toPath(); + if (new File(buildPathStartingFromBaseDir(containerName)).exists()) { + throw new ContainerNotFoundException(containerName, "in getBlobAccess"); + } + File file = new File(buildPathStartingFromBaseDir(containerName, blobName)); + if (!file.exists()) { + throw new KeyNotFoundException(containerName, blobName, "in getBlobAccess"); + } + Path path = file.toPath(); if ( isWindows() ) { try {
