JCLOUDS-992: Handle directories as blobs in Azure.
Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/04ba8905 Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/04ba8905 Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/04ba8905 Branch: refs/heads/master Commit: 04ba8905f8639b0444a1439bcdba18cbaa0a3dd8 Parents: 238cc52 Author: Timur Alperovich <[email protected]> Authored: Tue Aug 18 11:35:23 2015 -0700 Committer: Andrew Gaul <[email protected]> Committed: Thu Aug 20 12:42:11 2015 -0700 ---------------------------------------------------------------------- .../functions/BlobPropertiesToBlobMetadata.java | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds/blob/04ba8905/providers/azureblob/src/main/java/org/jclouds/azureblob/blobstore/functions/BlobPropertiesToBlobMetadata.java ---------------------------------------------------------------------- diff --git a/providers/azureblob/src/main/java/org/jclouds/azureblob/blobstore/functions/BlobPropertiesToBlobMetadata.java b/providers/azureblob/src/main/java/org/jclouds/azureblob/blobstore/functions/BlobPropertiesToBlobMetadata.java index d6c787e..6bab7e4 100644 --- a/providers/azureblob/src/main/java/org/jclouds/azureblob/blobstore/functions/BlobPropertiesToBlobMetadata.java +++ b/providers/azureblob/src/main/java/org/jclouds/azureblob/blobstore/functions/BlobPropertiesToBlobMetadata.java @@ -26,7 +26,6 @@ import org.jclouds.azureblob.domain.PublicAccess; import org.jclouds.blobstore.domain.MutableBlobMetadata; import org.jclouds.blobstore.domain.StorageType; import org.jclouds.blobstore.domain.internal.MutableBlobMetadataImpl; -import org.jclouds.blobstore.strategy.IfDirectoryReturnNameStrategy; import org.jclouds.http.HttpUtils; import com.google.common.base.Function; @@ -35,13 +34,10 @@ import com.google.common.cache.LoadingCache; @Singleton public class BlobPropertiesToBlobMetadata implements Function<BlobProperties, MutableBlobMetadata> { - private final IfDirectoryReturnNameStrategy ifDirectoryReturnName; private final LoadingCache<String, PublicAccess> containerAcls; @Inject - public BlobPropertiesToBlobMetadata(IfDirectoryReturnNameStrategy ifDirectoryReturnName, - LoadingCache<String, PublicAccess> containerAcls) { - this.ifDirectoryReturnName = checkNotNull(ifDirectoryReturnName, "ifDirectoryReturnName"); + public BlobPropertiesToBlobMetadata(LoadingCache<String, PublicAccess> containerAcls) { this.containerAcls = checkNotNull(containerAcls, "containerAcls"); } @@ -64,10 +60,9 @@ public class BlobPropertiesToBlobMetadata implements Function<BlobProperties, Mu } catch (CacheLoader.InvalidCacheLoadException e) { // nulls not permitted from cache loader } - String directoryName = ifDirectoryReturnName.execute(to); - if (directoryName != null) { - to.setName(directoryName); - to.setType(StorageType.RELATIVE_PATH); + if (to.getContentMetadata() != null && to.getContentMetadata().getContentType() != null && + to.getContentMetadata().getContentType().equals("application/directory")) { + to.setType(StorageType.FOLDER); } else { to.setType(StorageType.BLOB); }
