com.knowgate.scheduler.jobs
Class MimeSender

java.lang.Object
  extended by com.knowgate.dataobjs.DBPersist
      extended by com.knowgate.scheduler.Job
          extended by com.knowgate.scheduler.jobs.MimeSender
All Implemented Interfaces:
java.io.Serializable, java.util.Map

public class MimeSender
extends Job

Send mime mail message from the outbox of an account to a recipients list

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
java.util.Map.Entry<K,V>
 
Field Summary
 
Fields inherited from class com.knowgate.scheduler.Job
COMMAND_DUMY, COMMAND_FAX, COMMAND_FTP, COMMAND_MAIL, COMMAND_SAVE, COMMAND_SEND, iPendingAtoms, STATUS_ABORTED, STATUS_FINISHED, STATUS_INTERRUPTED, STATUS_PENDING, STATUS_RUNNING, STATUS_SUSPENDED
 
Fields inherited from class com.knowgate.dataobjs.DBPersist
AllVals, sAuditCls, sAuditUsr, sTransactId
 
Constructor Summary
MimeSender()
           
 
Method Summary
protected  void finalize()
           
 void free()
          Move message from outbox to sent items folder
 void init(Atom oAtm)
           
static void main(java.lang.String[] args)
          MimeSender.main() is used for sending bulk mailing from the command line This methods creates a new Job for sending the e-mails or reloads a previously existing one that was interrupted, resuming the Job execution at the point that it was left.
static MimeSender newInstance(JDCConnection oConn, java.lang.String sJobGroup, java.lang.String sIdWrkA, java.lang.String sGuUser, java.util.Date dtExecution, short iInitialStatus, java.lang.String sTxTitle, java.lang.String sTxParameters)
           
static MimeSender newInstance(JDCConnection oConn, java.lang.String sProfile, java.lang.String sIdWrkA, java.lang.String sGuMsg, java.lang.String sIdMsg, java.lang.String sGuUser, java.lang.String sGuAccount, boolean bIsPersonalizedMail, java.lang.String sTxTitle)
           
static MimeSender newInstance(JDCConnection oConn, java.lang.String sProfile, java.lang.String sIdWrkA, java.lang.String sGuMsg, java.lang.String sIdMsg, java.lang.String sGuUser, java.lang.String sGuAccount, boolean bIsPersonalizedMail, java.lang.String sTxTitle, boolean bNotification)
           
 java.lang.Object process(Atom oAtm)
          Process an atom Concrete atom processing implementation must be provided by each derived subclass.
static java.lang.String redirectExternalLinks(java.lang.String sLBody, MimeSender oJob, Atom oAtm)
           
 void setPending(int nPending)
           
 
Methods inherited from class com.knowgate.scheduler.Job
abort, delete, delete, getDataBaseBind, getIdFromTitle, getParameter, getParameters, getProperties, getProperty, getStatus, insertRecipients, instantiate, instantiate, load, log, logFile, pending, resolveAtomsEMails, setDataBaseBind, setStatus, store
 
Methods inherited from class com.knowgate.dataobjs.DBPersist
allcaps, allcaps, changelog, clear, clone, containsKey, containsValue, entrySet, exists, get, get, getAuditClassName, getCreationDate, getDate, getDateFormated, getDateShort, getDateTime, getDateTime24, getDecimal, getDecimalFormated, getDecimalFormated, getDouble, getDoubleFormated, getFloat, getFloatFormated, getInt, getInteger, getIntervalPart, getItemMap, getItems, getMoney, getShort, getSQLDate, getSQLTime, getString, getStringHtml, getStringNull, getTable, getTable, getTableName, getTime, getTimeOfDay, getTimestamp, getUIdFromName, isEmpty, isNull, iterator, keySet, load, parseXML, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, putAll, putAll, remove, remove, replace, replace, replace, replace, replace, replace, replace, replace, setAuditTransact, setAuditUser, setCreationDate, size, toLowerCase, toUpperCase, toXML, toXML, toXML, toXML, values
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Map
equals, hashCode
 

Constructor Detail

MimeSender

public MimeSender()
Method Detail

finalize

protected void finalize()
                 throws java.lang.Throwable
Overrides:
finalize in class java.lang.Object
Throws:
java.lang.Throwable

redirectExternalLinks

public static java.lang.String redirectExternalLinks(java.lang.String sLBody,
                                                     MimeSender oJob,
                                                     Atom oAtm)
                                              throws ParserException
Throws:
ParserException

init

public void init(Atom oAtm)
          throws java.sql.SQLException,
                 MessagingException,
                 java.lang.NullPointerException
Throws:
java.sql.SQLException
MessagingException
java.lang.NullPointerException

free

public void free()
Move message from outbox to sent items folder

Specified by:
free in class Job

process

public java.lang.Object process(Atom oAtm)
                         throws java.sql.SQLException,
                                MessagingException,
                                java.lang.NullPointerException
Description copied from class: Job

Process an atom

Concrete atom processing implementation must be provided by each derived subclass.

Specified by:
process in class Job
Parameters:
oAtm - Atom to be processed
Returns:
Custom subclass defined Object
Throws:
java.sql.SQLException
MessagingException
java.lang.NullPointerException

setPending

public void setPending(int nPending)

newInstance

public static MimeSender newInstance(JDCConnection oConn,
                                     java.lang.String sJobGroup,
                                     java.lang.String sIdWrkA,
                                     java.lang.String sGuUser,
                                     java.util.Date dtExecution,
                                     short iInitialStatus,
                                     java.lang.String sTxTitle,
                                     java.lang.String sTxParameters)
                              throws java.sql.SQLException
Throws:
java.sql.SQLException

newInstance

public static MimeSender newInstance(JDCConnection oConn,
                                     java.lang.String sProfile,
                                     java.lang.String sIdWrkA,
                                     java.lang.String sGuMsg,
                                     java.lang.String sIdMsg,
                                     java.lang.String sGuUser,
                                     java.lang.String sGuAccount,
                                     boolean bIsPersonalizedMail,
                                     java.lang.String sTxTitle)
                              throws java.sql.SQLException
Throws:
java.sql.SQLException

newInstance

public static MimeSender newInstance(JDCConnection oConn,
                                     java.lang.String sProfile,
                                     java.lang.String sIdWrkA,
                                     java.lang.String sGuMsg,
                                     java.lang.String sIdMsg,
                                     java.lang.String sGuUser,
                                     java.lang.String sGuAccount,
                                     boolean bIsPersonalizedMail,
                                     java.lang.String sTxTitle,
                                     boolean bNotification)
                              throws java.sql.SQLException
Throws:
java.sql.SQLException

main

public static void main(java.lang.String[] args)
                 throws java.io.IOException,
                        java.sql.SQLException

MimeSender.main() is used for sending bulk mailing from the command line

This methods creates a new Job for sending the e-mails or reloads a previously existing one that was interrupted, resuming the Job execution at the point that it was left. For sending e-mails you must have previously configured a mail account at hipermail module and have a List of recipients created at the Contacts Manager. Provide as argument the name without extension of a .cnf file located at your profiles directory /by default /etc on Linux or C:\Windows on Windows). This file must contain the following properties: # hipergate MimeSender bulk mailer sample configuration file # Database driver=org.postgresql.Driver dburl=jdbc\:postgresql\://127.0.0.1\:5432/postgres schema= dbpassword=postgres dbuser=postgres poolsize=5 maxconnections=10 connectiontimeout=20000 connectionreaperdelay=31536000000 # File System fileserver=localhost fileprotocol=file\:// fileuser= storage=C\:\\ARCHIV~1\\Tomcat\\storage temp=C\:\\Windows\\Temp # Mail System mail.account=name_of_hipermail_account mail.list=List description mail.job.title=Unique name for mail batch The message body must be placed at a file under storage/mailing/List description (in the previous example it would be C:\ARCHIV~1\Tomcat\storage\mailing\List description) The message body file must be named body.htm if message is in HTML format or body.txt if it is in plain text format.

Throws:
java.io.IOException
java.sql.SQLException