org.bouncycastle.dvcs.VSDRequestData Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bouncycastle Show documentation
Show all versions of bouncycastle Show documentation
The Bouncy Castle Java APIs for CMS, PKCS, EAC, TSP, CMP, CRMF, OCSP, and certificate generation. This jar
contains APIs for JDK 1.5 and up. The APIs can be used in conjunction with a JCE/JCA provider such as the one
provided with the Bouncy Castle Cryptography APIs.
package org.bouncycastle.dvcs;
import org.bouncycastle.asn1.dvcs.Data;
import org.bouncycastle.cms.CMSException;
import org.bouncycastle.cms.CMSSignedData;
/**
* Data piece of DVCS request to VSD service (Verify Signed Document).
* It contains VSD-specific selector interface.
* Note: the request should contain CMS SignedData object as message.
*
* This objects are constructed internally,
* to build DVCS request to VSD service use VSDRequestBuilder.
*
*/
public class VSDRequestData
extends DVCSRequestData
{
private CMSSignedData doc;
VSDRequestData(Data data)
throws DVCSConstructionException
{
super(data);
initDocument();
}
private void initDocument()
throws DVCSConstructionException
{
if (doc == null)
{
if (data.getMessage() == null)
{
throw new DVCSConstructionException("DVCSRequest.data.message should be specified for VSD service");
}
try
{
doc = new CMSSignedData(data.getMessage().getOctets());
}
catch (CMSException e)
{
throw new DVCSConstructionException("Can't read CMS SignedData from input", e);
}
}
}
/**
* Get contained message (data to be certified).
*
* @return the contained message.
*/
public byte[] getMessage()
{
return data.getMessage().getOctets();
}
/**
* Get the CMS SignedData object represented by the encoded message.
*
* @return the parsed contents of the contained message as a CMS SignedData object.
*/
public CMSSignedData getParsedMessage()
{
return doc;
}
}