package at.gv.egovernment.moa.spss.api.impl;
import java.io.InputStream;
import at.gv.egovernment.moa.spss.MOARuntimeException;
import at.gv.egovernment.moa.spss.api.common.Content;
import at.gv.egovernment.moa.spss.api.common.ContentBinary;
import at.gv.egovernment.moa.spss.api.common.InputData;
/**
* Content wrapper decorating a binary content with two additional attributes
* needed for returning HashInputData
and ReferenceInputData
*
information as part of VerifyXMLSignatureResponse
.
*
* @author Gregor Karlinger
*
* @version $Id$
*/
public class InputDataBinaryImpl implements ContentBinary, InputData
{
/**
* The wrapped Content
.
*/
protected ContentBinary wrapped_;
/**
* This attribute signals what kind of container the XMLDSIG Reference
* this InputData
belongs to is part of.
*/
protected String partOf_;
/**
* If this InputData
belongs to an XMLDSIG Reference
* being part of either a XMLDSIGManifest or a SignatureManifest, this attribute
* (a positive int) signals the particular Reference
of the XMLDSIG
* SignedInfo
referring to the XMLDSIGManifest or SignatureManifest
* respectively.
*/
protected int referringReferenceNumber_;
/**
* Creates a new instance.
*
* @param wrapped The wrapped Content
. Must be of type {@link Content#BINARY_CONTENT}.
*
* @param partOf see {@link InputData}
*
* @param referringReferenceNumber see {@link InputData}
*/
public InputDataBinaryImpl(Content wrapped, String partOf, int referringReferenceNumber) throws MOARuntimeException
{
if (wrapped.getContentType() != Content.BINARY_CONTENT) throw new MOARuntimeException("9901", null);
wrapped_ = (ContentBinary) wrapped;
partOf_ = partOf;
referringReferenceNumber_ = referringReferenceNumber;
}
/**
* @see at.gv.egovernment.moa.spss.api.common.Content#getContentType()
*/
public int getContentType()
{
return wrapped_.getContentType();
}
/**
* @see at.gv.egovernment.moa.spss.api.common.Content#getReference()
*/
public String getReference()
{
return wrapped_.getReference();
}
/**
* @see at.gv.egovernment.moa.spss.api.common.ContentBinary#getBinaryContent()
*/
public InputStream getBinaryContent()
{
return wrapped_.getBinaryContent();
}
/**
* @see at.gv.egovernment.moa.spss.api.common.InputData#getPartOf()
*/
public String getPartOf()
{
return partOf_;
}
/**
* @see at.gv.egovernment.moa.spss.api.common.InputData#getReferringReferenceNumber()
*/
public int getReferringReferenceNumber()
{
return referringReferenceNumber_;
}
}