Package org.nuxeo.elasticsearch.work
Class BaseIndexingWorker
- java.lang.Object
-
- org.nuxeo.ecm.core.work.AbstractWork
-
- org.nuxeo.elasticsearch.work.BaseIndexingWorker
-
- All Implemented Interfaces:
Serializable,Work
- Direct Known Subclasses:
AbstractIndexingWorker,BucketIndexingWorker,ScrollingIndexingWorker
public abstract class BaseIndexingWorker extends AbstractWork
Abstract class for sharing the worker state- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.nuxeo.ecm.core.work.api.Work
Work.Progress, Work.State
-
-
Field Summary
-
Fields inherited from class org.nuxeo.ecm.core.work.AbstractWork
callerThread, completionTime, docId, docIds, FAILURE_EXCEPTION, FAILURE_MSG, GLOBAL_DLQ_COUNT_REGISTRY_NAME, id, isTree, loginContext, originatingUsername, progress, RANDOM, repositoryName, schedulePath, schedulingTime, session, startTime, state, status, suspended, suspending, traceContext, WORK_FAILED_EVENT, WORK_INSTANCE
-
-
Constructor Summary
Constructors Constructor Description BaseIndexingWorker()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voiddoWork()StringgetCategory()Gets the category for this work.intgetRetryCount()Gets the number of times that this Work instance can be retried in case of concurrent update exceptions.voidwork()This method should implement the actual work done by theWorkinstance.-
Methods inherited from class org.nuxeo.ecm.core.work.AbstractWork
appendWorkToDeadLetterQueue, buildWorkFailureEventProps, cleanUp, closeSession, commitOrRollbackTransaction, equals, getCompletionTime, getDocument, getDocuments, getId, getOriginatingUsername, getPartitionKey, getProgress, getSchedulePath, getSchedulingTime, getSpanFromContext, 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, workFailed
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.nuxeo.ecm.core.work.api.Work
getTitle, isCoalescing, isGroupJoin, isIdempotent, onGroupJoinCompletion
-
-
-
-
Method Detail
-
getCategory
public String getCategory()
Description copied from interface:WorkGets the category for this work.Used to choose an execution queue.
- Specified by:
getCategoryin interfaceWork- Overrides:
getCategoryin classAbstractWork- Returns:
- the category, or
nullfor the default
-
getRetryCount
public int getRetryCount()
Description copied from class:AbstractWorkGets the number of times that this Work instance can be retried in case of concurrent update exceptions.- Overrides:
getRetryCountin classAbstractWork- Returns:
- 0 for no retry, or more if some retries are possible
- See Also:
AbstractWork.work()
-
work
public void work()
Description copied from interface:WorkThis method should implement the actual work done by theWorkinstance.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 callWork.isSuspending(), and iftruecallWork.suspended()return early with saved state data.Clean up can by implemented by
Work.cleanUp(boolean, Exception).- Specified by:
workin interfaceWork- Specified by:
workin classAbstractWork- See Also:
Work.isSuspending(),Work.suspended(),Work.cleanUp(boolean, java.lang.Exception)
-
doWork
protected abstract void doWork()
-
-