github.com/Finschia/finschia-sdk@v0.48.1/docs/uml/puml/transaction_flow.puml (about)

     1  @startuml
     2  'https://plantuml.com/sequence-diagram
     3  
     4  actor User
     5  User -> baseApp : Transaction Type<Tx>
     6  baseApp -> router : Route(ctx, msgRoute)
     7  router --> baseApp : handler
     8  baseApp -> handler: Msg<Tx>(Context, Msg(...))
     9  handler -> msgServer : <Tx>(Context, Msg)
    10  alt addresses invalid, denominations wrong, etc.
    11  msgServer --> handler : error
    12  end
    13  msgServer -> keeper : perform action, update context
    14  keeper --> msgServer : results, error code
    15  msgServer -> Context.EventManager : Emit relevant events
    16  msgServer -> msgServer : maybe wrap results in more structure
    17  msgServer --> handler : result, error code
    18  baseApp <-- handler : results, error code
    19  
    20  @enduml