All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.adobe.pdfservices.operation.internal.dto.request.documentgeneration.DocumentGenerationInternalAssetRequest Maven / Gradle / Ivy

Go to download

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

There is a newer version: 4.2.0
Show newest version
/*
 * 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.documentgeneration;

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.documentmerge.DocumentMergeParams;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.json.JSONArray;

import java.util.List;

@JsonInclude(JsonInclude.Include.NON_NULL)
public class DocumentGenerationInternalAssetRequest extends DocumentGenerationParamsPayload implements PlatformApiRequest {

    @JsonProperty("assetID")
    private String assetID;

    @JsonProperty("notifiers")
    private List notifierConfigList;

    public DocumentGenerationInternalAssetRequest(String assetID, DocumentMergeParams documentMergeParams,
                                                  List notifierConfigList) {

        this.assetID = assetID;
        this.notifierConfigList = notifierConfigList;

        this.outputFormat = documentMergeParams.getOutputFormat().getFormat();
        this.jsonDataForMerge = documentMergeParams.getJsonDataForMerge();

        if (documentMergeParams.getFragments() != null) {
            JSONArray fragmentArray = new JSONArray(documentMergeParams.getFragments().getFragmentsList());
            final ObjectMapper objectMapper = new ObjectMapper();
            try {
                this.fragments = objectMapper.readValue(fragmentArray.toString(), new TypeReference>() {
                });
            } catch (JsonProcessingException e) {
                throw new SDKException("Invalid JSON input in Fragments");
            }
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy