com.netscape.cms.jobs
Class AJobBase

java.lang.Object
  extended by com.netscape.cms.jobs.AJobBase
All Implemented Interfaces:
IJob, java.lang.Runnable
Direct Known Subclasses:
PublishCertsJob, RenewalNotificationJob, RequestInQueueJob, UnpublishExpiredJob

public abstract class AJobBase
extends java.lang.Object
implements IJob, java.lang.Runnable

This abstract class is a base job for real job extentions for the Jobs Scheduler.

Version:
$Revision: 1211 $, $Date: 2010-08-18 10:15:37 -0700 (Wed, 18 Aug 2010) $
See Also:
IJob

Field Summary
protected  IConfigStore mConfig
           
protected static java.lang.String[] mConfigParams
           
protected  java.util.Hashtable mContentParams
           
protected  java.lang.String mCron
           
protected  java.lang.String mId
           
protected  java.lang.String mImplName
           
protected  java.lang.String mItemForm
           
protected  java.util.Hashtable mItemParams
           
protected  IJobCron mJobCron
           
protected  ILogger mLogger
           
protected  java.lang.String mMailForm
           
protected  boolean mMailHTML
           
protected  java.lang.String mSummaryMailSubject
           
protected  java.lang.String mSummaryReceiverEmail
           
protected  java.lang.String mSummarySenderEmail
           
protected static java.lang.String PROP_EMAIL_SUBJECT
           
protected static java.lang.String PROP_EMAIL_TEMPLATE
           
protected static java.lang.String PROP_ENABLED
           
protected static java.lang.String PROP_ITEM_TEMPLATE
           
protected static java.lang.String PROP_RECEIVER_EMAIL
           
protected static java.lang.String PROP_SENDER_EMAIL
           
protected static java.lang.String PROP_SUMMARY
           
protected static java.lang.String STATUS_FAILURE
           
protected static java.lang.String STATUS_SUCCESS
           
 
Constructor Summary
AJobBase()
           
 
Method Summary
protected  void buildContentParams(java.lang.String name, java.lang.String val)
           
protected  void buildItemParams(IRequest r)
           
protected  void buildItemParams(java.lang.String name, java.lang.String val)
           
protected  void buildItemParams(netscape.security.x509.X509CertImpl cert)
           
 IConfigStore getConfigStore()
          Gets the configuration substore used by this job
 java.lang.String getId()
          get instance id.
 java.lang.String getImplName()
          gets the plugin name of this job.
 IJobCron getJobCron()
          get cron string associated with this job
protected  java.lang.String getTemplateContent(java.lang.String templatePath)
           
abstract  void init(ISubsystem owner, java.lang.String id, java.lang.String implName, IConfigStore config)
          abstract methods
 boolean isEnabled()
          tells if the job is enabled
 void log(int level, java.lang.String msg)
          logs an entry in the log file.
 void log(int level, java.lang.String msg, boolean multiline)
          capable of logging multiline entry in the log file.
protected  void mailSummary(java.lang.String content)
           
abstract  void run()
           
 void setId(java.lang.String id)
          set instance id.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.netscape.certsrv.jobs.IJob
getConfigParams
 

Field Detail

PROP_SUMMARY

protected static final java.lang.String PROP_SUMMARY
See Also:
Constant Field Values

PROP_ENABLED

protected static final java.lang.String PROP_ENABLED
See Also:
Constant Field Values

PROP_EMAIL_SUBJECT

protected static final java.lang.String PROP_EMAIL_SUBJECT
See Also:
Constant Field Values

PROP_EMAIL_TEMPLATE

protected static final java.lang.String PROP_EMAIL_TEMPLATE
See Also:
Constant Field Values

PROP_ITEM_TEMPLATE

protected static final java.lang.String PROP_ITEM_TEMPLATE
See Also:
Constant Field Values

PROP_SENDER_EMAIL

protected static final java.lang.String PROP_SENDER_EMAIL
See Also:
Constant Field Values

PROP_RECEIVER_EMAIL

protected static final java.lang.String PROP_RECEIVER_EMAIL
See Also:
Constant Field Values

STATUS_FAILURE

protected static final java.lang.String STATUS_FAILURE
See Also:
Constant Field Values

STATUS_SUCCESS

protected static final java.lang.String STATUS_SUCCESS
See Also:
Constant Field Values

mImplName

protected java.lang.String mImplName

mConfig

protected IConfigStore mConfig

mId

protected java.lang.String mId

mCron

protected java.lang.String mCron

mJobCron

protected IJobCron mJobCron

mLogger

protected ILogger mLogger

mConfigParams

protected static java.lang.String[] mConfigParams

mSummaryMailSubject

protected java.lang.String mSummaryMailSubject

mMailHTML

protected boolean mMailHTML

mMailForm

protected java.lang.String mMailForm

mItemForm

protected java.lang.String mItemForm

mSummarySenderEmail

protected java.lang.String mSummarySenderEmail

mSummaryReceiverEmail

protected java.lang.String mSummaryReceiverEmail

mContentParams

protected java.util.Hashtable mContentParams

mItemParams

protected java.util.Hashtable mItemParams
Constructor Detail

AJobBase

public AJobBase()
Method Detail

isEnabled

public boolean isEnabled()
tells if the job is enabled

Specified by:
isEnabled in interface IJob
Returns:
a boolean value indicating whether the job is enabled or not

init

public abstract void init(ISubsystem owner,
                          java.lang.String id,
                          java.lang.String implName,
                          IConfigStore config)
                   throws EBaseException
abstract methods

Specified by:
init in interface IJob
id - String name of this instance
implName - string name of this implementation
config - configuration store for this instance
Throws:
EBaseException - any initilization failure

run

public abstract void run()
Specified by:
run in interface java.lang.Runnable

getId

public java.lang.String getId()
get instance id.

Specified by:
getId in interface IJob
Returns:
a String identifier

setId

public void setId(java.lang.String id)
set instance id.

Specified by:
setId in interface IJob
Parameters:
id - String id of the instance

getJobCron

public IJobCron getJobCron()
get cron string associated with this job

Specified by:
getJobCron in interface IJob
Returns:
a JobCron object that represents the schedule of this job

getImplName

public java.lang.String getImplName()
gets the plugin name of this job.

Specified by:
getImplName in interface IJob
Returns:
a String that is the name of this implementation

getConfigStore

public IConfigStore getConfigStore()
Gets the configuration substore used by this job

Specified by:
getConfigStore in interface IJob
Returns:
configuration store

getTemplateContent

protected java.lang.String getTemplateContent(java.lang.String templatePath)

mailSummary

protected void mailSummary(java.lang.String content)

buildItemParams

protected void buildItemParams(netscape.security.x509.X509CertImpl cert)

buildItemParams

protected void buildItemParams(IRequest r)

buildItemParams

protected void buildItemParams(java.lang.String name,
                               java.lang.String val)

buildContentParams

protected void buildContentParams(java.lang.String name,
                                  java.lang.String val)

log

public void log(int level,
                java.lang.String msg)
logs an entry in the log file. Used by classes extending this class.

Parameters:
level - log level
msg - log message in String

log

public void log(int level,
                java.lang.String msg,
                boolean multiline)
capable of logging multiline entry in the log file. Used by classes extending this class.

Parameters:
level - log level
msg - log message in String
multiline - boolean indicating whether the message is a multi-lined message.