Skip to content

Commit 8fb7167

Browse files
author
Anirav Kareddy
committed
added optional attribte for custom instruction file suffix in encode metadata
1 parent 5a1f292 commit 8fb7167

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

src/main/java/software/amazon/encryption/s3/internal/ContentMetadataEncodingStrategy.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,25 @@ public ContentMetadataEncodingStrategy(InstructionFileConfig instructionFileConf
2424
}
2525

2626
public PutObjectRequest encodeMetadata(EncryptionMaterials materials, byte[] iv, PutObjectRequest putObjectRequest) {
27+
return encodeMetadata(materials, iv, putObjectRequest, null);
28+
}
29+
30+
public PutObjectRequest encodeMetadata(EncryptionMaterials materials, byte[] iv, PutObjectRequest putObjectRequest, String customInstructionFileSuffix) {
2731
if (_instructionFileConfig.isInstructionFilePutEnabled()) {
2832
final String metadataString = metadataToString(materials, iv);
29-
_instructionFileConfig.putInstructionFile(putObjectRequest, metadataString);
33+
34+
if (customInstructionFileSuffix == null) {
35+
_instructionFileConfig.putInstructionFile(putObjectRequest, metadataString);
36+
} else {
37+
_instructionFileConfig.putInstructionFile(putObjectRequest, metadataString, customInstructionFileSuffix);
38+
}
3039
// the original request object is returned as-is
3140
return putObjectRequest;
3241
} else {
3342
Map<String, String> newMetadata = addMetadataToMap(putObjectRequest.metadata(), materials, iv);
3443
return putObjectRequest.toBuilder()
35-
.metadata(newMetadata)
36-
.build();
44+
.metadata(newMetadata)
45+
.build();
3746
}
3847
}
3948

0 commit comments

Comments
 (0)