public abstract class AbstractAsyncJobExecutor extends Object implements AsyncExecutor
| Modifier and Type | Field and Description |
|---|---|
protected Thread |
asyncJobAcquisitionThread |
protected int |
asyncJobLockTimeInMillis |
protected AcquireAsyncJobsDueRunnable |
asyncJobsDueRunnable |
protected CommandExecutor |
commandExecutor |
protected int |
defaultAsyncJobAcquireWaitTimeInMillis |
protected int |
defaultQueueSizeFullWaitTime |
protected int |
defaultTimerJobAcquireWaitTimeInMillis |
protected ExecuteAsyncRunnableFactory |
executeAsyncRunnableFactory |
protected boolean |
isActive |
protected boolean |
isAutoActivate |
protected long |
keepAliveTime
The time (in milliseconds) a thread used for job execution must be kept alive before it is
destroyed.
|
protected String |
lockOwner |
protected int |
maxAsyncJobsDuePerAcquisition |
protected int |
maxTimerJobsPerAcquisition |
protected int |
retryWaitTimeInMillis |
protected LinkedList<JobEntity> |
temporaryJobQueue |
protected Thread |
timerJobAcquisitionThread |
protected AcquireTimerJobsRunnable |
timerJobRunnable |
protected int |
timerLockTimeInMillis |
| Constructor and Description |
|---|
AbstractAsyncJobExecutor() |
protected long keepAliveTime
protected Thread timerJobAcquisitionThread
protected Thread asyncJobAcquisitionThread
protected AcquireTimerJobsRunnable timerJobRunnable
protected AcquireAsyncJobsDueRunnable asyncJobsDueRunnable
protected ExecuteAsyncRunnableFactory executeAsyncRunnableFactory
protected boolean isAutoActivate
protected boolean isActive
protected int maxTimerJobsPerAcquisition
protected int maxAsyncJobsDuePerAcquisition
protected int defaultTimerJobAcquireWaitTimeInMillis
protected int defaultAsyncJobAcquireWaitTimeInMillis
protected int defaultQueueSizeFullWaitTime
protected String lockOwner
protected int timerLockTimeInMillis
protected int asyncJobLockTimeInMillis
protected int retryWaitTimeInMillis
protected LinkedList<JobEntity> temporaryJobQueue
protected CommandExecutor commandExecutor
public boolean executeAsyncJob(JobEntity job)
AsyncExecutorJobEntity to this AsyncExecutor instance
to execute. If the offering does not work for some reason, false
will be returned (For example when the job queue is full in the DefaultAsyncJobExecutor).executeAsyncJob in interface AsyncExecutorprotected abstract boolean executeAsyncJob(Runnable runnable)
protected void doUnlockJob(JobEntity job)
protected void unlockJob(JobEntity job, CommandContext commandContext)
public void start()
start in interface AsyncExecutorprotected void initialize()
public void shutdown()
shutdown in interface AsyncExecutorprotected abstract void startExecutingAsyncJobs()
protected abstract void stopExecutingAsyncJobs()
protected void startJobAcquisitionThread()
protected void stopJobAcquisitionThread()
public CommandExecutor getCommandExecutor()
getCommandExecutor in interface AsyncExecutorpublic void setCommandExecutor(CommandExecutor commandExecutor)
setCommandExecutor in interface AsyncExecutorpublic boolean isAutoActivate()
isAutoActivate in interface AsyncExecutorpublic void setAutoActivate(boolean isAutoActivate)
setAutoActivate in interface AsyncExecutorpublic boolean isActive()
isActive in interface AsyncExecutorpublic long getKeepAliveTime()
public void setKeepAliveTime(long keepAliveTime)
public String getLockOwner()
getLockOwner in interface AsyncExecutorpublic void setLockOwner(String lockOwner)
public int getTimerLockTimeInMillis()
getTimerLockTimeInMillis in interface AsyncExecutorpublic void setTimerLockTimeInMillis(int timerLockTimeInMillis)
setTimerLockTimeInMillis in interface AsyncExecutorpublic int getAsyncJobLockTimeInMillis()
getAsyncJobLockTimeInMillis in interface AsyncExecutorpublic void setAsyncJobLockTimeInMillis(int asyncJobLockTimeInMillis)
setAsyncJobLockTimeInMillis in interface AsyncExecutorpublic int getMaxTimerJobsPerAcquisition()
getMaxTimerJobsPerAcquisition in interface AsyncExecutorpublic void setMaxTimerJobsPerAcquisition(int maxTimerJobsPerAcquisition)
setMaxTimerJobsPerAcquisition in interface AsyncExecutorpublic int getMaxAsyncJobsDuePerAcquisition()
getMaxAsyncJobsDuePerAcquisition in interface AsyncExecutorpublic void setMaxAsyncJobsDuePerAcquisition(int maxAsyncJobsDuePerAcquisition)
setMaxAsyncJobsDuePerAcquisition in interface AsyncExecutorpublic int getDefaultTimerJobAcquireWaitTimeInMillis()
getDefaultTimerJobAcquireWaitTimeInMillis in interface AsyncExecutorpublic void setDefaultTimerJobAcquireWaitTimeInMillis(int defaultTimerJobAcquireWaitTimeInMillis)
setDefaultTimerJobAcquireWaitTimeInMillis in interface AsyncExecutorpublic int getDefaultAsyncJobAcquireWaitTimeInMillis()
getDefaultAsyncJobAcquireWaitTimeInMillis in interface AsyncExecutorpublic void setDefaultAsyncJobAcquireWaitTimeInMillis(int defaultAsyncJobAcquireWaitTimeInMillis)
setDefaultAsyncJobAcquireWaitTimeInMillis in interface AsyncExecutorpublic int getDefaultQueueSizeFullWaitTimeInMillis()
getDefaultQueueSizeFullWaitTimeInMillis in interface AsyncExecutorpublic void setDefaultQueueSizeFullWaitTimeInMillis(int defaultQueueSizeFullWaitTime)
setDefaultQueueSizeFullWaitTimeInMillis in interface AsyncExecutorpublic void setTimerJobRunnable(AcquireTimerJobsRunnable timerJobRunnable)
public void setAsyncJobsDueRunnable(AcquireAsyncJobsDueRunnable asyncJobsDueRunnable)
public int getRetryWaitTimeInMillis()
getRetryWaitTimeInMillis in interface AsyncExecutorpublic void setRetryWaitTimeInMillis(int retryWaitTimeInMillis)
setRetryWaitTimeInMillis in interface AsyncExecutorpublic ExecuteAsyncRunnableFactory getExecuteAsyncRunnableFactory()
public void setExecuteAsyncRunnableFactory(ExecuteAsyncRunnableFactory executeAsyncRunnableFactory)
Copyright © 2016 Alfresco. All rights reserved.