Force application/x-directory for directories

Paths created by Files.createParentDirs lack extended attributes and
thus Content-Type for directories.
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 1c438df..f34b3aa 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
@@ -368,6 +368,7 @@
       builder.name(key);
       File file = getFileForBlobKey(container, key);
       ByteSource byteSource;
+      boolean isDirectory = false;
 
       if (getDirectoryBlobSuffix(key) != null) {
          if (!file.isDirectory()) {
@@ -379,6 +380,7 @@
          }
          logger.debug("%s - %s is a directory", container, key);
          byteSource = ByteSource.empty();
+         isDirectory = true;
       } else {
          byteSource = Files.asByteSource(file);
       }
@@ -387,7 +389,7 @@
          String contentDisposition = null;
          String contentEncoding = null;
          String contentLanguage = null;
-         String contentType = null;
+         String contentType = isDirectory ? "application/x-directory" : null;
          HashCode hashCode = null;
          String eTag = null;
          Date expires = null;
@@ -403,9 +405,11 @@
                contentDisposition = readStringAttributeIfPresent(view, attributes, XATTR_CONTENT_DISPOSITION);
                contentEncoding = readStringAttributeIfPresent(view, attributes, XATTR_CONTENT_ENCODING);
                contentLanguage = readStringAttributeIfPresent(view, attributes, XATTR_CONTENT_LANGUAGE);
-               contentType = readStringAttributeIfPresent(view, attributes, XATTR_CONTENT_TYPE);
-               if (contentType == null && autoDetectContentType) {
-                  contentType = probeContentType(file.toPath());
+               if (!isDirectory) {
+                  contentType = readStringAttributeIfPresent(view, attributes, XATTR_CONTENT_TYPE);
+                  if (contentType == null && autoDetectContentType) {
+                     contentType = probeContentType(file.toPath());
+                  }
                }
                if (attributes.contains(XATTR_CONTENT_MD5)) {
                   ByteBuffer buf = ByteBuffer.allocate(view.size(XATTR_CONTENT_MD5));