public class SleepWork extends AbstractWork
Work.Progress, Work.State| Modifier and Type | Field and Description |
|---|---|
protected String |
category |
static String |
CATEGORY |
protected boolean |
coalescing |
protected AtomicInteger |
count |
protected long |
durationMillis |
protected boolean |
idempotent |
protected String |
partitionKey |
callerThread, completionTime, docId, docIds, FAILURE_EXCEPTION, FAILURE_MSG, id, isTree, loginContext, originatingUsername, progress, RANDOM, repositoryName, schedulePath, schedulingTime, session, startTime, state, status, suspended, suspending, WORK_FAILED_EVENT, WORK_INSTANCE| Constructor and Description |
|---|
SleepWork(long durationMillis) |
SleepWork(long durationMillis,
boolean debug)
Deprecated.
since 10.2 debug flag is unused
|
SleepWork(long durationMillis,
boolean debug,
String id)
Deprecated.
since 10.2 debug flag is unused
|
SleepWork(long durationMillis,
String id) |
SleepWork(long durationMillis,
String category,
boolean debug)
Deprecated.
since 10.2 debug flag is unused
|
SleepWork(long durationMillis,
String category,
boolean debug,
String id)
Deprecated.
since 10.2 debug flag is unused
|
SleepWork(long durationMillis,
String category,
String id)
Creates a work instance that does nothing but sleep.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
doWork() |
String |
getCategory()
Gets the category for this work.
|
String |
getPartitionKey()
Returns a key that can be used by the WorkManager implementation to guarantee that works with the same partition
key will be executed in the order they are submitted.
|
String |
getTitle()
Gets a human-readable name for this work instance.
|
boolean |
isCoalescing()
When setting the coalescing flag to true you indicate to the work manager that if multiple works with the same id
are scheduled you only care about the lastest execution.
|
boolean |
isIdempotent()
Returns true if a work with a given
Work.getId() should always produce the same result. |
void |
setCoalescing(boolean coalescing) |
void |
setIdempotent(boolean idempotent) |
String |
toString() |
void |
work()
This method should implement the actual work done by the
Work instance. |
buildWorkFailureEventProps, cleanUp, closeSession, commitOrRollbackTransaction, equals, getCompletionTime, getDocument, getDocuments, getId, getOriginatingUsername, getProgress, getRetryCount, getSchedulePath, getSchedulingTime, getStartTime, getStatus, getWorkInstanceState, hashCode, initSession, initSession, isDocumentTree, isSuspending, isWorkInstanceSuspended, newDocumentLocation, openSystemSession, openUserSession, run, runWorkWithTransaction, setCompletionTime, setDocument, setDocument, setDocuments, setOriginatingUsername, setProgress, setSchedulePath, setStartTime, setStatus, setWorkInstanceState, setWorkInstanceSuspending, startTransaction, suspended, workFailedpublic static final String CATEGORY
protected long durationMillis
protected AtomicInteger count
protected String partitionKey
protected boolean idempotent
protected boolean coalescing
public SleepWork(long durationMillis, String category, String id)
durationMillis - the sleep durationpublic SleepWork(long durationMillis)
@Deprecated public SleepWork(long durationMillis, boolean debug)
#debugStart, #debugFinish.durationMillis - the sleep durationdebug - true for debug@Deprecated public SleepWork(long durationMillis, boolean debug, String id)
@Deprecated public SleepWork(long durationMillis, String category, boolean debug)
@Deprecated public SleepWork(long durationMillis, String category, boolean debug, String id)
public String getCategory()
WorkUsed to choose an execution queue.
getCategory in interface WorkgetCategory in class AbstractWorknull for the defaultpublic String getTitle()
Workpublic void work()
WorkWork instance.
It should periodically update its progress through Work.setProgress(org.nuxeo.ecm.core.work.api.Work.Progress).
To allow for suspension by the WorkManager, it should periodically call Work.isSuspending(), and if
true call Work.suspended() return early with saved state data.
Clean up can by implemented by #cleanUp().
work in interface Workwork in class AbstractWorkWork.isSuspending(),
Work.suspended(),
Work.cleanUp(boolean, java.lang.Exception)protected void doWork() throws InterruptedException
InterruptedExceptionpublic String getPartitionKey()
WorkgetPartitionKey in interface WorkgetPartitionKey in class AbstractWorkpublic boolean isIdempotent()
WorkWork.getId() should always produce the same result.
The WorkManager implementation can safely skip duplicate executions of idempotent work.public void setIdempotent(boolean idempotent)
public boolean isCoalescing()
Workpublic void setCoalescing(boolean coalescing)
public String toString()
toString in class AbstractWorkCopyright © 2019 Nuxeo. All rights reserved.