org.enhydra.shark.toolagent
Class SMIMEMailMessageHandler

java.lang.Object
  extended byorg.enhydra.shark.toolagent.DefaultMailMessageHandler
      extended byorg.enhydra.shark.toolagent.SMIMEMailMessageHandler
All Implemented Interfaces:
MailMessageHandler, java.io.Serializable

public class SMIMEMailMessageHandler
extends DefaultMailMessageHandler

Class is used to maintain SMIME possibility. This handler is extension of DefaultMailMessageHandler, and all parameters used in configuration of its super class are used in this extension too, whith addition of more parameters.

Author:
Vladimir Radisic
See Also:
Serialized Form

Field Summary
protected  java.lang.String envDefaultAlgorithm
           
protected  java.lang.String envDefaultKeyLength
           
protected  java.lang.String envDefaultKeystoreName
           
protected  java.lang.String envDefaultKeystorePassword
           
protected  java.lang.String envDefaultKeystoreType
           
protected  java.lang.String envDefaultPath
           
static java.lang.String SECURITY_TYPE
          Parameter that represents choosen security type for email that should be sent.
protected  int securityType
          Security identifier can can take the following values:
1 - SignedSMIME
2 - EnvelopedSMIME
3 - SignedAndEnvelopedSMIME
4 - EnvelopedAndSignedSMIME
Anything else means that there is no security issues and pure email will be sent.
protected  java.lang.String sigDefaultAlgorithm
           
protected  boolean sigDefaultExternalSignature
           
protected  boolean sigDefaultIncludeCert
           
protected  boolean sigDefaultIncludeSignAttrib
           
protected  java.lang.String sigDefaultKeystoreName
           
protected  java.lang.String sigDefaultKeystorePassword
           
protected  java.lang.String sigDefaultKeystoreType
           
protected  java.lang.String sigDefaultPath
           
static java.lang.String SMIME_ENVELOP_ALGORITHM
           
static java.lang.String SMIME_ENVELOP_BCC_CERT
           
static java.lang.String SMIME_ENVELOP_BCC_KEYSTORE
           
static java.lang.String SMIME_ENVELOP_BCC_KEYSTORE_CERT_ALIAS
           
static java.lang.String SMIME_ENVELOP_BCC_KEYSTORE_PASSWORD
           
static java.lang.String SMIME_ENVELOP_BCC_KEYSTORE_TYPE
           
static java.lang.String SMIME_ENVELOP_CC_CERT
           
static java.lang.String SMIME_ENVELOP_CC_KEYSTORE
           
static java.lang.String SMIME_ENVELOP_CC_KEYSTORE_CERT_ALIAS
           
static java.lang.String SMIME_ENVELOP_CC_KEYSTORE_PASSWORD
           
static java.lang.String SMIME_ENVELOP_CC_KEYSTORE_TYPE
           
static java.lang.String SMIME_ENVELOP_DEFAULT_ALGORITHM
           
static java.lang.String SMIME_ENVELOP_DEFAULT_KEY_LENGTH
           
static java.lang.String SMIME_ENVELOP_DEFAULT_KEYSTORE_NAME
           
static java.lang.String SMIME_ENVELOP_DEFAULT_KEYSTORE_PASSWORD
           
static java.lang.String SMIME_ENVELOP_DEFAULT_KEYSTORE_TYPE
           
static java.lang.String SMIME_ENVELOP_DEFAULT_PATH
           
static java.lang.String SMIME_ENVELOP_KEY_LENGTH
           
static java.lang.String SMIME_ENVELOP_TO_CERT
           
static java.lang.String SMIME_ENVELOP_TO_KEYSTORE
           
static java.lang.String SMIME_ENVELOP_TO_KEYSTORE_CERT_ALIAS
           
static java.lang.String SMIME_ENVELOP_TO_KEYSTORE_PASSWORD
           
static java.lang.String SMIME_ENVELOP_TO_KEYSTORE_TYPE
           
static java.lang.String SMIME_SIGNED_CAPABILITIES_ENCIPHER
           
static java.lang.String SMIME_SIGNED_CAPABILITIES_SIGNATURE
           
static java.lang.String SMIME_SIGNED_CAPABILITIES_SYMMETRIC
           
static java.lang.String SMIME_SIGNED_DEFAULT_ALGORITHM
           
static java.lang.String SMIME_SIGNED_DEFAULT_EXTERNAL_SIGNATURE
           
static java.lang.String SMIME_SIGNED_DEFAULT_INCLUDE_CERT
           
static java.lang.String SMIME_SIGNED_DEFAULT_INCLUDE_SIGN_ATTRIB
           
static java.lang.String SMIME_SIGNED_DEFAULT_KEYSTORE_NAME
           
static java.lang.String SMIME_SIGNED_DEFAULT_KEYSTORE_PASSWORD
           
static java.lang.String SMIME_SIGNED_DEFAULT_KEYSTORE_TYPE
           
static java.lang.String SMIME_SIGNED_DEFAULT_PATH
           
static java.lang.String SMIME_SIGNED_EXTERNAL_SIGNATURE
           
static java.lang.String SMIME_SIGNED_KEYSTORE
           
static java.lang.String SMIME_SIGNED_KEYSTORE_ALGORITHM
           
static java.lang.String SMIME_SIGNED_KEYSTORE_CERT_ALIAS
           
static java.lang.String SMIME_SIGNED_KEYSTORE_INCLUDE_CERT
           
static java.lang.String SMIME_SIGNED_KEYSTORE_INCLUDE_SIGN_ATTRIB
           
static java.lang.String SMIME_SIGNED_KEYSTORE_PASSWORD
           
static java.lang.String SMIME_SIGNED_KEYSTORE_TYPE
           
static java.lang.String SMIME_SIGNED_PFX
           
static java.lang.String SMIME_SIGNED_PFX_ALGORITHM
           
static java.lang.String SMIME_SIGNED_PFX_INCLUDE_CERT
           
static java.lang.String SMIME_SIGNED_PFX_INCLUDE_SIGN_ATTRIB
           
static java.lang.String SMIME_SIGNED_PFX_PASSWORD
           
 
Fields inherited from class org.enhydra.shark.toolagent.DefaultMailMessageHandler
assId, BCC_ADDRESSES_NAME, BCC_NAMES_NAME, CC_ADDRESSES_NAME, CC_NAMES_NAME, CHARSET_NAME, CONTENT_NAME, cus, FILE_ATTACHMENTS_NAME, FILE_ATTACHMENTS_NAMES_NAME, FROM_ADDRESSES_NAME, FROM_NAMES_NAME, IMAPport, incomingMailProtocol, incomingMailServer, login, MIME_TYPE_NAME, password, POP3port, procId, sharkParams, SMTPMailServer, SMTPport, sourceAddress, storeFolderName, SUBJECT_NAME, TO_ADDRESSES_NAME, TO_NAMES_NAME, URL_ATTACHMENTS_NAME, URL_ATTACHMENTS_NAMES_NAME, useAuthentication, VAR_ATTACHMENTS_MIME_TYPES_NAME, VAR_ATTACHMENTS_NAME, VAR_ATTACHMENTS_NAMES_NAME, varAttachmentsMimeTypesMap, varAttachmentsVariablesMap
 
Constructor Summary
SMIMEMailMessageHandler()
           
 
Method Summary
 void configure(CallbackUtilities cus, WMSessionHandle shandle, java.lang.String procId, java.lang.String assId, AppParameter[] aps)
           
 javax.mail.internet.MimeMessage createMail()
           
static void main(java.lang.String[] args)
           
 
Methods inherited from class org.enhydra.shark.toolagent.DefaultMailMessageHandler
createSession, getContent, getFileAttachments, getFromAddresses, getURLAttachments, getVarAttachments, receiveMail, sendMail, setParamsBasedOnMailMessage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SECURITY_TYPE

public static final java.lang.String SECURITY_TYPE
Parameter that represents choosen security type for email that should be sent. The parameter is of String type and can take the following values:
1 - SignedSMIME
2 - EnvelopedSMIME
3 - SignedAndEnvelopedSMIME
4 - EnvelopedAndSignedSMIME
Anything else means that there is no security issues and pure email will be sent

See Also:
Constant Field Values

SMIME_ENVELOP_TO_CERT

public static final java.lang.String SMIME_ENVELOP_TO_CERT
See Also:
Constant Field Values

SMIME_ENVELOP_TO_KEYSTORE

public static final java.lang.String SMIME_ENVELOP_TO_KEYSTORE
See Also:
Constant Field Values

SMIME_ENVELOP_TO_KEYSTORE_TYPE

public static final java.lang.String SMIME_ENVELOP_TO_KEYSTORE_TYPE
See Also:
Constant Field Values

SMIME_ENVELOP_TO_KEYSTORE_PASSWORD

public static final java.lang.String SMIME_ENVELOP_TO_KEYSTORE_PASSWORD
See Also:
Constant Field Values

SMIME_ENVELOP_TO_KEYSTORE_CERT_ALIAS

public static final java.lang.String SMIME_ENVELOP_TO_KEYSTORE_CERT_ALIAS
See Also:
Constant Field Values

SMIME_ENVELOP_CC_CERT

public static final java.lang.String SMIME_ENVELOP_CC_CERT
See Also:
Constant Field Values

SMIME_ENVELOP_CC_KEYSTORE

public static final java.lang.String SMIME_ENVELOP_CC_KEYSTORE
See Also:
Constant Field Values

SMIME_ENVELOP_CC_KEYSTORE_TYPE

public static final java.lang.String SMIME_ENVELOP_CC_KEYSTORE_TYPE
See Also:
Constant Field Values

SMIME_ENVELOP_CC_KEYSTORE_PASSWORD

public static final java.lang.String SMIME_ENVELOP_CC_KEYSTORE_PASSWORD
See Also:
Constant Field Values

SMIME_ENVELOP_CC_KEYSTORE_CERT_ALIAS

public static final java.lang.String SMIME_ENVELOP_CC_KEYSTORE_CERT_ALIAS
See Also:
Constant Field Values

SMIME_ENVELOP_BCC_CERT

public static final java.lang.String SMIME_ENVELOP_BCC_CERT
See Also:
Constant Field Values

SMIME_ENVELOP_BCC_KEYSTORE

public static final java.lang.String SMIME_ENVELOP_BCC_KEYSTORE
See Also:
Constant Field Values

SMIME_ENVELOP_BCC_KEYSTORE_TYPE

public static final java.lang.String SMIME_ENVELOP_BCC_KEYSTORE_TYPE
See Also:
Constant Field Values

SMIME_ENVELOP_BCC_KEYSTORE_PASSWORD

public static final java.lang.String SMIME_ENVELOP_BCC_KEYSTORE_PASSWORD
See Also:
Constant Field Values

SMIME_ENVELOP_BCC_KEYSTORE_CERT_ALIAS

public static final java.lang.String SMIME_ENVELOP_BCC_KEYSTORE_CERT_ALIAS
See Also:
Constant Field Values

SMIME_ENVELOP_ALGORITHM

public static final java.lang.String SMIME_ENVELOP_ALGORITHM
See Also:
Constant Field Values

SMIME_ENVELOP_KEY_LENGTH

public static final java.lang.String SMIME_ENVELOP_KEY_LENGTH
See Also:
Constant Field Values

SMIME_ENVELOP_DEFAULT_PATH

public static final java.lang.String SMIME_ENVELOP_DEFAULT_PATH
See Also:
Constant Field Values

SMIME_ENVELOP_DEFAULT_KEYSTORE_NAME

public static final java.lang.String SMIME_ENVELOP_DEFAULT_KEYSTORE_NAME
See Also:
Constant Field Values

SMIME_ENVELOP_DEFAULT_KEYSTORE_TYPE

public static final java.lang.String SMIME_ENVELOP_DEFAULT_KEYSTORE_TYPE
See Also:
Constant Field Values

SMIME_ENVELOP_DEFAULT_KEYSTORE_PASSWORD

public static final java.lang.String SMIME_ENVELOP_DEFAULT_KEYSTORE_PASSWORD
See Also:
Constant Field Values

SMIME_ENVELOP_DEFAULT_ALGORITHM

public static final java.lang.String SMIME_ENVELOP_DEFAULT_ALGORITHM
See Also:
Constant Field Values

SMIME_ENVELOP_DEFAULT_KEY_LENGTH

public static final java.lang.String SMIME_ENVELOP_DEFAULT_KEY_LENGTH
See Also:
Constant Field Values

SMIME_SIGNED_PFX

public static final java.lang.String SMIME_SIGNED_PFX
See Also:
Constant Field Values

SMIME_SIGNED_PFX_PASSWORD

public static final java.lang.String SMIME_SIGNED_PFX_PASSWORD
See Also:
Constant Field Values

SMIME_SIGNED_PFX_ALGORITHM

public static final java.lang.String SMIME_SIGNED_PFX_ALGORITHM
See Also:
Constant Field Values

SMIME_SIGNED_PFX_INCLUDE_CERT

public static final java.lang.String SMIME_SIGNED_PFX_INCLUDE_CERT
See Also:
Constant Field Values

SMIME_SIGNED_PFX_INCLUDE_SIGN_ATTRIB

public static final java.lang.String SMIME_SIGNED_PFX_INCLUDE_SIGN_ATTRIB
See Also:
Constant Field Values

SMIME_SIGNED_KEYSTORE

public static final java.lang.String SMIME_SIGNED_KEYSTORE
See Also:
Constant Field Values

SMIME_SIGNED_KEYSTORE_TYPE

public static final java.lang.String SMIME_SIGNED_KEYSTORE_TYPE
See Also:
Constant Field Values

SMIME_SIGNED_KEYSTORE_PASSWORD

public static final java.lang.String SMIME_SIGNED_KEYSTORE_PASSWORD
See Also:
Constant Field Values

SMIME_SIGNED_KEYSTORE_CERT_ALIAS

public static final java.lang.String SMIME_SIGNED_KEYSTORE_CERT_ALIAS
See Also:
Constant Field Values

SMIME_SIGNED_KEYSTORE_ALGORITHM

public static final java.lang.String SMIME_SIGNED_KEYSTORE_ALGORITHM
See Also:
Constant Field Values

SMIME_SIGNED_KEYSTORE_INCLUDE_CERT

public static final java.lang.String SMIME_SIGNED_KEYSTORE_INCLUDE_CERT
See Also:
Constant Field Values

SMIME_SIGNED_KEYSTORE_INCLUDE_SIGN_ATTRIB

public static final java.lang.String SMIME_SIGNED_KEYSTORE_INCLUDE_SIGN_ATTRIB
See Also:
Constant Field Values

SMIME_SIGNED_EXTERNAL_SIGNATURE

public static final java.lang.String SMIME_SIGNED_EXTERNAL_SIGNATURE
See Also:
Constant Field Values

SMIME_SIGNED_CAPABILITIES_SYMMETRIC

public static final java.lang.String SMIME_SIGNED_CAPABILITIES_SYMMETRIC
See Also:
Constant Field Values

SMIME_SIGNED_CAPABILITIES_ENCIPHER

public static final java.lang.String SMIME_SIGNED_CAPABILITIES_ENCIPHER
See Also:
Constant Field Values

SMIME_SIGNED_CAPABILITIES_SIGNATURE

public static final java.lang.String SMIME_SIGNED_CAPABILITIES_SIGNATURE
See Also:
Constant Field Values

SMIME_SIGNED_DEFAULT_PATH

public static final java.lang.String SMIME_SIGNED_DEFAULT_PATH
See Also:
Constant Field Values

SMIME_SIGNED_DEFAULT_KEYSTORE_NAME

public static final java.lang.String SMIME_SIGNED_DEFAULT_KEYSTORE_NAME
See Also:
Constant Field Values

SMIME_SIGNED_DEFAULT_KEYSTORE_TYPE

public static final java.lang.String SMIME_SIGNED_DEFAULT_KEYSTORE_TYPE
See Also:
Constant Field Values

SMIME_SIGNED_DEFAULT_KEYSTORE_PASSWORD

public static final java.lang.String SMIME_SIGNED_DEFAULT_KEYSTORE_PASSWORD
See Also:
Constant Field Values

SMIME_SIGNED_DEFAULT_ALGORITHM

public static final java.lang.String SMIME_SIGNED_DEFAULT_ALGORITHM
See Also:
Constant Field Values

SMIME_SIGNED_DEFAULT_INCLUDE_CERT

public static final java.lang.String SMIME_SIGNED_DEFAULT_INCLUDE_CERT
See Also:
Constant Field Values

SMIME_SIGNED_DEFAULT_INCLUDE_SIGN_ATTRIB

public static final java.lang.String SMIME_SIGNED_DEFAULT_INCLUDE_SIGN_ATTRIB
See Also:
Constant Field Values

SMIME_SIGNED_DEFAULT_EXTERNAL_SIGNATURE

public static final java.lang.String SMIME_SIGNED_DEFAULT_EXTERNAL_SIGNATURE
See Also:
Constant Field Values

securityType

protected int securityType
Security identifier can can take the following values:
1 - SignedSMIME
2 - EnvelopedSMIME
3 - SignedAndEnvelopedSMIME
4 - EnvelopedAndSignedSMIME
Anything else means that there is no security issues and pure email will be sent.


envDefaultPath

protected java.lang.String envDefaultPath

envDefaultKeystoreName

protected java.lang.String envDefaultKeystoreName

envDefaultKeystoreType

protected java.lang.String envDefaultKeystoreType

envDefaultKeystorePassword

protected java.lang.String envDefaultKeystorePassword

envDefaultAlgorithm

protected java.lang.String envDefaultAlgorithm

envDefaultKeyLength

protected java.lang.String envDefaultKeyLength

sigDefaultPath

protected java.lang.String sigDefaultPath

sigDefaultKeystoreName

protected java.lang.String sigDefaultKeystoreName

sigDefaultKeystoreType

protected java.lang.String sigDefaultKeystoreType

sigDefaultKeystorePassword

protected java.lang.String sigDefaultKeystorePassword

sigDefaultAlgorithm

protected java.lang.String sigDefaultAlgorithm

sigDefaultIncludeCert

protected boolean sigDefaultIncludeCert

sigDefaultIncludeSignAttrib

protected boolean sigDefaultIncludeSignAttrib

sigDefaultExternalSignature

protected boolean sigDefaultExternalSignature
Constructor Detail

SMIMEMailMessageHandler

public SMIMEMailMessageHandler()
Method Detail

configure

public void configure(CallbackUtilities cus,
                      WMSessionHandle shandle,
                      java.lang.String procId,
                      java.lang.String assId,
                      AppParameter[] aps)
               throws java.lang.Exception
Specified by:
configure in interface MailMessageHandler
Overrides:
configure in class DefaultMailMessageHandler
Throws:
java.lang.Exception

createMail

public javax.mail.internet.MimeMessage createMail()
                                           throws java.lang.Exception
Overrides:
createMail in class DefaultMailMessageHandler
Throws:
java.lang.Exception

main

public static void main(java.lang.String[] args)
Parameters:
args -