List of usage examples for com.amazonaws.services.s3.model InitiateMultipartUploadRequest getObjectMetadata
public ObjectMetadata getObjectMetadata()
From source file:org.apache.nifi.processors.aws.s3.encryption.service.StandardS3ServerSideEncryptionService.java
License:Apache License
public void encrypt(InitiateMultipartUploadRequest initiateMultipartUploadRequest) { if (encryptionMethod == null) return;//from ww w.j av a2 s . c o m if (encryptionMethod.equals(METHOD_SSE_S3)) { getLogger().info("Encrypting multipart object using SSE-S3"); initiateMultipartUploadRequest.getObjectMetadata() .setSSEAlgorithm(algorithm == null ? ObjectMetadata.AES_256_SERVER_SIDE_ENCRYPTION : algorithm); } if (encryptionMethod.equals(METHOD_SSE_KMS)) { getLogger().info("Encrypting multipart object using SSE-KMS"); initiateMultipartUploadRequest.setSSEAwsKeyManagementParams( kmsKeyId == null ? new SSEAwsKeyManagementParams() : new SSEAwsKeyManagementParams(kmsKeyId)); } if (encryptionMethod.equals(METHOD_SSE_C)) { getLogger().info("Encrypting multipart object using SSE-C"); if (StringUtils.isNotBlank(customerKey)) { initiateMultipartUploadRequest.setSSECustomerKey(new SSECustomerKey(customerKey)); } String sseCustomerAlgorithm = customerAlgorithm == null ? ObjectMetadata.AES_256_SERVER_SIDE_ENCRYPTION : customerAlgorithm; initiateMultipartUploadRequest.getObjectMetadata().setSSECustomerAlgorithm(sseCustomerAlgorithm); if (StringUtils.isNotBlank(customerKeyMD5)) { initiateMultipartUploadRequest.getObjectMetadata().setSSECustomerKeyMd5(customerKeyMD5); } } }