public class signed_content
extends java.lang.Object
implements jakarta.activation.DataContentHandler
Within the JavaBeans Activation Framework (JAF) data content handlers are used for writing certain data objects to streams, and parsing objects back from streams. Generally, applications do not immediately call the methods of a data content handler. Rather they use the access mechanisms provided by the corresponding DataHandler. The data handler itself internally will look for a proper data content handler supporting a the requested S/MIME type.
The JAF uses a RFC 1524
mailcap file for defining Java classes as content handlers for specific mime types. In
particular, this signed_content
class acts as a content handler
for the two S/MIME types application/x-pkcs7-signature
and multipart/signed, indicated by the following lines to
be set in the corresponding mailcap file:
multipart/signed;; x-java-content-handler=iaik.smime.signed_content application/x-pkcs7-signature;; x-java-content-handler=iaik.smime.signed_contentNote that the IAIK-S/MIME distribution includes a ready-to-use mailcap file to be copied in the lib directory of your JDK (<JDK-INSTALL>/lib)!
More information about the JavaBeans Activation Framework may be obtained from http://www.oracle.com/technetwork/java/javase/downloads/index-135046.html.
Constructor and Description |
---|
signed_content()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
getContent(jakarta.activation.DataSource dataSource)
Returns an object representing the data which is encapsulated by the
supplied dataSource.
|
java.lang.Object |
getTransferData(jakarta.activation.ActivationDataFlavor dataFlavor,
jakarta.activation.DataSource dataSource)
Returns an object representing the data to be transferred.
|
jakarta.activation.ActivationDataFlavor[] |
getTransferDataFlavors()
Returns the DataFlavors indicating the flavors the data can be provided in.
|
void |
writeTo(java.lang.Object o,
java.lang.String mimeType,
java.io.OutputStream os)
Writes the supplied object to the given output stream.
|
public jakarta.activation.ActivationDataFlavor[] getTransferDataFlavors()
getTransferDataFlavors
in interface jakarta.activation.DataContentHandler
public java.lang.Object getTransferData(jakarta.activation.ActivationDataFlavor dataFlavor, jakarta.activation.DataSource dataSource) throws java.io.IOException
getTransferData
in interface jakarta.activation.DataContentHandler
dataFlavor
- the DataFlavor indicating the requested typedataSource
- the DataSource supplying the encapsulated dataSignedContent
object
for the supplied data, or null
if the specified
dataFlavor has the wrong formatjava.io.IOException
- if an error occurs when parsing the datapublic java.lang.Object getContent(jakarta.activation.DataSource dataSource) throws java.io.IOException
getContent
in interface jakarta.activation.DataContentHandler
dataSource
- the data source supplying the encapsulated dataSignedContent
object
representing the supplied datajava.io.IOException
- if an error occurs when parsing the datapublic void writeTo(java.lang.Object o, java.lang.String mimeType, java.io.OutputStream os) throws java.io.IOException
This method only is able to handle objects supplied as instances
of JMailSMimeSigned
or
SignedContent
. If
the given object does not satisfy this criterion, an IOException is thrown.
writeTo
in interface jakarta.activation.DataContentHandler
o
- the object (an instance of JMailSMimeSigned or SignedContent) to
be written to the streammimeType
- the mimeType; not used hereos
- the output stream to which to write the datajava.io.IOException
- if the supplied object is not an instance of
SignedContent or JMailSMimeSigned, or an error occurs while
writing to the stream