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 {

Reply via email to