Class VideoConversionWork
java.lang.Object
org.nuxeo.ecm.core.work.AbstractWork
org.nuxeo.ecm.platform.video.service.VideoConversionWork
- All Implemented Interfaces:
Serializable,Work
Work running a defined video conversion.
- Since:
- 5.6
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.nuxeo.ecm.core.work.api.Work
Work.Progress, Work.State -
Field Summary
FieldsFields 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
ConstructorsConstructorDescriptionVideoConversionWork(String repositoryName, String docId, String conversionName) -
Method Summary
Modifier and TypeMethodDescriptionprotected static StringcomputeIdPrefix(String repositoryName, String docId) booleanprotected voidFire aVIDEO_CONVERSIONS_DONE_EVENTevent when no other VideoConversionWork is scheduled for this document.Gets the category for this work.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.getTitle()Gets a human-readable name for this work instance.protected VideointhashCode()booleanWhen true the Work is part of a group, Works of the group have the sameWork.getPartitionKey().booleanReturns true if a work with a givenWork.getId()should always produce the same result.voidCalled whenWork.isGroupJoin()returns true and after the last Work of the group.protected voidprotected voidsaveNewTranscodedVideo(DocumentModel doc, TranscodedVideo transcodedVideo) 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, getCompletionTime, getDocument, getDocuments, getId, getOriginatingUsername, getProgress, getRetryCount, getSchedulePath, getSchedulingTime, getSpanFromContext, getStartTime, getStatus, getWorkInstanceState, isDocumentTree, isSuspending, isWorkInstanceSuspended, newDocumentLocation, openSystemSession, openUserSession, run, runWorkWithTransaction, setCompletionTime, setDocument, setDocument, setDocuments, setOriginatingUsername, setProgress, setSchedulePath, setStartTime, setStatus, setWorkInstanceState, setWorkInstanceSuspending, startTransaction, suspended, toString, workFailedMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.nuxeo.ecm.core.work.api.Work
isCoalescing
-
Field Details
-
CATEGORY_VIDEO_CONVERSION
- See Also:
-
VIDEO_CONVERSIONS_DONE_EVENT
- See Also:
-
conversionName
-
-
Constructor Details
-
VideoConversionWork
-
-
Method Details
-
computeIdPrefix
-
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
Description copied from interface:WorkGets a human-readable name for this work instance.- Returns:
- a human-readable name
-
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:
-
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
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. -
equals
- Overrides:
equalsin classAbstractWork
-
hashCode
public int hashCode()- Overrides:
hashCodein classAbstractWork
-
getVideoToConvert
-
resetTranscodedVideos
-
saveNewTranscodedVideo
-
fireVideoConversionsDoneEvent
protected void fireVideoConversionsDoneEvent()Fire aVIDEO_CONVERSIONS_DONE_EVENTevent when no other VideoConversionWork is scheduled for this document.- Since:
- 5.8
-