public abstract class BatchFinderWork extends AbstractWork
Work.Progress, Work.State
Modifier and Type | Field and Description |
---|---|
protected String |
nxql |
protected static int |
SCROLL_KEEPALIVE_SECONDS |
callerThread, completionTime, docId, docIds, id, isTree, loginContext, originatingUsername, progress, RANDOM, repositoryName, schedulePath, schedulingTime, session, startTime, state, status, suspended, suspending
Constructor and Description |
---|
BatchFinderWork(String repositoryName,
String nxql,
String originatingUsername) |
Modifier and Type | Method and Description |
---|---|
abstract Work |
getBatchProcessorWork(List<String> docIds) |
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.
|
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
protected static final int SCROLL_KEEPALIVE_SECONDS
public BatchFinderWork(String repositoryName, String nxql, 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 Work getBatchProcessorWork(List<String> docIds)
Copyright © 2018 Nuxeo. All rights reserved.