public class ReportQueueManager extends MaximoThread
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_MAX_CONCURRENT_THREADCOUNT |
static int |
DEFAULT_QUEUE_IDLETIME_SECONDS |
static java.lang.String |
PROPERTY_DISABLEQUEUEMANAGER |
static java.lang.String |
PROPERTY_MAXCONCURRENTRUN |
static java.lang.String |
PROPERTY_QUEUEIDLETIMESECONDS |
Constructor and Description |
---|
ReportQueueManager() |
Modifier and Type | Method and Description |
---|---|
boolean |
acquireLock(long runQueueId)
Aquires lock on a report that can be run, so that the report is run by
only one thread.
|
protected boolean |
areJobsAvailableToRun()
Checks report queue for any pending jobs to process.
|
void |
createFileFromStream(java.io.File file,
java.io.InputStream inputStream) |
protected void |
createReportUsageLog(ReportUsageLogInfo usageLogInfo) |
protected void |
doWork(ScheduledReportUsageLogNotifier sReportUsageLogNotifier) |
protected long |
getCurrentTime() |
protected java.lang.String |
getEmailAddress(java.lang.String userId) |
int |
getMaxAllowedActiveReportThreads() |
int |
getQueueIdleTime() |
protected java.lang.String |
getReportOutputFileName(java.lang.String tempFolder,
java.lang.String reportName,
java.lang.String appName,
java.util.Locale locale) |
protected boolean |
isQueueManagerDisabled() |
protected boolean |
isReady() |
void |
removeRunReport(long runQueueId) |
protected void |
reportCancelledByAdministrator(java.lang.String reportName,
java.lang.String appName,
java.lang.String userId,
java.lang.String emailAddress,
java.lang.String emailAddresses,
ReportAdminServiceRemote reportService) |
protected void |
reportCancelledDueToRecordLimits(ReportSecurityLimits limits,
java.lang.String reportName,
java.lang.String appName,
java.lang.String userId,
java.lang.String emailAddress,
java.lang.String emailAddresses,
ReportAdminServiceRemote reportService) |
void |
run() |
protected void |
runJobs()
Identifies the threads that are not doing any work and wakes
them up for a possible work.
|
protected void |
runQueuedReport(MboRemote runQueue,
ScheduledReportUsageLogNotifier sReportUsageLogNotifier) |
protected void |
runQueuedReport(java.lang.String userId,
java.lang.String reportName,
java.lang.String appName,
ReportParameterData parameterData,
java.lang.String emailAddress,
java.lang.String emailAddresses,
java.lang.String emailSubject,
java.lang.String emailComments,
java.lang.String emailFileType,
java.lang.String emailType,
java.lang.String maximoUrl,
java.util.Locale locale,
java.util.TimeZone timeZone,
java.lang.String langCode,
ScheduledReportUsageLogNotifier sReportUsageLogNotifier,
java.lang.String fileDispformat) |
isMarkedForShutDown, markShutdown
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
public static final int DEFAULT_QUEUE_IDLETIME_SECONDS
public static final java.lang.String PROPERTY_QUEUEIDLETIMESECONDS
public static final java.lang.String PROPERTY_DISABLEQUEUEMANAGER
public static final int DEFAULT_MAX_CONCURRENT_THREADCOUNT
public static final java.lang.String PROPERTY_MAXCONCURRENTRUN
public void run()
run
in interface java.lang.Runnable
run
in class java.lang.Thread
protected boolean isQueueManagerDisabled()
protected boolean areJobsAvailableToRun()
protected boolean isReady()
protected void runJobs()
protected long getCurrentTime()
protected void createReportUsageLog(ReportUsageLogInfo usageLogInfo)
protected void doWork(ScheduledReportUsageLogNotifier sReportUsageLogNotifier)
public boolean acquireLock(long runQueueId)
runQueueId
- public void removeRunReport(long runQueueId)
protected void runQueuedReport(MboRemote runQueue, ScheduledReportUsageLogNotifier sReportUsageLogNotifier)
protected void runQueuedReport(java.lang.String userId, java.lang.String reportName, java.lang.String appName, ReportParameterData parameterData, java.lang.String emailAddress, java.lang.String emailAddresses, java.lang.String emailSubject, java.lang.String emailComments, java.lang.String emailFileType, java.lang.String emailType, java.lang.String maximoUrl, java.util.Locale locale, java.util.TimeZone timeZone, java.lang.String langCode, ScheduledReportUsageLogNotifier sReportUsageLogNotifier, java.lang.String fileDispformat)
protected void reportCancelledDueToRecordLimits(ReportSecurityLimits limits, java.lang.String reportName, java.lang.String appName, java.lang.String userId, java.lang.String emailAddress, java.lang.String emailAddresses, ReportAdminServiceRemote reportService) throws java.rmi.RemoteException, MXException
java.rmi.RemoteException
MXException
protected void reportCancelledByAdministrator(java.lang.String reportName, java.lang.String appName, java.lang.String userId, java.lang.String emailAddress, java.lang.String emailAddresses, ReportAdminServiceRemote reportService) throws java.rmi.RemoteException, MXException
java.rmi.RemoteException
MXException
protected java.lang.String getReportOutputFileName(java.lang.String tempFolder, java.lang.String reportName, java.lang.String appName, java.util.Locale locale) throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
protected java.lang.String getEmailAddress(java.lang.String userId) throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public int getMaxAllowedActiveReportThreads()
public int getQueueIdleTime()
public void createFileFromStream(java.io.File file, java.io.InputStream inputStream) throws java.io.IOException
java.io.IOException