Class PausableFutureStepWork
- java.lang.Object
- 
- com.inductiveautomation.sfc.api.util.PausableFutureStepWork
 
- 
- All Implemented Interfaces:
- java.util.function.Consumer<StepController>
 
 public class PausableFutureStepWork extends java.lang.Object implements java.util.function.Consumer<StepController> A helper class to be used with StepContext.execute, takes a CompletableFuture, and will block step progression until the future has completed. However, the work can also be "paused", in which case the step is allowed to exit. This is commonly used for step pause, and then the same object is re-submitted to the StepContext upon resume.Additionally, a runnable can be passed in that will be called each time the work exits (on completion, and on pause). 
- 
- 
Constructor SummaryConstructors Constructor Description PausableFutureStepWork(java.util.concurrent.CompletableFuture<?> chartFuture)PausableFutureStepWork(java.util.concurrent.CompletableFuture<?> chartFuture, java.lang.Runnable exitTask)Blocks until the provided future is complete, unless paused.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(StepController controller)voidfinish()voidpause()
 
- 
- 
- 
Constructor Detail- 
PausableFutureStepWorkpublic PausableFutureStepWork(java.util.concurrent.CompletableFuture<?> chartFuture) 
 - 
PausableFutureStepWorkpublic PausableFutureStepWork(java.util.concurrent.CompletableFuture<?> chartFuture, java.lang.Runnable exitTask)Blocks until the provided future is complete, unless paused. If exitTask is not null, each time the work exits (pause or completion), the function will be called.
 
- 
 - 
Method Detail- 
finishpublic void finish() 
 - 
pausepublic void pause() 
 - 
acceptpublic void accept(StepController controller) - Specified by:
- acceptin interface- java.util.function.Consumer<StepController>
 
 
- 
 
-