taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit 5d9ac101da6f747457522952533cf53e8bbf6ac1
parent 5b41c8882c6cc7a531566c4160165c497deef829
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sun, 12 Jul 2020 11:31:52 +0200

coin state machine

Diffstat:
Acoin.dot | 45+++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+), 0 deletions(-)

diff --git a/coin.dot b/coin.dot @@ -0,0 +1,45 @@ +digraph Coin { + + planchet [color=blue, shape="box"]; + fresh [color=blue, label="fresh coin", shape="box"]; + rs [color=blue, label="refresh session", shape="box"]; + partial [color=blue, label="dirty coin", shape="box"]; + revoked [color=blue, label="revoked coin", shape="box"]; + zombie [color=blue, label="zombie coin", shape="box"]; + spent [color=blue, label="spent coin", shape="doublecircle"]; + expired [color=blue, label="expired coin", shape="doublecircle"]; + + subgraph { + rank = same; spent; expired; + } + + subgraph { + withdraw; melt; + } + + subgraph { + rank = same; melt; reveal; rs; + } + + + planchet->withdraw; + planchet->melt; + withdraw->fresh; + fresh->deposit; + fresh->melt; + deposit->partial; + deposit->spent; + melt->rs; + rs->reveal; + reveal->fresh; + melt->partial; + melt->spent; + partial->melt; + partial->deposit [color=red]; + fresh->expired [style=dotted]; + fresh->revoked [style=dotted]; + revoked->recoup; + recoup->rs; + recoup->zombie; + zombie->melt; +}