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