com.adobe.pdfservices.operation.internal.dto.request.protectpdf.ProtectPDFInternalAssetRequest Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pdfservices-sdk Show documentation
Show all versions of pdfservices-sdk Show documentation
Adobe PDF Services SDK allows you to access RESTful APIs to create, convert, and manipulate PDFs within your applications.
Older versions can be found under groupId: com.adobe.documentservices, artifactId: pdftools-sdk
/*
* Copyright 2019 Adobe
* All Rights Reserved.
*
* NOTICE: Adobe permits you to use, modify, and distribute this file in
* accordance with the terms of the Adobe license agreement accompanying
* it. If you have received this file from a source other than Adobe,
* then your use, modification, or distribution of it requires the prior
* written permission of Adobe.
*/
package com.adobe.pdfservices.operation.internal.dto.request.protectpdf;
import com.adobe.pdfservices.operation.config.notifier.NotifierConfig;
import com.adobe.pdfservices.operation.exception.SDKException;
import com.adobe.pdfservices.operation.internal.dto.request.PlatformApiRequest;
import com.adobe.pdfservices.operation.pdfjobs.params.protectpdf.ContentEncryption;
import com.adobe.pdfservices.operation.pdfjobs.params.protectpdf.PasswordProtectParams;
import com.adobe.pdfservices.operation.pdfjobs.params.protectpdf.Permission;
import com.adobe.pdfservices.operation.pdfjobs.params.protectpdf.ProtectPDFParams;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.ArrayList;
import java.util.List;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ProtectPDFInternalAssetRequest extends ProtectPDFParamsPayload implements PlatformApiRequest {
@JsonProperty("assetID")
private String assetID;
@JsonProperty("notifiers")
private List notifierConfigList;
public ProtectPDFInternalAssetRequest(String assetID, ProtectPDFParams protectPDFParams,
List notifierConfigList) {
this.assetID = assetID;
this.notifierConfigList = notifierConfigList;
PasswordProtection passwordProtection;
String encryptionAlgorithm;
String contentToEncrypt = ContentEncryption.ALL_CONTENT.getValue();
List permissions = null;
if (protectPDFParams instanceof PasswordProtectParams) {
PasswordProtectParams passwordProtectParams = (PasswordProtectParams) protectPDFParams;
passwordProtection = new PasswordProtection(passwordProtectParams.getUserPassword(),
passwordProtectParams.getOwnerPassword());
encryptionAlgorithm = passwordProtectParams.getEncryptionAlgorithm().getValue();
if (passwordProtectParams.getContentEncryption() != null)
contentToEncrypt = passwordProtectParams.getContentEncryption().getValue();
// if permissions are not null && permissions set is not empty
if (passwordProtectParams.getPermissions() != null && !passwordProtectParams.getPermissions().getValues()
.isEmpty()) {
permissions = new ArrayList<>();
for (Permission permission : passwordProtectParams.getPermissions().getValues()) {
permissions.add(permission.getValue());
}
}
} else {
throw new SDKException("Please provide valid protect pdf params");
}
this.contentToEncrypt = contentToEncrypt;
this.passwordProtection = passwordProtection;
this.encryptionAlgorithm = encryptionAlgorithm;
this.permissions = permissions;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy