@StartableByRPC @InitiatingFlow public class FinalityRecoveryFlow extends FlowLogic<T>
TWO_PHASE_FINALITY Recovery Flow This flow is exposed via the Core API for use by any CorDapp but its implementation is available in Enterprise only.
public FinalityRecoveryFlow(@NotNull java.util.Collection<? extends net.corda.core.crypto.SecureHash> txIds, @NotNull java.util.Collection<net.corda.core.flows.StateMachineRunId> flowIds, @Nullable FlowRecoveryQuery matchingCriteria, boolean forceRecover, boolean recoverAll, @NotNull java.util.Collection<net.corda.core.flows.StateMachineRunId> forceRecoverFlowIds, @NotNull ProgressTracker progressTracker)
TWO_PHASE_FINALITY Recovery Flow This flow is exposed via the Core API for use by any CorDapp but its implementation is available in Enterprise only.
progressTracker
- Override this to provide a class ProgressTracker
. If one is provided and stepped, the framework will do something
helpful with the progress reports e.g record to the audit service. If this flow is invoked as a subflow of another,
then the tracker will be made a child of the current step in the parent. If it's null, this flow doesn't track
progress.
Note that this has to return a tracker before the flow is invoked. You can't change your mind half way through.
public FinalityRecoveryFlow()
TWO_PHASE_FINALITY Recovery Flow This flow is exposed via the Core API for use by any CorDapp but its implementation is available in Enterprise only.
public FinalityRecoveryFlow(@NotNull SecureHash txId, boolean forceRecover)
public FinalityRecoveryFlow(@NotNull java.util.Collection<? extends net.corda.core.crypto.SecureHash> txIds, boolean forceRecover, boolean recoverAll)
public FinalityRecoveryFlow(@NotNull StateMachineRunId flowId, boolean forceRecover)
public FinalityRecoveryFlow(@NotNull java.util.Collection<net.corda.core.flows.StateMachineRunId> flowIds, boolean forceRecover)
public FinalityRecoveryFlow(boolean recoverAll, boolean forceRecover)
public FinalityRecoveryFlow(@NotNull FlowRecoveryQuery matchingCriteria, boolean forceRecover)
@CordaInternal @NotNull public net.corda.core.flows.FinalityRecoveryFlow.ExtraConstructorArgs getExtraConstructorArgs()
@Suspendable @NotNull public java.util.Map<net.corda.core.flows.FlowTransactionInfo,java.lang.Boolean> call()
This is where you fill out your business logic.
@NotNull public ProgressTracker getProgressTracker()
Override this to provide a class ProgressTracker
. If one is provided and stepped, the framework will do something
helpful with the progress reports e.g record to the audit service. If this flow is invoked as a subflow of another,
then the tracker will be made a child of the current step in the parent. If it's null, this flow doesn't track
progress.
Note that this has to return a tracker before the flow is invoked. You can't change your mind half way through.
class ProgressTracker