diff --git a/azure/pom.xml b/azure/pom.xml
index 55c36b94dc1..766b6d0939c 100644
--- a/azure/pom.xml
+++ b/azure/pom.xml
@@ -22,7 +22,7 @@
azure
- 12.32.0
+ 12.33.0
diff --git a/azure/src/main/java/ch/cyberduck/core/azure/AzureWriteFeature.java b/azure/src/main/java/ch/cyberduck/core/azure/AzureWriteFeature.java
index 163ca66ea87..ba529eaf33f 100644
--- a/azure/src/main/java/ch/cyberduck/core/azure/AzureWriteFeature.java
+++ b/azure/src/main/java/ch/cyberduck/core/azure/AzureWriteFeature.java
@@ -141,11 +141,12 @@ public StatusOutputStream write(final Path file, final TransferStatus stat
// Existing block blob type
final PathAttributes attr = new AzureAttributesFinderFeature(session).find(file);
if(BlobType.APPEND_BLOB == BlobType.valueOf(attr.getCustom().get(AzureAttributesFinderFeature.KEY_BLOB_TYPE))) {
- out = client.getAppendBlobClient().getBlobOutputStream(true);
+ final AppendBlobClient append = client.getAppendBlobClient();
+ // No BlockBlobOutputStreamOptions
+ out = append.getBlobOutputStream(true);
}
else {
final BlockBlobOutputStreamOptions options = new BlockBlobOutputStreamOptions()
- .setMetadata(metadata)
.setHeaders(headers)
.setMetadata(metadata);
out = client.getBlockBlobClient().getBlobOutputStream(options);
@@ -158,7 +159,6 @@ public StatusOutputStream write(final Path file, final TransferStatus stat
case APPEND_BLOB: {
final AppendBlobClient append = client.getAppendBlobClient();
final AppendBlobCreateOptions options = new AppendBlobCreateOptions()
- .setMetadata(metadata)
.setHeaders(headers)
.setMetadata(metadata);
append.createWithResponse(options, null, null);
@@ -168,7 +168,6 @@ public StatusOutputStream write(final Path file, final TransferStatus stat
default: {
final BlockBlobClient block = client.getBlockBlobClient();
final BlockBlobOutputStreamOptions options = new BlockBlobOutputStreamOptions()
- .setMetadata(metadata)
.setHeaders(headers)
.setMetadata(metadata);
out = block.getBlobOutputStream(options);
diff --git a/azure/src/test/java/ch/cyberduck/core/azure/AzureWriteFeatureTest.java b/azure/src/test/java/ch/cyberduck/core/azure/AzureWriteFeatureTest.java
index 6155eee9289..0db6f75d646 100644
--- a/azure/src/test/java/ch/cyberduck/core/azure/AzureWriteFeatureTest.java
+++ b/azure/src/test/java/ch/cyberduck/core/azure/AzureWriteFeatureTest.java
@@ -65,6 +65,8 @@ public void testWriteOverrideAppendBlob() throws Exception {
// Test double close
overwrite.close();
assertEquals("overwrite".getBytes(StandardCharsets.UTF_8).length, new AzureAttributesFinderFeature(session).find(test).getSize());
+ final Map appendMetadata = new AzureMetadataFeature(session).getMetadata(test);
+ assertEquals("text/plain", appendMetadata.get("Content-Type"));
new AzureDeleteFeature(session).delete(Collections.singletonList(test), new DisabledLoginCallback(), new Delete.DisabledCallback());
}
@@ -100,6 +102,8 @@ public void testWriteOverrideBlockBlob() throws Exception {
// Test double close
overwrite.close();
assertEquals("overwrite".getBytes(StandardCharsets.UTF_8).length, new AzureAttributesFinderFeature(session).find(test).getSize());
+ final Map overwriteMetadata = new AzureMetadataFeature(session).getMetadata(test);
+ assertEquals("text/plain", overwriteMetadata.get("Content-Type"));
new AzureDeleteFeature(session).delete(Collections.singletonList(test), new DisabledLoginCallback(), new Delete.DisabledCallback());
}
}