diff options
author | Christian Grothoff <christian@grothoff.org> | 2023-04-09 11:43:11 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2023-04-09 11:43:11 +0200 |
commit | eaa726572e42adc623190f4922d0bd0d6363b5b9 (patch) | |
tree | c7e5815274a305a1c58b02b4bb6c8e38f21d6e07 /transaction-refund-states.dot | |
parent | b617c6452ec92c06533e98a26b09c23165fbbf44 (diff) | |
download | docs-eaa726572e42adc623190f4922d0bd0d6363b5b9.tar.gz docs-eaa726572e42adc623190f4922d0bd0d6363b5b9.tar.bz2 docs-eaa726572e42adc623190f4922d0bd0d6363b5b9.zip |
more spec work on dd37
Diffstat (limited to 'transaction-refund-states.dot')
-rw-r--r-- | transaction-refund-states.dot | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/transaction-refund-states.dot b/transaction-refund-states.dot new file mode 100644 index 00000000..0becc9c3 --- /dev/null +++ b/transaction-refund-states.dot @@ -0,0 +1,51 @@ +digraph G { + + initial[label="", shape="circle"]; + pending_in[label="pending(lookup-refund)"]; + pending_ar[label="pending(user-accept)"]; + pending_me[label="pending(merchant)"]; + pending_re[label="pending(refresh)"]; + suspended_in[label="suspended(lookup-refund)"]; + suspended_me[label="suspended(merchant)"]; + suspended_re[label="suspended(refresh)"]; + done[label="done", shape="box"]; + deleted[label="deleted", shape="box"]; + failed[label="failed", shape="box"]; + + subgraph { + rank = same; pending_in; pending_ar; pending_me; pending_re; + } + subgraph { + rank = same; suspended_in; suspended_me; suspended_re; done; + } + + initial->pending_in [color="blue", label="URI trigger"]; + + pending_in->pending_ar; + pending_in->suspended_in [color="blue", label="suspend"]; + + suspended_in->pending_in [color="blue", label="resume"]; + suspended_in->deleted [color="blue", label="delete"]; + + pending_ar->pending_me [color="blue", label="accept"]; + pending_ar->deleted [color="blue", label="delete"]; + + pending_me->pending_re; + pending_me->suspended_me [color="blue", label="suspend"]; + pending_me->failed [color="red", label="failure"]; + + suspended_me->pending_me [color="blue", label="resume"]; + suspended_me->deleted [color="blue", label="delete"]; + + pending_re->suspended_re [color="blue", label="suspend"]; + pending_re->done; + pending_re->failed [color="red", label="failure"]; + + suspended_re->pending_re [color="blue", label="resume"]; + suspended_re->deleted [color="blue", label="delete"]; + + done->deleted [color="blue", label="delete"]; + + failed->deleted [color="blue", label="delete"]; + +} |