org.apache.james.transport.mailets.smime
Class SMIMESign

java.lang.Object
  extended by org.apache.mailet.GenericMailet
      extended by org.apache.james.transport.mailets.smime.SMIMEAbstractSign
          extended by org.apache.james.transport.mailets.smime.SMIMESign
All Implemented Interfaces:
Mailet, MailetConfig

public class SMIMESign
extends SMIMEAbstractSign

Puts a server-side SMIME signature on a message.
It is a concrete subclass of SMIMEAbstractSign, with very few modifications to it.

A text file with an explanation text is attached to the original message, and the resulting message with all its attachments is signed. The resulting appearence of the message is almost unchanged: only an extra attachment and the signature are added.

Handles the following init parameters (will comment only the differences from SMIMEAbstractSign):

Since:
2.2.1
Version:
CVS $Revision: 365582 $ $Date: 2006-01-03 08:51:21 +0000 (mar, 03 gen 2006) $

Constructor Summary
SMIMESign()
           
 
Method Summary
protected  java.lang.String[] getAllowedInitParameters()
          Gets the expected init parameters.
 java.lang.String getExplanationText()
          If the <explanationText> init parameter is missing returns the following default explanation template string: The message this file is attached to has been signed on the server by "[signerName]" <[signerAddress]> to certify that the sender is known and truly has the following address (reverse-path): [reversePath] and that the original message has the following message headers: [headers] The signature envelopes this attachment too.
 java.lang.String getMailetInfo()
          Return a string describing this mailet.
protected  javax.mail.internet.MimeBodyPart getWrapperBodyPart(Mail mail)
          A text file with the massaged contents of getExplanationText() is attached to the original message.
protected  void initPostmasterSigns()
          If the <postmasterSigns> init parameter is missing sets it to true.
protected  void initRebuildFrom()
          If the <rebuildFrom> init parameter is missing sets it to true.
 
Methods inherited from class org.apache.james.transport.mailets.smime.SMIMEAbstractSign
fromAddressSameAsReverse, getKeyHolder, getMessageHeaders, getReplacedExplanationText, getSignerName, init, initDebug, initExplanationText, initKeyHolder, initSignerName, isDebug, isOkToSign, isPostmasterSigns, isRebuildFrom, service, setDebug, setExplanationText, setKeyHolder, setPostmasterSigns, setRebuildFrom, setSignerName
 
Methods inherited from class org.apache.mailet.GenericMailet
destroy, getInitParameter, getInitParameter, getInitParameterNames, getMailetConfig, getMailetContext, getMailetName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SMIMESign

public SMIMESign()
Method Detail

getMailetInfo

public java.lang.String getMailetInfo()
Return a string describing this mailet.

Specified by:
getMailetInfo in interface Mailet
Overrides:
getMailetInfo in class GenericMailet
Returns:
a string describing this mailet

getAllowedInitParameters

protected java.lang.String[] getAllowedInitParameters()
Description copied from class: SMIMEAbstractSign
Gets the expected init parameters.

Specified by:
getAllowedInitParameters in class SMIMEAbstractSign
Returns:
An array containing the parameter names allowed for this mailet.

getExplanationText

public java.lang.String getExplanationText()
If the <explanationText> init parameter is missing returns the following default explanation template string:

 The message this file is attached to has been signed on the server by
     "[signerName]" <[signerAddress]>
 to certify that the sender is known and truly has the following address (reverse-path):
     [reversePath]
 and that the original message has the following message headers:

 [headers]

 The signature envelopes this attachment too.
 Please check the signature integrity.

     "[signerName]" <[signerAddress]>
 

Overrides:
getExplanationText in class SMIMEAbstractSign
Returns:
Value of property explanationText.

initPostmasterSigns

protected void initPostmasterSigns()
If the <postmasterSigns> init parameter is missing sets it to true.

Overrides:
initPostmasterSigns in class SMIMEAbstractSign

initRebuildFrom

protected void initRebuildFrom()
                        throws javax.mail.MessagingException
If the <rebuildFrom> init parameter is missing sets it to true.

Overrides:
initRebuildFrom in class SMIMEAbstractSign
Throws:
javax.mail.MessagingException

getWrapperBodyPart

protected javax.mail.internet.MimeBodyPart getWrapperBodyPart(Mail mail)
                                                       throws javax.mail.MessagingException,
                                                              java.io.IOException
A text file with the massaged contents of getExplanationText() is attached to the original message.

Specified by:
getWrapperBodyPart in class SMIMEAbstractSign
Parameters:
mail - The mail to massage.
Returns:
The massaged MimeBodyPart to sign, or null to have the whole message signed "as is".
Throws:
javax.mail.MessagingException
java.io.IOException


Copyright © 2002-2007 The Apache Software Foundation. All Rights Reserved.