Artifact Content
Not logged in

Artifact 5612f46e0a0997cee764203dbefcec86e9a4df43:


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<diagram program="umlet" version="14.2">
  <zoom_level>10</zoom_level>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>220</x>
      <y>60</y>
      <w>140</w>
      <h>150</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
Prepare Transfer




</panel_attributes>
    <additional_attributes>10.0;130.0;10.0;10.0</additional_attributes>
  </element>
  <element>
    <id>UMLSpecialState</id>
    <coordinates>
      <x>220</x>
      <y>60</y>
      <w>20</w>
      <h>20</h>
    </coordinates>
    <panel_attributes>type=initial</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>UMLSpecialState</id>
    <coordinates>
      <x>220</x>
      <y>180</y>
      <w>40</w>
      <h>40</h>
    </coordinates>
    <panel_attributes>type=decision</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>250</x>
      <y>180</y>
      <w>240</w>
      <h>60</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
[transfer contains debits
that aren't set to
"authorized": true]</panel_attributes>
    <additional_attributes>220.0;20.0;10.0;20.0</additional_attributes>
  </element>
  <element>
    <id>UMLState</id>
    <coordinates>
      <x>470</x>
      <y>180</y>
      <w>100</w>
      <h>40</h>
    </coordinates>
    <panel_attributes>proposed</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>240</x>
      <y>110</y>
      <w>380</w>
      <h>110</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
Prepare Transfer
(by a different account)</panel_attributes>
    <additional_attributes>10.0;80.0;10.0;20.0;360.0;20.0;360.0;90.0;330.0;90.0</additional_attributes>
  </element>
  <element>
    <id>UMLState</id>
    <coordinates>
      <x>380</x>
      <y>360</y>
      <w>100</w>
      <h>40</h>
    </coordinates>
    <panel_attributes>prepared</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>230</x>
      <y>210</y>
      <w>210</w>
      <h>110</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
[all debits are authorized.]
Funds become held.</panel_attributes>
    <additional_attributes>10.0;90.0;10.0;10.0</additional_attributes>
  </element>
  <element>
    <id>UMLState</id>
    <coordinates>
      <x>100</x>
      <y>610</y>
      <w>100</w>
      <h>40</h>
    </coordinates>
    <panel_attributes>executed</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>UMLState</id>
    <coordinates>
      <x>420</x>
      <y>700</y>
      <w>100</w>
      <h>40</h>
    </coordinates>
    <panel_attributes>rejected</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>450</x>
      <y>380</y>
      <w>220</w>
      <h>260</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
Any credited account
calls Reject Transfer.</panel_attributes>
    <additional_attributes>10.0;240.0;10.0;190.0;200.0;190.0;200.0;10.0;30.0;10.0</additional_attributes>
  </element>
  <element>
    <id>UMLSpecialState</id>
    <coordinates>
      <x>220</x>
      <y>300</y>
      <w>40</w>
      <h>40</h>
    </coordinates>
    <panel_attributes>type=decision</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>120</x>
      <y>310</y>
      <w>200</w>
      <h>250</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
[no execution_condition]



</panel_attributes>
    <additional_attributes>10.0;230.0;10.0;10.0;100.0;10.0</additional_attributes>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>250</x>
      <y>310</y>
      <w>360</w>
      <h>70</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
[has execution_condition]

</panel_attributes>
    <additional_attributes>160.0;50.0;160.0;10.0;10.0;10.0</additional_attributes>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>140</x>
      <y>390</y>
      <w>280</w>
      <h>170</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
Submit Fulfillment
with fulfillment
matching the
execution_condition.</panel_attributes>
    <additional_attributes>10.0;150.0;10.0;100.0;260.0;100.0;260.0;10.0</additional_attributes>
  </element>
  <element>
    <id>UMLSpecialState</id>
    <coordinates>
      <x>130</x>
      <y>670</y>
      <w>20</w>
      <h>20</h>
    </coordinates>
    <panel_attributes>type=final</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>130</x>
      <y>640</y>
      <w>30</w>
      <h>50</h>
    </coordinates>
    <panel_attributes>lt=&lt;-</panel_attributes>
    <additional_attributes>10.0;30.0;10.0;10.0</additional_attributes>
  </element>
  <element>
    <id>UMLSpecialState</id>
    <coordinates>
      <x>450</x>
      <y>780</y>
      <w>20</w>
      <h>20</h>
    </coordinates>
    <panel_attributes>type=final</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>450</x>
      <y>730</y>
      <w>30</w>
      <h>70</h>
    </coordinates>
    <panel_attributes>lt=&lt;-</panel_attributes>
    <additional_attributes>10.0;50.0;10.0;10.0</additional_attributes>
  </element>
  <element>
    <id>UMLTimer</id>
    <coordinates>
      <x>780</x>
      <y>340</y>
      <w>120</w>
      <h>90</h>
    </coordinates>
    <panel_attributes>expires_at time
passes</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>440</x>
      <y>390</y>
      <w>190</w>
      <h>260</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
Submit Fulfillment
with fulfillment
matching the
cancellation_condition.




</panel_attributes>
    <additional_attributes>10.0;240.0;10.0;10.0</additional_attributes>
  </element>
  <element>
    <id>UMLSyncBarHorizontal</id>
    <coordinates>
      <x>700</x>
      <y>430</y>
      <w>80</w>
      <h>20</h>
    </coordinates>
    <panel_attributes>lw=5
</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>470</x>
      <y>350</y>
      <w>270</w>
      <h>110</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
[has expires_at]</panel_attributes>
    <additional_attributes>250.0;90.0;250.0;20.0;10.0;20.0;10.0;30.0</additional_attributes>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>740</x>
      <y>350</y>
      <w>100</w>
      <h>110</h>
    </coordinates>
    <panel_attributes>lt=&lt;-</panel_attributes>
    <additional_attributes>10.0;90.0;10.0;10.0;80.0;10.0</additional_attributes>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>460</x>
      <y>430</y>
      <w>300</w>
      <h>220</h>
    </coordinates>
    <panel_attributes>lt=&lt;-</panel_attributes>
    <additional_attributes>10.0;200.0;10.0;180.0;280.0;180.0;280.0;10.0</additional_attributes>
  </element>
  <element>
    <id>UMLSpecialState</id>
    <coordinates>
      <x>440</x>
      <y>620</y>
      <w>40</w>
      <h>40</h>
    </coordinates>
    <panel_attributes>type=decision</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>450</x>
      <y>650</y>
      <w>190</w>
      <h>70</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
Held funds are released
</panel_attributes>
    <additional_attributes>10.0;50.0;10.0;10.0</additional_attributes>
  </element>
  <element>
    <id>UMLSpecialState</id>
    <coordinates>
      <x>120</x>
      <y>530</y>
      <w>40</w>
      <h>40</h>
    </coordinates>
    <panel_attributes>type=decision</panel_attributes>
    <additional_attributes/>
  </element>
  <element>
    <id>Relation</id>
    <coordinates>
      <x>130</x>
      <y>560</y>
      <w>150</w>
      <h>70</h>
    </coordinates>
    <panel_attributes>lt=&lt;-
Transfer executes
</panel_attributes>
    <additional_attributes>10.0;50.0;10.0;10.0</additional_attributes>
  </element>
</diagram>