PDFDocumentTimeStampSignature.java 5.22 KB
/*
 * Decompiled with CFR 0_118.
 * 
 * Could not load the following classes:
 *  com.adobe.internal.pdftoolkit.core.cos.CosDictionary
 *  com.adobe.internal.pdftoolkit.core.cos.CosObject
 *  com.adobe.internal.pdftoolkit.core.exceptions.PDFIOException
 *  com.adobe.internal.pdftoolkit.core.exceptions.PDFInvalidDocumentException
 *  com.adobe.internal.pdftoolkit.core.exceptions.PDFSecurityException
 *  com.adobe.internal.pdftoolkit.core.types.ASName
 */
package com.adobe.internal.pdftoolkit.pdf.digsig;

import com.adobe.internal.pdftoolkit.core.cos.CosDictionary;
import com.adobe.internal.pdftoolkit.core.cos.CosObject;
import com.adobe.internal.pdftoolkit.core.exceptions.PDFIOException;
import com.adobe.internal.pdftoolkit.core.exceptions.PDFInvalidDocumentException;
import com.adobe.internal.pdftoolkit.core.exceptions.PDFSecurityException;
import com.adobe.internal.pdftoolkit.core.types.ASName;
import com.adobe.internal.pdftoolkit.pdf.digsig.PDFSignature;
import com.adobe.internal.pdftoolkit.pdf.digsig.PDFSignatureFilter;
import com.adobe.internal.pdftoolkit.pdf.digsig.PDFSignatureReferenceList;
import com.adobe.internal.pdftoolkit.pdf.document.PDFCosObject;
import com.adobe.internal.pdftoolkit.pdf.document.PDFDocument;

public class PDFDocumentTimeStampSignature
extends PDFSignature {
    protected PDFDocumentTimeStampSignature(CosObject cosObject) throws PDFInvalidDocumentException {
        super(cosObject);
    }

    public static PDFDocumentTimeStampSignature getInstance(CosObject cosObject) throws PDFInvalidDocumentException {
        if (PDFCosObject.checkNullCosObject(cosObject) == null) {
            return null;
        }
        PDFDocumentTimeStampSignature pdfObject = PDFCosObject.getCachedInstance(cosObject, PDFDocumentTimeStampSignature.class);
        if (pdfObject == null) {
            pdfObject = new PDFDocumentTimeStampSignature(cosObject);
        }
        return pdfObject;
    }

    public static PDFDocumentTimeStampSignature newInstance(PDFDocument pdfDocument) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        return PDFDocumentTimeStampSignature.newInstance(pdfDocument, PDFSignatureFilter.AdobePPKLite);
    }

    public static PDFDocumentTimeStampSignature newInstance(PDFDocument pdfDocument, PDFSignatureFilter filter) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        if (filter == null) {
            filter = PDFSignatureFilter.AdobePPKLite;
        }
        return PDFDocumentTimeStampSignature.newInstance(pdfDocument, ASName.create((String)filter.getValue()));
    }

    static PDFDocumentTimeStampSignature newInstance(PDFDocument pdfDocument, ASName filter) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        CosDictionary cosObject = PDFCosObject.newCosDictionary(pdfDocument);
        PDFDocumentTimeStampSignature pdfObject = new PDFDocumentTimeStampSignature((CosObject)cosObject);
        pdfObject.setType(ASName.k_DocTimeStamp);
        pdfObject.setFilterName(filter);
        pdfObject.setSubFilterName(PDFSignature.k_ETSI_RFC3161);
        return pdfObject;
    }

    public byte[][] getCertificates() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        return null;
    }

    public void setCertificate(byte[] cert) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        throw new UnsupportedOperationException("Cert can not be set for a Document TimeStamp Signature");
    }

    public void setCertificates(byte[][] certs) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        throw new UnsupportedOperationException("Cert can not be set for a Document TimeStamp Signature");
    }

    public PDFSignatureReferenceList getSignatureReferences() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        return null;
    }

    public void setReferences(PDFSignatureReferenceList sigRefList) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        throw new UnsupportedOperationException("Reference can not be set for a Document TimeStamp Signature");
    }

    public void setChanges(long[] changes) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        throw new UnsupportedOperationException("Changes can not be set for a Document TimeStamp Signature");
    }

    public long[] getChanges() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        return null;
    }

    public long getAuthenticationTime() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        return 0;
    }

    public void setAuthenticationTime(Long sec) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        throw new UnsupportedOperationException("Prop_AuthTime can not be set for a Document TimeStamp Signature");
    }

    public ASName getAuthenticationType() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        return null;
    }

    public void setAuthenticationType(ASName type) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
        throw new UnsupportedOperationException("Prop_AuthType can not be set for a Document TimeStamp Signature");
    }
}