You are currently viewing a snapshot of www.mozilla.org taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to www.mozilla.org, please file a bug.




org.mozilla.jss.pkcs7
Class ContentInfo

java.lang.Object
  extended by org.mozilla.jss.pkcs7.ContentInfo
All Implemented Interfaces:
ASN1Value

public class ContentInfo
extends java.lang.Object
implements ASN1Value

A PKCS #7 ContentInfo structure.


Nested Class Summary
static class ContentInfo.Template
          A template for decoding a ContentInfo blob
 
Field Summary
static OBJECT_IDENTIFIER DATA
           
static OBJECT_IDENTIFIER DIGESTED_DATA
           
static OBJECT_IDENTIFIER ENCRYPTED_DATA
           
static OBJECT_IDENTIFIER ENVELOPED_DATA
           
static OBJECT_IDENTIFIER SIGNED_AND_ENVELOPED_DATA
           
static OBJECT_IDENTIFIER SIGNED_DATA
           
static Tag TAG
           
 
Constructor Summary
ContentInfo(byte[] data)
          Creates a ContentInfo of type data.
ContentInfo(DigestedData dd)
          Creates a ContentInfo of type digestedData.
ContentInfo(EncryptedData ed)
          Creates a ContentInfo of type encryptedData.
ContentInfo(EnvelopedData ed)
          Creates a ContentInfo of type envelopedData.
ContentInfo(OBJECT_IDENTIFIER contentType, ASN1Value content)
          Creates a ContentInfo with the given type and content.
ContentInfo(SignedAndEnvelopedData sed)
          Creates a ContentInfo of type signedAndEnvelopedData.
ContentInfo(SignedData sd)
          Creates a ContentInfo of type signedData.
 
Method Summary
 void encode(java.io.OutputStream ostream)
          Write this value's DER encoding to an output stream using its own base tag.
 void encode(Tag implicitTag, java.io.OutputStream ostream)
          Write this value's DER encoding to an output stream using an implicit tag.
 ANY getContent()
          Returns the content encoded as an ANY.
 OBJECT_IDENTIFIER getContentType()
          Returns the contentType field, which determines what kind of content is contained in this ContentInfo.
 ASN1Value getInterpretedContent()
          Returns the content, interpreted based on its type.
 Tag getTag()
          Returns the base tag for this type, not counting any tags that may be imposed on it by its context.
static ContentInfo.Template getTemplate()
          Returns a singleton instance of a decoding template for ContentInfo.
 boolean hasContent()
          Returns true if the content field is present.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TAG

public static final Tag TAG

DATA

public static OBJECT_IDENTIFIER DATA

SIGNED_DATA

public static OBJECT_IDENTIFIER SIGNED_DATA

ENVELOPED_DATA

public static OBJECT_IDENTIFIER ENVELOPED_DATA

SIGNED_AND_ENVELOPED_DATA

public static OBJECT_IDENTIFIER SIGNED_AND_ENVELOPED_DATA

DIGESTED_DATA

public static OBJECT_IDENTIFIER DIGESTED_DATA

ENCRYPTED_DATA

public static OBJECT_IDENTIFIER ENCRYPTED_DATA
Constructor Detail

ContentInfo

public ContentInfo(OBJECT_IDENTIFIER contentType,
                   ASN1Value content)
Creates a ContentInfo with the given type and content.

Parameters:
contentType - The contentType of the ContentInfo.
content - The content of the ContentInfo. May be null to signify that the optional content field is not present.

ContentInfo

public ContentInfo(byte[] data)
Creates a ContentInfo of type data.


ContentInfo

public ContentInfo(SignedData sd)
Creates a ContentInfo of type signedData.


ContentInfo

public ContentInfo(EnvelopedData ed)
Creates a ContentInfo of type envelopedData.


ContentInfo

public ContentInfo(SignedAndEnvelopedData sed)
Creates a ContentInfo of type signedAndEnvelopedData.


ContentInfo

public ContentInfo(DigestedData dd)
Creates a ContentInfo of type digestedData.


ContentInfo

public ContentInfo(EncryptedData ed)
Creates a ContentInfo of type encryptedData.

Method Detail

getContentType

public OBJECT_IDENTIFIER getContentType()
Returns the contentType field, which determines what kind of content is contained in this ContentInfo. It will usually be one of the six predefined types, but may also be a user-defined type.


hasContent

public boolean hasContent()
Returns true if the content field is present.


getInterpretedContent

public ASN1Value getInterpretedContent()
                                throws InvalidBERException
Returns the content, interpreted based on its type. If there is no content, null is returned.

If the contentType is one of the six standard types, the returned object will be of that type. For example, if the ContentInfo has contentType signedData, a SignedData object will be returned. If the contentType is data, an OCTET_STRING will be returned.

If the contentType is not one of the six standard types, the returned object will be an ANY.

Throws:
InvalidBERException

getContent

public ANY getContent()
Returns the content encoded as an ANY. If there is no content, null is returned.


encode

public void encode(java.io.OutputStream ostream)
            throws java.io.IOException
Description copied from interface: ASN1Value
Write this value's DER encoding to an output stream using its own base tag.

Specified by:
encode in interface ASN1Value
Throws:
java.io.IOException

encode

public void encode(Tag implicitTag,
                   java.io.OutputStream ostream)
            throws java.io.IOException
Description copied from interface: ASN1Value
Write this value's DER encoding to an output stream using an implicit tag.

Specified by:
encode in interface ASN1Value
Throws:
java.io.IOException

getTag

public Tag getTag()
Description copied from interface: ASN1Value
Returns the base tag for this type, not counting any tags that may be imposed on it by its context.

Specified by:
getTag in interface ASN1Value

getTemplate

public static ContentInfo.Template getTemplate()
Returns a singleton instance of a decoding template for ContentInfo.