FlowProgressHandleImpl - corda

corda / net.corda.core.messaging / FlowProgressHandleImpl

# FlowProgressHandleImpl

`data class FlowProgressHandleImpl<A> : FlowProgressHandle<A>`

### Constructors

#### <init> | `FlowProgressHandleImpl(id: StateMachineRunId, returnValue: CordaFuture<A>, progress: Observable<String>, stepsTreeIndexFeed: DataFeed<Int, Int>? = null, stepsTreeFeed: DataFeed<List<Pair<Int, String>>, List<Pair<Int, String>>>? = null)`

### Properties

#### id | The started state machine's ID. `val id: StateMachineRunId`
#### progress | The stream of progress tracker events. `val progress: Observable<String>`
#### returnValue | A CordaFuture of the flow's return value. `val returnValue: CordaFuture<A>`
#### stepsTreeFeed | DataFeed of current steps tree, see ProgressTracker `val stepsTreeFeed: DataFeed<List<Pair<Int, String>>, List<Pair<Int, String>>>?`
#### stepsTreeIndexFeed | DataFeed of current step in the steps tree, see ProgressTracker `val stepsTreeIndexFeed: DataFeed<Int, Int>?`

### Functions

#### close | Use this function for flows whose returnValue and progress are not going to be used or tracked, so as to free up server resources. Note that it won't really close if one subscribes on progress Observable, but then forgets to unsubscribe. `fun close(): Unit`
#### copy | `fun copy(id: StateMachineRunId, returnValue: CordaFuture<A>, progress: Observable<String>): FlowProgressHandleImpl<A>`