| 
Oracle Fusion Middleware CMS Java API Reference for Oracle Security Developer Tools 11g Release 1 (11.1.1) E10667-04  | 
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Object
  
java.io.OutputStream
      
java.io.FilterOutputStream
          
oracle.security.crypto.cms.CMSOutputStream
              
oracle.security.crypto.cms.CMSDigestedDataOutputStream
public class CMSDigestedDataOutputStream
A CMSDigestedDataOutputStream writes its output in the form of a CMS digested-data structure, generating the message digest in the process.
Specifically, the effect of using this class is as if the following process took place:
digested-data.except that the actual process is done in one pass, eliminating the necessity to accumulate all of the input data before writing any output.
In the case where a <ocde>CMSConnector is provided instead of a CMSOutputStream, only the exposed content i.e. the Content field of the ContentInfo structure minus the explicit [0] tag is written to the underlying output stream.
IMPORTANT: This class generates large CMS digested-data Objects more efficiently (Java VM memory usage) than the CMSDigestedDataContentInfo class.
CMSOutputStream, CMSDigestedDataContentInfo, CMSDigestedDataOutputConnector| Field Summary | 
|---|
| Fields inherited from class java.io.FilterOutputStream | 
|---|
out | 
| Constructor Summary | |
|---|---|
CMSDigestedDataOutputStream(CMSOutputConnector conn, oracle.security.crypto.core.AlgorithmIdentifier digestAlgID, oracle.security.crypto.asn1.ASN1ObjectID contentType)Creates a CMSDigestedDataOutputStream. | 
|
CMSDigestedDataOutputStream(CMSOutputConnector conn, oracle.security.crypto.core.AlgorithmIdentifier digestAlgID, oracle.security.crypto.asn1.ASN1ObjectID contentType, boolean writeEContentInfo)Creates a CMSDigestedDataOutputStream. | 
|
CMSDigestedDataOutputStream(java.io.OutputStream out, oracle.security.crypto.core.AlgorithmIdentifier digestAlgID, oracle.security.crypto.asn1.ASN1ObjectID contentType)Creates a CMSDigestedDataOutputStream. | 
|
CMSDigestedDataOutputStream(java.io.OutputStream out, oracle.security.crypto.core.AlgorithmIdentifier digestAlgID, oracle.security.crypto.asn1.ASN1ObjectID contentType, boolean writeEContentInfo)Creates a CMSDigestedDataOutputStream. | 
|
| Method Summary | |
|---|---|
 void | 
close() | 
 oracle.security.crypto.asn1.ASN1ObjectID | 
getExposedContentType()Returns the content type of the data that is output to the underlying output stream.  | 
 void | 
terminate()Finish writing the CMS digested-data structure. | 
 void | 
write(byte[] b, int off, int len) | 
 void | 
write(int ch) | 
| Methods inherited from class java.io.FilterOutputStream | 
|---|
flush, write | 
| Methods inherited from class java.lang.Object | 
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
|---|
public CMSDigestedDataOutputStream(java.io.OutputStream out,
                                   oracle.security.crypto.core.AlgorithmIdentifier digestAlgID,
                                   oracle.security.crypto.asn1.ASN1ObjectID contentType)
                            throws java.security.NoSuchAlgorithmException
CMSDigestedDataOutputStream.
Note the changes in the exceptions
Exceptions no longer thrown -- AlgorithmIdentifierException
Exceptions introduced -- NoSuchAlgorthmException
out - The underlying output stream.digestAlgID - The message digest algorithm.contentType - The encapsulated content type.java.security.NoSuchAlgorithmException - Digest algorithm is not supported.
public CMSDigestedDataOutputStream(java.io.OutputStream out,
                                   oracle.security.crypto.core.AlgorithmIdentifier digestAlgID,
                                   oracle.security.crypto.asn1.ASN1ObjectID contentType,
                                   boolean writeEContentInfo)
                            throws java.security.NoSuchAlgorithmException
CMSDigestedDataOutputStream.
Note the changes in the exceptions
Exceptions no longer thrown -- AlgorithmIdentifierException
Exceptions introduced -- NoSuchAlgorthmException
out - The underlying output stream.digestAlgID - The message digest algorithm.contentType - The encapsulated content type.writeEContentInfo - true if the encapsulated content is to be written to the underlying output stream; false otherwise.java.security.NoSuchAlgorithmException - Digest algorithm is not supported.
public CMSDigestedDataOutputStream(CMSOutputConnector conn,
                                   oracle.security.crypto.core.AlgorithmIdentifier digestAlgID,
                                   oracle.security.crypto.asn1.ASN1ObjectID contentType)
                            throws java.security.NoSuchAlgorithmException
CMSDigestedDataOutputStream.
Note the changes in the exceptions
Exceptions no longer thrown -- AlgorithmIdentifierException
Exceptions introduced -- NoSuchAlgorthmException
conn - The underlying output connector.digestAlgID - The message digest algorithm.contentType - The encapsulated content type.java.security.NoSuchAlgorithmException - Digest algorithm is not supported.
public CMSDigestedDataOutputStream(CMSOutputConnector conn,
                                   oracle.security.crypto.core.AlgorithmIdentifier digestAlgID,
                                   oracle.security.crypto.asn1.ASN1ObjectID contentType,
                                   boolean writeEContentInfo)
                            throws java.security.NoSuchAlgorithmException
CMSDigestedDataOutputStream.
Note the changes in the exceptions
Exceptions no longer thrown -- AlgorithmIdentifierException
Exceptions introduced -- NoSuchAlgorthmException
conn - The underlying output connector.digestAlgID - The message digest algorithm.contentType - The encapsulated content type.writeEContentInfo - true if the encapsulated content is to be written to the underlying output stream; false otherwise.java.security.NoSuchAlgorithmException - Digest algorithm is not supported.| Method Detail | 
|---|
public void terminate()
               throws java.io.IOException
digested-data structure.
This method must be called after the content has been completely written.
terminate in class CMSOutputStreamjava.io.IOException - An I/O error occurred.
public void write(int ch)
           throws java.io.IOException
write in class java.io.FilterOutputStreamjava.io.IOException
public void write(byte[] b,
                  int off,
                  int len)
           throws java.io.IOException
write in class java.io.FilterOutputStreamjava.io.IOException
public void close()
           throws java.io.IOException
close in interface java.io.Closeableclose in class java.io.FilterOutputStreamjava.io.IOExceptionpublic oracle.security.crypto.asn1.ASN1ObjectID getExposedContentType()
getExposedContentType in class CMSOutputStream
  | 
Oracle Fusion Middleware CMS Java API Reference for Oracle Security Developer Tools 11g Release 1 (11.1.1) E10667-04  | 
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||