net.corda.flows

## Class AbstractStateReplacementFlow

- net.corda.flows.AbstractStateReplacementFlow

- Direct Known Subclasses:
    NotaryChangeFlow

      public class AbstractStateReplacementFlow

  Abstract flow to be used for replacing one state with another, for example when changing the notary of a state. Notably this requires a one to one replacement of states, states cannot be split, merged or issued as part of these flows.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `AbstractStateReplacementFlow.Acceptor<T>`
    `static class` | `AbstractStateReplacementFlow.Instigator<S extends ContractState,T extends ContractState,M>` The `class AbstractStateReplacementFlow.Instigator` assembles the transaction for state replacement and sends out change proposals to all participants (`class AbstractStateReplacementFlow.Acceptor`) of that state. If participants agree to the proposed change, they each sign the transaction. Finally, `class AbstractStateReplacementFlow.Instigator` sends the transaction containing all participants' signatures to the notary for signature, and then back to each participant so they can record it and use the new updated state for future transactions.
    `static class` | `AbstractStateReplacementFlow.Proposal<M>` The `class AbstractStateReplacementFlow.Proposal` contains the details of proposed state modification. This is the message sent by the `class AbstractStateReplacementFlow.Instigator` to all participants(`class AbstractStateReplacementFlow.Acceptor`) during the state replacement process.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractStateReplacementFlow()` Abstract flow to be used for replacing one state with another, for example when changing the notary of a state. Notably this requires a one to one replacement of states, states cannot be split, merged or issued as part of these flows.

- - ### Constructor Detail

    - #### AbstractStateReplacementFlow

          public AbstractStateReplacementFlow()

      Abstract flow to be used for replacing one state with another, for example when changing the notary of a state. Notably this requires a one to one replacement of states, states cannot be split, merged or issued as part of these flows.