public abstract class BatchProcessorWork extends AbstractWork
Work.Progress, Work.State
callerThread, completionTime, docId, docIds, id, isTree, loginContext, originatingUsername, progress, RANDOM, repositoryName, schedulePath, schedulingTime, session, startTime, state, status, suspended, suspending
Constructor and Description |
---|
BatchProcessorWork(String repositoryName,
List<String> docIds,
String originatingUsername) |
Modifier and Type | Method and Description |
---|---|
abstract int |
getBatchSize()
The batch size to use.
|
int |
getRetryCount()
Gets the number of times that this Work instance can be retried in case of concurrent update exceptions.
|
abstract void |
processBatch(List<String> docIds) |
void |
work()
This method should implement the actual work done by the
Work instance. |
cleanUp, closeSession, commitOrRollbackTransaction, equals, getCategory, getCompletionTime, getDocument, getDocuments, getId, getOriginatingUsername, getPartitionKey, getProgress, 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, toString
public BatchProcessorWork(String repositoryName, List<String> docIds, String originatingUsername)
public int getRetryCount()
AbstractWork
getRetryCount
in class AbstractWork
AbstractWork.work()
public abstract int getBatchSize()
public void work()
Work
Work
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 Work
work
in class AbstractWork
Work.isSuspending()
,
Work.suspended()
,
Work.cleanUp(boolean, java.lang.Exception)
public abstract void processBatch(List<String> docIds)
Copyright © 2018 Nuxeo. All rights reserved.