Class ThreeDBatchUpdateWork
- java.lang.Object
-
- org.nuxeo.ecm.core.work.AbstractWork
-
- org.nuxeo.ecm.platform.threed.service.ThreeDBatchUpdateWork
-
- All Implemented Interfaces:
Serializable,Work
public class ThreeDBatchUpdateWork extends AbstractWork
Work running batch conversions to update 3D document type preview assets- Since:
- 8.4
- 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 Modifier and Type Field Description static StringCATEGORY_THREED_CONVERSIONprotected static StringSTATUS_DONEstatic StringTHREED_CONVERSIONS_DONE_EVENT-
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 ThreeDBatchUpdateWork(String repositoryName, String docId)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected static StringcomputeIdPrefix(String repositoryName, String docId)protected voidfireThreeDConversionsDoneEvent(DocumentModel doc)Fire aTHREED_CONVERSIONS_DONE_EVENTStringgetCategory()Gets the category for this work.StringgetPartitionKey()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.protected ThreeDgetThreeDToConvert(DocumentModel doc)StringgetTitle()Gets a human-readable name for this work instance.booleanisGroupJoin()When true the Work is part of a group, Works of the group have the sameWork.getPartitionKey().booleanisIdempotent()Returns true if a work with a givenWork.getId()should always produce the same result.voidonGroupJoinCompletion()Called whenWork.isGroupJoin()returns true and after the last Work of the group.protected voidsaveMainInfo(DocumentModel doc, ThreeDInfo info)protected voidsaveNewProperties(DocumentModel doc, Serializable properties, String schema)protected voidsaveNewRenderViews(DocumentModel doc, List<ThreeDRenderView> threeDRenderViews)protected voidsaveNewTransmissionThreeDs(DocumentModel doc, List<TransmissionThreeD> transmissionThreeDs)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, getProgress, getRetryCount, 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
isCoalescing
-
-
-
-
Field Detail
-
CATEGORY_THREED_CONVERSION
public static final String CATEGORY_THREED_CONVERSION
- See Also:
- Constant Field Values
-
THREED_CONVERSIONS_DONE_EVENT
public static final String THREED_CONVERSIONS_DONE_EVENT
- See Also:
- Constant Field Values
-
STATUS_DONE
protected static final String STATUS_DONE
- See Also:
- Constant Field Values
-
-
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
-
getTitle
public String getTitle()
Description copied from interface:WorkGets a human-readable name for this work instance.- Returns:
- a human-readable name
-
isIdempotent
public boolean isIdempotent()
Description copied from interface:WorkReturns true if a work with a givenWork.getId()should always produce the same result. The WorkManager implementation can safely skip duplicate executions of idempotent work.
-
isGroupJoin
public boolean isGroupJoin()
Description copied from interface:WorkWhen true the Work is part of a group, Works of the group have the sameWork.getPartitionKey(). When all Works of the group are done theWork.onGroupJoinCompletion()hook is called.
-
getPartitionKey
public String getPartitionKey()
Description copied from interface:WorkReturns 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.- Specified by:
getPartitionKeyin interfaceWork- Overrides:
getPartitionKeyin classAbstractWork
-
onGroupJoinCompletion
public void onGroupJoinCompletion()
Description copied from interface:WorkCalled whenWork.isGroupJoin()returns true and after the last Work of the group.
-
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)
-
getThreeDToConvert
protected ThreeD getThreeDToConvert(DocumentModel doc)
-
saveNewProperties
protected void saveNewProperties(DocumentModel doc, Serializable properties, String schema)
-
saveMainInfo
protected void saveMainInfo(DocumentModel doc, ThreeDInfo info)
-
saveNewTransmissionThreeDs
protected void saveNewTransmissionThreeDs(DocumentModel doc, List<TransmissionThreeD> transmissionThreeDs)
-
saveNewRenderViews
protected void saveNewRenderViews(DocumentModel doc, List<ThreeDRenderView> threeDRenderViews)
-
fireThreeDConversionsDoneEvent
protected void fireThreeDConversionsDoneEvent(DocumentModel doc)
Fire aTHREED_CONVERSIONS_DONE_EVENT
-
-