You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by jr...@apache.org on 2018/08/15 12:42:59 UTC
[1/2] qpid-site git commit: Publish the updated type reference
Repository: qpid-site
Updated Branches:
refs/heads/asf-site cc6f81e8f -> f16e5b79f
http://git-wip-us.apache.org/repos/asf/qpid-site/blob/f16e5b79/content/amqp/type-reference.html
----------------------------------------------------------------------
diff --git a/content/amqp/type-reference.html b/content/amqp/type-reference.html
index 4a21be5..32328a8 100644
--- a/content/amqp/type-reference.html
+++ b/content/amqp/type-reference.html
@@ -177,10 +177,16 @@ function show_all_tables()
{
show_node('Constants');
show_node('PrimTypeName');
+ show_node('PrimTypeCode');
show_node('DescrTypes');
show_node('EnumTypes');
show_node('RestrTypes');
show_node('ProvTypes');
+ show_node('TypesDiag');
+ show_node('TransportDiag');
+ show_node('MessagingDiag');
+ show_node('TransactionsDiag');
+ show_node('SecurityDiag');
show_node('TypIndex');
show_node('FldIndex');
show_node('EnuIndex');
@@ -245,10 +251,16 @@ function hide_all_tables()
{
hide_node('Constants');
hide_node('PrimTypeName');
+ hide_node('PrimTypeCode');
hide_node('DescrTypes');
hide_node('EnumTypes');
hide_node('RestrTypes');
hide_node('ProvTypes');
+ hide_node('TypesDiag');
+ hide_node('TransportDiag');
+ hide_node('MessagingDiag');
+ hide_node('TransactionsDiag');
+ hide_node('SecurityDiag');
hide_node('TypIndex');
hide_node('FldIndex');
hide_node('EnuIndex');
@@ -317,6 +329,7 @@ function hide_all_tables()
  <a href="#RestrictedTypes">Restricted Types</a><br/>
  <a href="#DescribedTypes">Described Types</a><br/>
  <a href="#ProvidedTypes">Provided Types</a><br/>
+<a href="#Diagrams">Diagrams</a><br>
<a href="#Indices">Indices</a><br/>
  <a href="#TypeIndex">Types</a><br/>
  <a href="#FieldIndex">Fields</a><br/>
@@ -331,7 +344,7 @@ function hide_all_tables()
<a id="ConstantTypes"></a>
<h2>Constants</h2>
<a href="javascript:toggle_node('Constants')"> ◊ </a> Constants<br/>
-<div style="display:none; margin-bottom: 2px" id="Constants">
+<div style="display: block; margin-bottom: 2px" id="Constants">
<table>
<tr>
<th>Section</th>
@@ -425,7 +438,7 @@ function hide_all_tables()
<a id="PrimitiveTypes"></a>
<h3>Primitive Types</h3>
<a href="javascript:toggle_node('PrimTypeName')"> ◊ </a> by Name<br/>
-<div style="display:none; margin-bottom: 2px" id="PrimTypeName">
+<div style="display: block; margin-bottom: 2px" id="PrimTypeName">
<table>
<tr>
<th>Section</th>
@@ -951,7 +964,7 @@ function hide_all_tables()
</div>
<br/>
<a href="javascript:toggle_node('PrimTypeCode')"> ◊ </a> by Code<br/>
-<div style="display:none; margin-bottom: 2px" id="PrimTypeCode">
+<div style="display: block; margin-bottom: 2px" id="PrimTypeCode">
<table>
<tr>
<th>Section</th>
@@ -1279,7 +1292,7 @@ function hide_all_tables()
<a id="EnumeratedTypes"></a>
<h3>Enumerated Types</h3>
<a href="javascript:toggle_node('EnumTypes')"> ◊ </a> Enumerated Types<br/>
-<div style="display: none; margin-bottom: 2px" id="EnumTypes">
+<div style="display: block; margin-bottom: 2px" id="EnumTypes">
<table>
<tr>
<th>Section</th>
@@ -1383,7 +1396,7 @@ function hide_all_tables()
<br/>
<a id="details_std-dist-mode"></a>
  <a href="javascript:toggle_node('ETstd-dist-mode')"> ◊ </a>  Enumerated type: messaging:addressing - <strong><a href="#TYPE_std-dist-mode">std-dist-mode</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETstd-dist-mode">
+<div style="display: block; margin-bottom: 2px" id="ETstd-dist-mode">
<table>
<tr>
<th>Name</th>
@@ -1410,7 +1423,7 @@ function hide_all_tables()
</div>
<a id="details_terminus-durability"></a>
  <a href="javascript:toggle_node('ETterminus-durability')"> ◊ </a>  Enumerated type: messaging:addressing - <strong><a href="#TYPE_terminus-durability">terminus-durability</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETterminus-durability">
+<div style="display: block; margin-bottom: 2px" id="ETterminus-durability">
<table>
<tr>
<th>Name</th>
@@ -1441,7 +1454,7 @@ function hide_all_tables()
</div>
<a id="details_terminus-expiry-policy"></a>
  <a href="javascript:toggle_node('ETterminus-expiry-policy')"> ◊ </a>  Enumerated type: messaging:addressing - <strong><a href="#TYPE_terminus-expiry-policy">terminus-expiry-policy</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETterminus-expiry-policy">
+<div style="display: block; margin-bottom: 2px" id="ETterminus-expiry-policy">
<table>
<tr>
<th>Name</th>
@@ -1476,7 +1489,7 @@ function hide_all_tables()
</div>
<a id="details_sasl-code"></a>
  <a href="javascript:toggle_node('ETsasl-code')"> ◊ </a>  Enumerated type: security:sasl - <strong><a href="#TYPE_sasl-code">sasl-code</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETsasl-code">
+<div style="display: block; margin-bottom: 2px" id="ETsasl-code">
<table>
<tr>
<th>Name</th>
@@ -1515,7 +1528,7 @@ function hide_all_tables()
</div>
<a id="details_transaction-error"></a>
  <a href="javascript:toggle_node('ETtransaction-error')"> ◊ </a>  Enumerated type: transactions:coordination - <strong><a href="#TYPE_transaction-error">transaction-error</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETtransaction-error">
+<div style="display: block; margin-bottom: 2px" id="ETtransaction-error">
<table>
<tr>
<th>Name</th>
@@ -1546,7 +1559,7 @@ function hide_all_tables()
</div>
<a id="details_txn-capability"></a>
  <a href="javascript:toggle_node('ETtxn-capability')"> ◊ </a>  Enumerated type: transactions:coordination - <strong><a href="#TYPE_txn-capability">txn-capability</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETtxn-capability">
+<div style="display: block; margin-bottom: 2px" id="ETtxn-capability">
<table>
<tr>
<th>Name</th>
@@ -1585,7 +1598,7 @@ function hide_all_tables()
</div>
<a id="details_amqp-error"></a>
  <a href="javascript:toggle_node('ETamqp-error')"> ◊ </a>  Enumerated type: transport:definitions - <strong><a href="#TYPE_amqp-error">amqp-error</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETamqp-error">
+<div style="display: block; margin-bottom: 2px" id="ETamqp-error">
<table>
<tr>
<th>Name</th>
@@ -1656,7 +1669,7 @@ function hide_all_tables()
</div>
<a id="details_connection-error"></a>
  <a href="javascript:toggle_node('ETconnection-error')"> ◊ </a>  Enumerated type: transport:definitions - <strong><a href="#TYPE_connection-error">connection-error</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETconnection-error">
+<div style="display: block; margin-bottom: 2px" id="ETconnection-error">
<table>
<tr>
<th>Name</th>
@@ -1687,7 +1700,7 @@ function hide_all_tables()
</div>
<a id="details_link-error"></a>
  <a href="javascript:toggle_node('ETlink-error')"> ◊ </a>  Enumerated type: transport:definitions - <strong><a href="#TYPE_link-error">link-error</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETlink-error">
+<div style="display: block; margin-bottom: 2px" id="ETlink-error">
<table>
<tr>
<th>Name</th>
@@ -1726,7 +1739,7 @@ function hide_all_tables()
</div>
<a id="details_receiver-settle-mode"></a>
  <a href="javascript:toggle_node('ETreceiver-settle-mode')"> ◊ </a>  Enumerated type: transport:definitions - <strong><a href="#TYPE_receiver-settle-mode">receiver-settle-mode</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETreceiver-settle-mode">
+<div style="display: block; margin-bottom: 2px" id="ETreceiver-settle-mode">
<table>
<tr>
<th>Name</th>
@@ -1753,7 +1766,7 @@ function hide_all_tables()
</div>
<a id="details_role"></a>
  <a href="javascript:toggle_node('ETrole')"> ◊ </a>  Enumerated type: transport:definitions - <strong><a href="#TYPE_role">role</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETrole">
+<div style="display: block; margin-bottom: 2px" id="ETrole">
<table>
<tr>
<th>Name</th>
@@ -1780,7 +1793,7 @@ function hide_all_tables()
</div>
<a id="details_sender-settle-mode"></a>
  <a href="javascript:toggle_node('ETsender-settle-mode')"> ◊ </a>  Enumerated type: transport:definitions - <strong><a href="#TYPE_sender-settle-mode">sender-settle-mode</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETsender-settle-mode">
+<div style="display: block; margin-bottom: 2px" id="ETsender-settle-mode">
<table>
<tr>
<th>Name</th>
@@ -1811,7 +1824,7 @@ function hide_all_tables()
</div>
<a id="details_session-error"></a>
  <a href="javascript:toggle_node('ETsession-error')"> ◊ </a>  Enumerated type: transport:definitions - <strong><a href="#TYPE_session-error">session-error</a></strong><br/>
-<div style="display:none; margin-bottom: 2px" id="ETsession-error">
+<div style="display: block; margin-bottom: 2px" id="ETsession-error">
<table>
<tr>
<th>Name</th>
@@ -1849,7 +1862,7 @@ function hide_all_tables()
<a id="RestrictedTypes"></a>
<h3>Restricted Types</h3>
<a href="javascript:toggle_node('RestrTypes')"> ◊ </a> Restricted Types<br/>
-<div style="display: none; margin-bottom: 2px" id="RestrTypes">
+<div style="display: block; margin-bottom: 2px" id="RestrTypes">
<table>
<tr>
<th>Section</th>
@@ -2004,7 +2017,7 @@ function hide_all_tables()
<a id="DescribedTypes"></a>
<h3>Described Types</h3>
<a href="javascript:toggle_node('DescrTypes')"> ◊ </a> Described Types<br/>
-<div style="display:none; margin-bottom: 2px" id="DescrTypes">
+<div style="display: block; margin-bottom: 2px" id="DescrTypes">
<table>
<tr>
<th>Section</th>
@@ -2338,7 +2351,7 @@ function hide_all_tables()
<br/>
<a id="details_open"></a>
  <a href="javascript:toggle_node('DTopen')"> ◊ </a>  Described type: transport:performatives - <strong><a href="#TYPE_open">open</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTopen">
+<div style="display: block; margin-bottom: 2px" id="DTopen">
<table>
<tr>
<th>Tag</th>
@@ -2465,7 +2478,7 @@ function hide_all_tables()
</div>
<a id="details_begin"></a>
  <a href="javascript:toggle_node('DTbegin')"> ◊ </a>  Described type: transport:performatives - <strong><a href="#TYPE_begin">begin</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTbegin">
+<div style="display: block; margin-bottom: 2px" id="DTbegin">
<table>
<tr>
<th>Tag</th>
@@ -2572,7 +2585,7 @@ function hide_all_tables()
</div>
<a id="details_attach"></a>
  <a href="javascript:toggle_node('DTattach')"> ◊ </a>  Described type: transport:performatives - <strong><a href="#TYPE_attach">attach</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTattach">
+<div style="display: block; margin-bottom: 2px" id="DTattach">
<table>
<tr>
<th>Tag</th>
@@ -2739,7 +2752,7 @@ function hide_all_tables()
</div>
<a id="details_flow"></a>
  <a href="javascript:toggle_node('DTflow')"> ◊ </a>  Described type: transport:performatives - <strong><a href="#TYPE_flow">flow</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTflow">
+<div style="display: block; margin-bottom: 2px" id="DTflow">
<table>
<tr>
<th>Tag</th>
@@ -2876,7 +2889,7 @@ function hide_all_tables()
</div>
<a id="details_transfer"></a>
  <a href="javascript:toggle_node('DTtransfer')"> ◊ </a>  Described type: transport:performatives - <strong><a href="#TYPE_transfer">transfer</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTtransfer">
+<div style="display: block; margin-bottom: 2px" id="DTtransfer">
<table>
<tr>
<th>Tag</th>
@@ -3013,7 +3026,7 @@ function hide_all_tables()
</div>
<a id="details_disposition"></a>
  <a href="javascript:toggle_node('DTdisposition')"> ◊ </a>  Described type: transport:performatives - <strong><a href="#TYPE_disposition">disposition</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdisposition">
+<div style="display: block; margin-bottom: 2px" id="DTdisposition">
<table>
<tr>
<th>Tag</th>
@@ -3100,7 +3113,7 @@ function hide_all_tables()
</div>
<a id="details_detach"></a>
  <a href="javascript:toggle_node('DTdetach')"> ◊ </a>  Described type: transport:performatives - <strong><a href="#TYPE_detach">detach</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdetach">
+<div style="display: block; margin-bottom: 2px" id="DTdetach">
<table>
<tr>
<th>Tag</th>
@@ -3157,7 +3170,7 @@ function hide_all_tables()
</div>
<a id="details_end"></a>
  <a href="javascript:toggle_node('DTend')"> ◊ </a>  Described type: transport:performatives - <strong><a href="#TYPE_end">end</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTend">
+<div style="display: block; margin-bottom: 2px" id="DTend">
<table>
<tr>
<th>Tag</th>
@@ -3194,7 +3207,7 @@ function hide_all_tables()
</div>
<a id="details_close"></a>
  <a href="javascript:toggle_node('DTclose')"> ◊ </a>  Described type: transport:performatives - <strong><a href="#TYPE_close">close</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTclose">
+<div style="display: block; margin-bottom: 2px" id="DTclose">
<table>
<tr>
<th>Tag</th>
@@ -3231,7 +3244,7 @@ function hide_all_tables()
</div>
<a id="details_error"></a>
  <a href="javascript:toggle_node('DTerror')"> ◊ </a>  Described type: transport:definitions - <strong><a href="#TYPE_error">error</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTerror">
+<div style="display: block; margin-bottom: 2px" id="DTerror">
<table>
<tr>
<th>Tag</th>
@@ -3288,7 +3301,7 @@ function hide_all_tables()
</div>
<a id="details_received"></a>
  <a href="javascript:toggle_node('DTreceived')"> ◊ </a>  Described type: messaging:delivery-state - <strong><a href="#TYPE_received">received</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTreceived">
+<div style="display: block; margin-bottom: 2px" id="DTreceived">
<table>
<tr>
<th>Tag</th>
@@ -3335,7 +3348,7 @@ function hide_all_tables()
</div>
<a id="details_accepted"></a>
  <a href="javascript:toggle_node('DTaccepted')"> ◊ </a>  Described type: messaging:delivery-state - <strong><a href="#TYPE_accepted">accepted</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTaccepted">
+<div style="display: block; margin-bottom: 2px" id="DTaccepted">
<table>
<tr>
<th>Tag</th>
@@ -3362,7 +3375,7 @@ function hide_all_tables()
</div>
<a id="details_rejected"></a>
  <a href="javascript:toggle_node('DTrejected')"> ◊ </a>  Described type: messaging:delivery-state - <strong><a href="#TYPE_rejected">rejected</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTrejected">
+<div style="display: block; margin-bottom: 2px" id="DTrejected">
<table>
<tr>
<th>Tag</th>
@@ -3399,7 +3412,7 @@ function hide_all_tables()
</div>
<a id="details_released"></a>
  <a href="javascript:toggle_node('DTreleased')"> ◊ </a>  Described type: messaging:delivery-state - <strong><a href="#TYPE_released">released</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTreleased">
+<div style="display: block; margin-bottom: 2px" id="DTreleased">
<table>
<tr>
<th>Tag</th>
@@ -3426,7 +3439,7 @@ function hide_all_tables()
</div>
<a id="details_modified"></a>
  <a href="javascript:toggle_node('DTmodified')"> ◊ </a>  Described type: messaging:delivery-state - <strong><a href="#TYPE_modified">modified</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTmodified">
+<div style="display: block; margin-bottom: 2px" id="DTmodified">
<table>
<tr>
<th>Tag</th>
@@ -3483,7 +3496,7 @@ function hide_all_tables()
</div>
<a id="details_source"></a>
  <a href="javascript:toggle_node('DTsource')"> ◊ </a>  Described type: messaging:addressing - <strong><a href="#TYPE_source">source</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTsource">
+<div style="display: block; margin-bottom: 2px" id="DTsource">
<table>
<tr>
<th>Tag</th>
@@ -3620,7 +3633,7 @@ function hide_all_tables()
</div>
<a id="details_target"></a>
  <a href="javascript:toggle_node('DTtarget')"> ◊ </a>  Described type: messaging:addressing - <strong><a href="#TYPE_target">target</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTtarget">
+<div style="display: block; margin-bottom: 2px" id="DTtarget">
<table>
<tr>
<th>Tag</th>
@@ -3717,7 +3730,7 @@ function hide_all_tables()
</div>
<a id="details_delete-on-close"></a>
  <a href="javascript:toggle_node('DTdelete-on-close')"> ◊ </a>  Described type: messaging:addressing - <strong><a href="#TYPE_delete-on-close">delete-on-close</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdelete-on-close">
+<div style="display: block; margin-bottom: 2px" id="DTdelete-on-close">
<table>
<tr>
<th>Tag</th>
@@ -3744,7 +3757,7 @@ function hide_all_tables()
</div>
<a id="details_delete-on-no-links"></a>
  <a href="javascript:toggle_node('DTdelete-on-no-links')"> ◊ </a>  Described type: messaging:addressing - <strong><a href="#TYPE_delete-on-no-links">delete-on-no-links</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdelete-on-no-links">
+<div style="display: block; margin-bottom: 2px" id="DTdelete-on-no-links">
<table>
<tr>
<th>Tag</th>
@@ -3771,7 +3784,7 @@ function hide_all_tables()
</div>
<a id="details_delete-on-no-messages"></a>
  <a href="javascript:toggle_node('DTdelete-on-no-messages')"> ◊ </a>  Described type: messaging:addressing - <strong><a href="#TYPE_delete-on-no-messages">delete-on-no-messages</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdelete-on-no-messages">
+<div style="display: block; margin-bottom: 2px" id="DTdelete-on-no-messages">
<table>
<tr>
<th>Tag</th>
@@ -3798,7 +3811,7 @@ function hide_all_tables()
</div>
<a id="details_delete-on-no-links-or-messages"></a>
  <a href="javascript:toggle_node('DTdelete-on-no-links-or-messages')"> ◊ </a>  Described type: messaging:addressing - <strong><a href="#TYPE_delete-on-no-links-or-messages">delete-on-no-links-or-messages</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdelete-on-no-links-or-messages">
+<div style="display: block; margin-bottom: 2px" id="DTdelete-on-no-links-or-messages">
<table>
<tr>
<th>Tag</th>
@@ -3825,7 +3838,7 @@ function hide_all_tables()
</div>
<a id="details_coordinator"></a>
  <a href="javascript:toggle_node('DTcoordinator')"> ◊ </a>  Described type: transactions:coordination - <strong><a href="#TYPE_coordinator">coordinator</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTcoordinator">
+<div style="display: block; margin-bottom: 2px" id="DTcoordinator">
<table>
<tr>
<th>Tag</th>
@@ -3862,7 +3875,7 @@ function hide_all_tables()
</div>
<a id="details_declare"></a>
  <a href="javascript:toggle_node('DTdeclare')"> ◊ </a>  Described type: transactions:coordination - <strong><a href="#TYPE_declare">declare</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdeclare">
+<div style="display: block; margin-bottom: 2px" id="DTdeclare">
<table>
<tr>
<th>Tag</th>
@@ -3899,7 +3912,7 @@ function hide_all_tables()
</div>
<a id="details_discharge"></a>
  <a href="javascript:toggle_node('DTdischarge')"> ◊ </a>  Described type: transactions:coordination - <strong><a href="#TYPE_discharge">discharge</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdischarge">
+<div style="display: block; margin-bottom: 2px" id="DTdischarge">
<table>
<tr>
<th>Tag</th>
@@ -3946,7 +3959,7 @@ function hide_all_tables()
</div>
<a id="details_declared"></a>
  <a href="javascript:toggle_node('DTdeclared')"> ◊ </a>  Described type: transactions:coordination - <strong><a href="#TYPE_declared">declared</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdeclared">
+<div style="display: block; margin-bottom: 2px" id="DTdeclared">
<table>
<tr>
<th>Tag</th>
@@ -3983,7 +3996,7 @@ function hide_all_tables()
</div>
<a id="details_transactional-state"></a>
  <a href="javascript:toggle_node('DTtransactional-state')"> ◊ </a>  Described type: transactions:coordination - <strong><a href="#TYPE_transactional-state">transactional-state</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTtransactional-state">
+<div style="display: block; margin-bottom: 2px" id="DTtransactional-state">
<table>
<tr>
<th>Tag</th>
@@ -4030,7 +4043,7 @@ function hide_all_tables()
</div>
<a id="details_sasl-mechanisms"></a>
  <a href="javascript:toggle_node('DTsasl-mechanisms')"> ◊ </a>  Described type: security:sasl - <strong><a href="#TYPE_sasl-mechanisms">sasl-mechanisms</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTsasl-mechanisms">
+<div style="display: block; margin-bottom: 2px" id="DTsasl-mechanisms">
<table>
<tr>
<th>Tag</th>
@@ -4067,7 +4080,7 @@ function hide_all_tables()
</div>
<a id="details_sasl-init"></a>
  <a href="javascript:toggle_node('DTsasl-init')"> ◊ </a>  Described type: security:sasl - <strong><a href="#TYPE_sasl-init">sasl-init</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTsasl-init">
+<div style="display: block; margin-bottom: 2px" id="DTsasl-init">
<table>
<tr>
<th>Tag</th>
@@ -4124,7 +4137,7 @@ function hide_all_tables()
</div>
<a id="details_sasl-challenge"></a>
  <a href="javascript:toggle_node('DTsasl-challenge')"> ◊ </a>  Described type: security:sasl - <strong><a href="#TYPE_sasl-challenge">sasl-challenge</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTsasl-challenge">
+<div style="display: block; margin-bottom: 2px" id="DTsasl-challenge">
<table>
<tr>
<th>Tag</th>
@@ -4161,7 +4174,7 @@ function hide_all_tables()
</div>
<a id="details_sasl-response"></a>
  <a href="javascript:toggle_node('DTsasl-response')"> ◊ </a>  Described type: security:sasl - <strong><a href="#TYPE_sasl-response">sasl-response</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTsasl-response">
+<div style="display: block; margin-bottom: 2px" id="DTsasl-response">
<table>
<tr>
<th>Tag</th>
@@ -4198,7 +4211,7 @@ function hide_all_tables()
</div>
<a id="details_sasl-outcome"></a>
  <a href="javascript:toggle_node('DTsasl-outcome')"> ◊ </a>  Described type: security:sasl - <strong><a href="#TYPE_sasl-outcome">sasl-outcome</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTsasl-outcome">
+<div style="display: block; margin-bottom: 2px" id="DTsasl-outcome">
<table>
<tr>
<th>Tag</th>
@@ -4245,7 +4258,7 @@ function hide_all_tables()
</div>
<a id="details_header"></a>
  <a href="javascript:toggle_node('DTheader')"> ◊ </a>  Described type: messaging:message-format - <strong><a href="#TYPE_header">header</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTheader">
+<div style="display: block; margin-bottom: 2px" id="DTheader">
<table>
<tr>
<th>Tag</th>
@@ -4322,7 +4335,7 @@ function hide_all_tables()
</div>
<a id="details_delivery-annotations"></a>
  <a href="javascript:toggle_node('DTdelivery-annotations')"> ◊ </a>  Described type: messaging:message-format - <strong><a href="#TYPE_delivery-annotations">delivery-annotations</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdelivery-annotations">
+<div style="display: block; margin-bottom: 2px" id="DTdelivery-annotations">
<table>
<tr>
<th>Tag</th>
@@ -4349,7 +4362,7 @@ function hide_all_tables()
</div>
<a id="details_message-annotations"></a>
  <a href="javascript:toggle_node('DTmessage-annotations')"> ◊ </a>  Described type: messaging:message-format - <strong><a href="#TYPE_message-annotations">message-annotations</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTmessage-annotations">
+<div style="display: block; margin-bottom: 2px" id="DTmessage-annotations">
<table>
<tr>
<th>Tag</th>
@@ -4376,7 +4389,7 @@ function hide_all_tables()
</div>
<a id="details_properties"></a>
  <a href="javascript:toggle_node('DTproperties')"> ◊ </a>  Described type: messaging:message-format - <strong><a href="#TYPE_properties">properties</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTproperties">
+<div style="display: block; margin-bottom: 2px" id="DTproperties">
<table>
<tr>
<th>Tag</th>
@@ -4533,7 +4546,7 @@ function hide_all_tables()
</div>
<a id="details_application-properties"></a>
  <a href="javascript:toggle_node('DTapplication-properties')"> ◊ </a>  Described type: messaging:message-format - <strong><a href="#TYPE_application-properties">application-properties</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTapplication-properties">
+<div style="display: block; margin-bottom: 2px" id="DTapplication-properties">
<table>
<tr>
<th>Tag</th>
@@ -4560,7 +4573,7 @@ function hide_all_tables()
</div>
<a id="details_data"></a>
  <a href="javascript:toggle_node('DTdata')"> ◊ </a>  Described type: messaging:message-format - <strong><a href="#TYPE_data">data</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTdata">
+<div style="display: block; margin-bottom: 2px" id="DTdata">
<table>
<tr>
<th>Tag</th>
@@ -4587,7 +4600,7 @@ function hide_all_tables()
</div>
<a id="details_amqp-sequence"></a>
  <a href="javascript:toggle_node('DTamqp-sequence')"> ◊ </a>  Described type: messaging:message-format - <strong><a href="#TYPE_amqp-sequence">amqp-sequence</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTamqp-sequence">
+<div style="display: block; margin-bottom: 2px" id="DTamqp-sequence">
<table>
<tr>
<th>Tag</th>
@@ -4614,7 +4627,7 @@ function hide_all_tables()
</div>
<a id="details_amqp-value"></a>
  <a href="javascript:toggle_node('DTamqp-value')"> ◊ </a>  Described type: messaging:message-format - <strong><a href="#TYPE_amqp-value">amqp-value</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTamqp-value">
+<div style="display: block; margin-bottom: 2px" id="DTamqp-value">
<table>
<tr>
<th>Tag</th>
@@ -4641,7 +4654,7 @@ function hide_all_tables()
</div>
<a id="details_footer"></a>
  <a href="javascript:toggle_node('DTfooter')"> ◊ </a>  Described type: messaging:message-format - <strong><a href="#TYPE_footer">footer</a></strong><br/>
-<div style="display: none; margin-bottom: 2px" id="DTfooter">
+<div style="display: block; margin-bottom: 2px" id="DTfooter">
<table>
<tr>
<th>Tag</th>
@@ -4671,7 +4684,7 @@ function hide_all_tables()
<a id="ProvidedTypes"></a>
<h3>Provided Types</h3>
<a href="javascript:toggle_node('ProvTypes')"> ◊ </a> Provided Types<br/>
-<div style="display: none; margin-bottom: 2px" id="ProvTypes">
+<div style="display: block; margin-bottom: 2px" id="ProvTypes">
<table>
<tr>
<th>Provided Type</th>
@@ -4956,12 +4969,1916 @@ function hide_all_tables()
</table>
</div>
<br/>
+<a id="Diagrams"></a>
+<h2>Diagrams</h2>
+These diagrams may not make sense when taken out of the context of the
+<a href="http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-overview-v1.0-os.html">
+AMQP 1.0 Specification</a>. Please refer to the spec to get the complete narrative.<br>
+<a name="TypesDiagrams"</a><br>
+<a href="javascript:toggle_node('TypesDiag')"> ◊ </a> Types Diagrams<br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag">
+<a href="javascript:toggle_node('TypesDiag0')"> ◊ </a> <strong>Types : Type Encodings :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag0">
+<pre>
+ constructor untyped bytes
+ | |
+ +--+ +-----------------+-----------------+
+ | | | |
+ ... 0xA1 0x1E "Hello Glorious Messaging World" ...
+ | | | | |
+ | | | utf8 bytes |
+ | | | |
+ | | # of data octets |
+ | | |
+ | +-----------------+-----------------+
+ | |
+ | string value encoded according
+ | to the str8-utf8 encoding
+ |
+ primitive format code
+for the str8-utf8 encoding
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag1')"> ◊ </a> <strong>Types : Type Encodings :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag1">
+<pre>
+ constructor untyped bytes
+ | |
+ +-----------+-----------+ +-----------------+-----------------+
+ | | | |
+... 0x00 0xA1 0x03 "URL" 0xA1 0x1E "http://example.org/hello-world" ...
+ | | | | |
+ +------+------+ | | |
+ | | | |
+ descriptor | +------------------+----------------+
+ | |
+ | string value encoded according
+ | to the str8-utf8 encoding
+ |
+ primitive format code
+ for the str8-utf8 encoding
+
+ (Note: this example shows a string-typed descriptor, which should be
+ considered reserved)
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag2')"> ◊ </a> <strong>Types : Type Encodings :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag2">
+<pre>
+ constructor = format-code
+ / %x00 descriptor constructor
+
+ format-code = fixed / variable / compound / array
+ fixed = empty / fixed-one / fixed-two / fixed-four
+ / fixed-eight / fixed-sixteen
+ variable = variable-one / variable-four
+ compound = compound-one / compound-four
+ array = array-one / array-four
+
+ descriptor = value
+ value = constructor untyped-bytes
+untyped-bytes = *OCTET ; this is not actually *OCTET, the
+ ; valid byte sequences are restricted
+ ; by the constructor
+
+; fixed width format codes
+ empty = %x40-4E / %x4F %x00-FF
+ fixed-one = %x50-5E / %x5F %x00-FF
+ fixed-two = %x60-6E / %x6F %x00-FF
+ fixed-four = %x70-7E / %x7F %x00-FF
+ fixed-eight = %x80-8E / %x8F %x00-FF
+fixed-sixteen = %x90-9E / %x9F %x00-FF
+
+; variable width format codes
+ variable-one = %xA0-AE / %xAF %x00-FF
+variable-four = %xB0-BE / %xBF %x00-FF
+
+; compound format codes
+ compound-one = %xC0-CE / %xCF %x00-FF
+compound-four = %xD0-DE / %xDF %x00-FF
+
+; array format codes
+ array-one = %xE0-EE / %xEF %x00-FF
+ array-four = %xF0-FE / %xFF %x00-FF
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag3')"> ◊ </a> <strong>Types : Type Encodings :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag3">
+<pre>
+Bit: 7 6 5 4 3 2 1 0
+ +------------------------------------+ +----------+
+ | subcategory | subtype | | ext-type |
+ +------------------------------------+ +----------+
+ 1 octet 1 octet
+ | |
+ +-------------------------------------------------+
+ |
+ format-code
+
+ ext-type: only present if subtype is 0xF
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag4')"> ◊ </a> <strong>Types : Type Encodings :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag4">
+<pre>
+Subcategory Category Format
+==============================================================================
+0x4 Fixed Width Zero octets of data.
+0x5 Fixed Width One octet of data.
+0x6 Fixed Width Two octets of data.
+0x7 Fixed Width Four octets of data.
+0x8 Fixed Width Eight octets of data.
+0x9 Fixed Width Sixteen octets of data.
+
+0xA Variable Width One octet of size, 0-255 octets of data.
+0xB Variable Width Four octets of size, 0-4294967295 octets of data.
+
+0xC Compound One octet each of size and count, 0-255 distinctly
+ typed values.
+0xD Compound Four octets each of size and count, 0-4294967295
+ distinctly typed values.
+
+0xE Array One octet each of size and count, 0-255 uniformly
+ typed values.
+0xF Array Four octets each of size and count, 0-4294967295
+ uniformly typed values.
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag5')"> ◊ </a> <strong>Types : Type Encodings : Fixed Width</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag5">
+<pre>
+ n OCTETs
+ +----------+
+ | data |
+ +----------+
+
+Subcategory n
+=================
+0x4 0
+0x5 1
+0x6 2
+0x7 4
+0x8 8
+0x9 16
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag6')"> ◊ </a> <strong>Types : Type Encodings : Variable Width</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag6">
+<pre>
+ n OCTETs size OCTETs
++----------+-------------+
+| size | value |
++----------+-------------+
+
+ Subcategory n
+ =================
+ 0xA 1
+ 0xB 4
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag7')"> ◊ </a> <strong>Types : Type Encodings : Compound</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag7">
+<pre>
+ +----------= count items =----------+
+ | |
+ n OCTETs n OCTETs | |
++----------+----------+--------------+------------+-------+
+| size | count | ... /| item |\ ... |
++----------+----------+------------/ +------------+ \-----+
+ / / \ \
+ / / \ \
+ / / \ \
+ +-------------+----------+
+ | constructor | data |
+ +-------------+----------+
+
+ Subcategory n
+ =================
+ 0xC 1
+ 0xD 4
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag8')"> ◊ </a> <strong>Types : Type Encodings : Array</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag8">
+<pre>
+ +--= count elements =--+
+ | |
+ n OCTETs n OCTETs | |
++----------+----------+---------------------+-------+------+-------+
+| size | count | element-constructor | ... | data | ... |
++----------+----------+---------------------+-------+------+-------+
+
+ Subcategory n
+ =================
+ 0xE 1
+ 0xF 4
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag9')"> ◊ </a> <strong>Types : Composite Types :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag9">
+<pre>
+<type class="composite" name="book" label="example composite type">
+ <doc>
+ <p>An example composite type.</p>
+ </doc>
+
+ <descriptor name="example:book:list" code="0x00000003:0x00000002"/>
+
+ <field name="title" type="string" mandatory="true" label="title of the book"/>
+
+ <field name="authors" type="string" multiple="true"/>
+
+ <field name="isbn" type="string" label="the ISBN code for the book"/>
+</type>
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TypesDiag10')"> ◊ </a> <strong>Types : Composite Types : List Encoding</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TypesDiag10">
+<pre>
+ constructor list representation of a book
+ | |
++-----------------+-------------------+ +-------------+---------------+
+| | | |
+0x00 0xA3 0x11 "example:book:list" 0xC0 0x40 0x03 title authors isbn
+ | | | | |
+ | identifies composite type | | |
+ | | | 0x40
+ sym8 +----------------------+ | |
+ (symbol) | | null value
+ +--------------+----------------+ |
+ | | |
+ 0xA1 0x15 "AMQP for & by Dummies" |
+ |
++------------------------------------------------------------+-----+
+| |
+0xE0 0x25 0x02 0xA1 0x0E "Rob J. Godfrey" 0x13 "Rafael H. Schloming"
+ | | | | | | |
+ size | | +---------+---------+ +-----------+------------+
+ | | | |
+ count | first element second element
+ |
+ element constructor
+
+ </pre><br>
+</div>
+</div>
+<br>
+<a name="TransportDiagrams"</a><br>
+<a href="javascript:toggle_node('TransportDiag')"> ◊ </a> Transport Diagrams<br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag">
+<a href="javascript:toggle_node('TransportDiag0')"> ◊ </a> <strong>Transport : :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag0">
+<pre>
+
+ +------------+ +------------+
+ / Node A \ / Node B \
++----------------+ +--filter +----------------+
+| | / | |
+| MSG_3 <MSG_1> | _/ _ | MSG_1 |
+| |(_)------------------>(_)| |
+| <MSG_2> MSG_4 | | | | MSG_2 |
+| | | Link(Src,Tgt) | | |
++----------------+ | | +----------------+
+ | |
+ Src Tgt
+
+
+ Key: <MSG_n> = old location of MSG_n
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag1')"> ◊ </a> <strong>Transport : :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag1">
+<pre>
+
+ +---------------+ +----------+
+ | <<Container>> | 1..1 0..n | <<Node>> |
+ |---------------|<>-------------------->|----------|
+ | container-id | | name |
+ +---------------+ +----------+
+ /_\ /_\
+ | |
+ | |
+ +-----+-----+ +----------+----------+
+ | | | | |
+ | | | | |
++--------+ +--------+ +----------+ +----------+ +-------+
+| Broker | | Client | | Producer | | Consumer | | Queue |
+|--------| |--------| |----------| |----------| |-------|
+| | | | | | | | | |
++--------+ +--------+ +----------+ +----------+ +-------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag2')"> ◊ </a> <strong>Transport : :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag2">
+<pre>
+
+ Session<------+ +------>Session
+(ICH=1, OCH=1) | | (ICH=1, OCH=1)
+ \|/ \|/
+ Session<--> Connection <---------> Connection <-->Session
+(ICH=2, OCH=3) /|\ /|\ (ICH=3, OCH=2)
+ | |
+ Session<------+ +------>Session
+(ICH=3, OCH=2) (ICH=2, OCH=3)
+
+ Key: ICH -> Input Channel, OCH -> Output Channel
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag3')"> ◊ </a> <strong>Transport : :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag3">
+<pre>
++-------------+
+| Link | Message Transport
++-------------+ (Node to Node)
+| name |
+| source |
+| target |
+| timeout |
++-------------+
+ /|\ 0..n
+ |
+ |
+ |
+ \|/ 0..1
++------------+
+| Session | Frame Transport
++------------+ (Container to Container)
+| name |
++------------+
+ /|\ 0..n
+ |
+ |
+ |
+ \|/ 1..1
++------------+
+| Connection | Frame Transport
++------------+ (Container to Container)
+| principal |
++------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag4')"> ◊ </a> <strong>Transport : :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag4">
+<pre>
+Frame Connection Session Link
+========================================
+open H
+begin I H
+attach I H
+flow I H
+transfer I H
+disposition I H
+detach I H
+end I H
+close H
+----------------------------------------
+
+Key:
+ H: handled by the endpoint
+
+ I: intercepted (endpoint examines
+ the frame, but delegates
+ further processing to another
+ endpoint)
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag5')"> ◊ </a> <strong>Transport : Version Negotiation :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag5">
+<pre>
+ 4 OCTETS 1 OCTET 1 OCTET 1 OCTET 1 OCTET
++----------+---------+---------+---------+----------+
+| "AMQP" | %d0 | major | minor | revision |
++----------+---------+---------+---------+----------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag6')"> ◊ </a> <strong>Transport : Version Negotiation :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag6">
+<pre>
+TCP Client TCP Server
+======================================================
+AMQP%d0.1.0.0 ------------->
+ <------------- AMQP%d0.1.0.0 (1)
+ ... *proceed*
+
+AMQP%d0.1.1.0 ------------->
+ <------------- AMQP%d0.1.0.0 (2)
+ *TCP CLOSE*
+
+HTTP ------------->
+ <------------- AMQP%d0.1.0.0 (3)
+ *TCP CLOSE*
+------------------------------------------------------
+ (1) Server accepts Connection for: AMQP, protocol=0,
+ major=1, minor=0, revision=0
+
+ (2) Server rejects Connection for: AMQP, protocol=0,
+ major=1, minor=1, revision=0, Server responds
+ that it supports: AMQP, protocol=0, major=1,
+ minor=0, revision=0
+
+ (3) Server rejects Connection for: HTTP. Server
+ responds it supports: AMQP, protocol=0, major=1,
+ minor=0, revision=0
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag7')"> ◊ </a> <strong>Transport : Version Negotiation :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag7">
+<pre>
+TCP Client TCP Server
+======================================================
+AMQP%d0.1.0.0 ------------->
+ <------------- AMQP%d3.1.0.0
+ *TCP CLOSE*
+------------------------------------------------------
+ Server rejects Connection for: AMQP, protocol=0,
+ major=1, minor=0, revision=0, Server responds
+ that it requires: SASL security layer, protocol=3,
+ major=1, minor=0, revision=0
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag8')"> ◊ </a> <strong>Transport : :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag8">
+<pre>
+ required optional optional
++--------------+-----------------+------------+
+| frame header | extended header | frame body |
++--------------+-----------------+------------+
+ 8 bytes *variable* *variable*
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag9')"> ◊ </a> <strong>Transport : : Frame Layout</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag9">
+<pre>
+ +0 +1 +2 +3
+ +-----------------------------------+ -.
+ 0 | SIZE | |
+ +-----------------------------------+ |---> Frame Header
+ 4 | DOFF | TYPE | <TYPE-SPECIFIC> | | (8 bytes)
+ +-----------------------------------+ -'
+ +-----------------------------------+ -.
+ 8 | ... | |
+ . . |---> Extended Header
+ . <TYPE-SPECIFIC> . | (DOFF * 4 - 8) bytes
+ | ... | |
+ +-----------------------------------+ -'
+ +-----------------------------------+ -.
+4*DOFF | | |
+ . . |
+ . . |
+ . . |
+ . <TYPE-SPECIFIC> . |---> Frame Body
+ . . | (SIZE - DOFF * 4) bytes
+ . . |
+ . . |
+ . ________| |
+ | ... | |
+ +--------------------------+ -'
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag10')"> ◊ </a> <strong>Transport : : AMQP Frames</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag10">
+<pre>
+ type: 0x00 - AMQP frame
+
+ +0 +1 +2 +3
+ +-----------------------------------+ -.
+ 0 | SIZE | |
+ +-----------------------------------+ |---> Frame Header
+ 4 | DOFF | TYPE | CHANNEL | | (8 bytes)
+ +-----------------------------------+ -'
+ +-----------------------------------+ -.
+ 8 | ... | |
+ . . |---> Extended Header
+ . <IGNORED> . | (DOFF * 4 - 8) bytes
+ | ... | |
+ +-----------------------------------+ -'
+ +-----------------------------------+ -.
+4*DOFF | PERFORMATIVE: | |
+ . Open / Begin / Attach . |
+ . Flow / Transfer / Disposition . |
+ . Detach / End / Close . |
+ |-----------------------------------| |
+ . . |---> Frame Body
+ . . | (SIZE - DOFF * 4) bytes
+ . PAYLOAD . |
+ . . |
+ . ________| |
+ | ... | |
+ +--------------------------+ -'
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag11')"> ◊ </a> <strong>Transport : :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag11">
+<pre>
+ +-------OCHE X: 1
+ |
+ +-------OCHE Y: 7
+ |
+<=== Frame[CH=1], Frame[CH=7] <===+
+
+===> Frame[CH=0], Frame[CH=1] ===>+
+ |
+ +------>0: ICHE A
+ |
+ +------>1: ICHE B
+
+ OCHE: Outgoing Channel Endpoint
+ ICHE: Incoming Channel Endpoint
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag12')"> ◊ </a> <strong>Transport : :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag12">
+<pre>
+ +-------BIDI/O: 7
+ |
+<=== Frame[CH=1], Frame[CH=7] <===+
+
+===> Frame[CH=0], Frame[CH=1] ===>+
+ |
+ +------>1: BIDI/I
+
+ BIDI/I: Incoming half of a single bidirectional endpoint
+ BIDI/O: Outgoing half of a single bidirectional endpoint
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag13')"> ◊ </a> <strong>Transport : : Opening a Connection</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag13">
+<pre>
+TCP Client TCP Server
+==================================
+TCP-CONNECT TCP-ACCEPT
+PROTO-HDR PROTO-HDR
+OPEN ---+ +--- OPEN
+ \ /
+wait x wait
+ / \
+proceed <--+ +--> proceed
+
+ ...
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag14')"> ◊ </a> <strong>Transport : : Pipelined Open</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag14">
+<pre>
+TCP Client TCP Server
+=============================================
+TCP-CONNECT TCP-ACCEPT
+PROTO-HDR PROTO-HDR
+OPEN ---+ +--- OPEN
+ \ /
+pipelined frame x pipelined frame
+ / \
+proceed <--+ +--> proceed
+
+ ...
+---------------------------------------------
+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag15')"> ◊ </a> <strong>Transport : : Closing a Connection</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag15">
+<pre>
+TCP Client TCP Server
+=============================
+ ...
+
+CLOSE ------->
+ +-- CLOSE
+ / TCP-CLOSE
+TCP-CLOSE <--+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag16')"> ◊ </a> <strong>Transport : : Simultaneous Close</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag16">
+<pre>
+TCP Client TCP Server
+================================
+ ...
+
+CLOSE ---+ +--- CLOSE
+ \ /
+ x
+ / \
+TCP-CLOSE <--+ +--> TCP-CLOSE
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag17')"> ◊ </a> <strong>Transport : : Connection State Diagram</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag17">
+<pre>
+ R:HDR @=======@ S:HDR R:HDR[!=S:HDR]
+ +--------| START |-----+ +--------------------------------+
+ | @=======@ | | |
+ \|/ \|/ | |
+ @==========@ @==========@ S:OPEN |
++----| HDR_RCVD | | HDR_SENT |------+ |
+| @==========@ @==========@ | R:HDR[!=S:HDR] |
+| S:HDR | | R:HDR | +-----------------+
+| +--------+ +------+ | | |
+| \|/ \|/ \|/ | |
+| @==========@ +-----------+ S:CLOSE |
+| | HDR_EXCH | | OPEN_PIPE |----+ |
+| @==========@ +-----------+ | |
+| R:OPEN | | S:OPEN | R:HDR | |
+| +--------+ +------+ +-------+ | |
+| \|/ \|/ \|/ \|/ |
+| @===========@ @===========@ S:CLOSE +---------+ |
+| | OPEN_RCVD | | OPEN_SENT |-----+ | OC_PIPE |--+
+| @===========@ @===========@ | +---------+ |
+| S:OPEN | | R:OPEN \|/ | R:HDR |
+| | @========@ | +------------+ | |
+| +------>| OPENED |<----+ | CLOSE_PIPE |<--+ |
+| @========@ +------------+ |
+| R:CLOSE | | S:CLOSE | R:OPEN |
+| +---------+ +-------+ | |
+| \|/ \|/ | |
+| @============@ @=============@ | |
+| | CLOSE_RCVD | | CLOSE_SENT* |<----+ |
+| @============@ @=============@ |
+| S:CLOSE | | R:CLOSE |
+| | @=====@ | |
+| +-------->| END |<-----+ |
+| @=====@ |
+| /|\ |
+| S:HDR[!=R:HDR] | R:HDR[!=S:HDR] |
++----------------------+-----------------------------------------------+
+
+ R:<CTRL> = Received <CTRL>
+ S:<CTRL> = Sent <CTRL>
+ * Also could be DISCARDING if an error condition
+ triggered the CLOSE
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag18')"> ◊ </a> <strong>Transport : : Connection State Diagram</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag18">
+<pre>
+State Legal Sends Legal Receives Legal Connection Actions
+=======================================================================
+START HDR HDR
+HDR_RCVD HDR OPEN
+HDR_SENT OPEN HDR
+HDR_EXCH OPEN OPEN
+OPEN_RCVD OPEN *
+OPEN_SENT ** OPEN
+OPEN_PIPE ** HDR
+CLOSE_PIPE - OPEN TCP Close for Write
+OC_PIPE - HDR TCP Close for Write
+OPENED * *
+CLOSE_RCVD * - TCP Close for Read
+CLOSE_SENT - * TCP Close for Write
+DISCARDING - * TCP Close for Write
+END - - TCP Close
+
+* = any frames
+- = no frames
+** = any frame known a priori to conform to the
+ peer's capabilities and limitations
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag19')"> ◊ </a> <strong>Transport : :</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag19">
+<pre>
+
+Link A-------+ +------>Link A
+ | |
+ \|/ (attached) |
+Link B<--- Session <--------------> Session <---Link B
+
+
+Link C------>* (detached) *------>Link C
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag20')"> ◊ </a> <strong>Transport : : Establishing a Session</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag20">
+<pre>
+ Endpoint Endpoint
+ =====================================================================
+ [CH3] BEGIN(name=..., --------->
+ remote-channel=null)
+ +-- [CH7] BEGIN(name=...,
+ / remote-channel=3)
+ /
+ <---+
+
+ ...
+
+ ---------------------------------------------------------------------
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag21')"> ◊ </a> <strong>Transport : : Ending a Session</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag21">
+<pre>
+ Endpoint A Endpoint B
+ ====================================================================
+
+ ...
+
+ [CH3] END(error=...) ---------> (1)
+ +-- [CH7] END(error=...)
+ /
+ /
+(2) <---+
+
+ ...
+
+ --------------------------------------------------------------------
+
+ (1) At this point the session endpoint is disassociated from
+ the outgoing channel on A, and the incoming channel on B.
+
+ (2) At this point the session endpoint is disassociated from
+ the outgoing channel on B, and the incoming channel on A.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag22')"> ◊ </a> <strong>Transport : : Simultaneous End</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag22">
+<pre>
+ Endpoint A Endpoint B
+ =================================================================
+
+ ...
+
+ [CH3] END(error=...) --+ +-- [CH7] END(error=...)
+(1) \ / (2)
+ x
+ / \
+(3) <-+ +-> (4)
+
+ ...
+
+ -----------------------------------------------------------------
+
+ (1) At this point no more frames may be sent by A.
+
+ (2) At this point no more frames may be sent by B.
+
+ (3) At this point Endpoint A is fully ended.
+
+ (4) At this point Endpoint B is fully ended.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag23')"> ◊ </a> <strong>Transport : : Session Errors</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag23">
+<pre>
+Endpoint Endpoint
+================================================
+FRAME 1 ---------->
+FRAME 2 ---------->
+FRAME 3 ---+ +--- END(error=...)
+ \ /
+ x
+ / \
+ <--+ +--> *discarded*
+END ---------->
+ ...
+================================================
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag24')"> ◊ </a> <strong>Transport : : Session States</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag24">
+<pre>
+ UNMAPPED<-------------------+
+ | |
+ +-------+-------+ |
+ S:BEGIN | | R:BEGIN |
+ | | |
+ \|/ \|/ |
+ BEGIN_SENT BEGIN_RCVD |
+ | | |
+ | | |
+ R:BEGIN | | S:BEGIN |
+ +-------+-------+ |
+ | |
+ \|/ |
+ MAPPED |
+ | |
+ +-------------+-------------+ |
+S:END(error) | S:END | | R:END |
+ | | | |
+ \|/ \|/ \|/ |
+ DISCARDING END_SENT END_RCVD |
+ | | | |
+ | | | |
+ R:END | R:END | | S:END |
+ +-------------+-------------+ |
+ | |
+ | |
+ +------------------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag25')"> ◊ </a> <strong>Transport : : Link Handles</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag25">
+<pre>
++-------------------+ +-------------------+
+| name: Link_1 | | name: Link_1 |
+| handle: i | | handle: j |
+|-------------------| |-------------------|
+| role: receiver | | role: sender |
+| source: A |<---+ +--->| source: A |
+| target: B | | | | target: B |
++-------------------+ | | +-------------------+
+ | |
+ | +---------+ |
+ ... <---+--->| Session |<---+---> ...
+ | +---------+ |
+ | |
++-------------------+ | | +-------------------+
+| name: Link_N | | | | name: Link_N |
+| handle: k |<---+ +--->| handle: l |
+|-------------------| |-------------------|
+| role: sender | | role: receiver |
+| source: C | | source: C |
+| target: D | | target: D |
++-------------------+ +-------------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag26')"> ◊ </a> <strong>Transport : : Establishing or Resuming a Link</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag26">
+<pre>
+Peer Partner
+================================================================
+*create link endpoint*
+ATTACH(name=N, handle=1, ----------> *create link endpoint*
+ role=sender, +--- ATTACH(name=N, handle=2,
+ source=A, / role=receiver,
+ target=B) / source=A,
+ / target=B)
+ <--+
+ ...
+----------------------------------------------------------------
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag27')"> ◊ </a> <strong>Transport : : Establishing or Resuming a Link</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag27">
+<pre>
+ Peer Partner
+ ================================================================
+ *create link endpoint*
+ ATTACH(name=N, handle=1, ----------> *create link endpoint* (1)
+ role=sender, +--- ATTACH(name=N, handle=2,
+ source=A, / role=receiver,
+ target=B) / source=A,
+ / target=-)
+(2) <--+
+ +--- DETACH(handle=2,
+ / closed=True)
+ /
+ /
+ <--+
+ DETACH(handle=1, ----------->
+ closed=True)
+ ...
+ ----------------------------------------------------------------
+ (1) The Link Endpoint is created, but no target is created.
+ (2) At this point the link is established, but it is to a
+ nonexistent target.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag28')"> ◊ </a> <strong>Transport : : Establishing or Resuming a Link</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag28">
+<pre>
+ Peer Partner
+ ================================================================
+ *existing source*
+ ATTACH(name=N, handle=1, ----------> *found existing target*
+ role=sender, +--- ATTACH(name=N, handle=2, (1)
+ source=X, / role=receiver,
+ target=Y, / source=X,
+ unsettled=...) / target=Y,
+(2) <--+ unsettled=...)
+ ...
+ ----------------------------------------------------------------
+ (1) The target already exists, and its properties
+ match the peer's expectations.
+ (2) At this point the Link is reestablished with source=X,
+ target=Y.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag29')"> ◊ </a> <strong>Transport : : Establishing or Resuming a Link</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag29">
+<pre>
+ Peer Partner
+ ================================================================
+ *existing source*
+ ATTACH(name=N, handle=1, ----------> *found existing target*
+ role=sender, +--- ATTACH(name=N, handle=2, (1)
+ source=A, / role=receiver,
+ target=B, / source=A,
+ unsettled=...) / target=C,
+(2) <--+ unsettled=...)
+ ...
+ ----------------------------------------------------------------
+ (1) The Terminus already exists, but its state
+ does not match the Peer's endpoint.
+ (2) At this point the Link is established with source=A,
+ target=C.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag30')"> ◊ </a> <strong>Transport : : Establishing or Resuming a Link</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag30">
+<pre>
+ Peer Partner
+ ================================================================
+ *create link endpoint*
+ ATTACH(name=N, handle=1, ----------> *found existing target*
+ role=sender, +--- ATTACH(name=N, handle=2, (1)
+ source=X / role=receiver,
+ target=-) / source=X,
+(2) <---+ target=Y)
+ ...
+ ----------------------------------------------------------------
+ (1) The target already exists, and its properties are
+ authoritative.
+ (2) At this point the Link is reestablished with source=X,
+ target=Y.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag31')"> ◊ </a> <strong>Transport : : Detaching and Reattaching a Link</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag31">
+<pre>
+ Peer Partner
+ =============================================================
+ *create link endpoint*
+ ATTACH(name=N, handle=1 ----------> *create link endpoint*
+ role=sender, +--- ATTACH(name=N, handle=2,
+ source=A, / role=receiver,
+ target=B) / source=A,
+ / target=B)
+ <--+
+ ...
+ *use link* <---------> *use link*
+ ...
+ DETACH(handle=1) ----------> *detach input handle*
+(1) *detach output handle* <---------- DETACH(handle=2)
+ ...
+ -------------------------------------------------------------
+ (1) At this point both endpoints are detached.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag32')"> ◊ </a> <strong>Transport : : Detaching and Reattaching a Link</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag32">
+<pre>
+ Peer Partner
+ =============================================================
+ ...
+ DETACH(handle=1) ---+
+ \
+ \
+ \
+ *modify link endpoint* \
+ +--> *detach input handle*
+ ATTACH(name=N, handle=1 ---+ +--- DETACH(handle=2)
+ role=sender, \ /
+ source=A', \/
+ target=B') /\
+ / \
+ *detach input handle* <--+ +--> *reattach input handle*
+ *modify link endpoint*
+ +--- ATTACH(name=N, handle=2
+ / role=receiver,
+ / source=A',
+ / target=B')
+ /
+(1) *reattach input handle* <--+
+ ...
+ *use link* <---------> *use link*
+ ...
+ -------------------------------------------------------------
+ (1) At this point the link is updated and attached.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag33')"> ◊ </a> <strong>Transport : : Closing a Link</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag33">
+<pre>
+ Peer Partner
+ =============================================================
+ *create link endpoint*
+ ATTACH(name=N, handle=1 ----------> *create link endpoint*
+ role=sender, +--- ATTACH(name=N, handle=2,
+ source=A, / role=receiver,
+ target=B) / source=A,
+ / target=B)
+ <--+
+ ...
+ *use link* <---------> *use link*
+ ...
+ DETACH(handle=1, ----------> *destroy link endpoint*
+ closed=True)
+(1) *destroy link endpoint* <---------- DETACH(handle=2,
+ closed=True)
+ -------------------------------------------------------------
+ (1) At this point both endpoints are destroyed.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag34')"> ◊ </a> <strong>Transport : : Flow Control</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag34">
+<pre>
+ +----------+ +----------+
+ | Sender |---------------transfer------------>| Receiver |
+ +----------+ +----------+
+ \ / <----------------flow--------------- \ /
+ +------+ +------+
+ |
+ |
+ |
+ if link-credit <= 0 then pause
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag35')"> ◊ </a> <strong>Transport : : Flow Control</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag35">
+<pre>
+ flow state
+ |
+ | modifies
++------------------+ | +------------------+
+| Sender | .----------------------. | Receiver |
++------------------+ attach, transfer, flow +------------------+
+| delivery-count |------------------------------->| delivery-count |
+| link-credit | | link-credit |
+| available |<-------------------------------| available |
+| drain | flow | drain |
++------------------+ '-----' +------------------+
+ |
+ | modifies
+ |
+ flow state
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag36')"> ◊ </a> <strong>Transport : : Flow Control</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag36">
+<pre>
+ +----------+ +----------+
+ | Receiver |<--------------transfer-------------| Sender |
+ +----------+ +----------+
+ \ / -----------------flow--------------> \ /
+ +------+ +------+
+ |
+ |
+ |
+ sync-get: flow(link-credit=1, ...) ---->
+ timed-get: flow(link-credit=1, ...),
+ *wait*,
+ flow(drain=True, ...) ---->
+async-notify: flow(link-credit=delta, ...) ---->
+ stop: flow(link-credit=0, ...) ---->
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag37')"> ◊ </a> <strong>Transport : : Synchronous Get</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag37">
+<pre>
+Receiver Sender
+=================================================================
+ ...
+flow(link-credit=1) ---------->
+ +---- transfer(...)
+*block until transfer arrives* /
+ <---+
+ ...
+-----------------------------------------------------------------
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag38')"> ◊ </a> <strong>Transport : : Synchronous Get</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag38">
+<pre>
+ Receiver Sender
+ =================================================================
+ ...
+ flow(link-credit=1) ---------->
+ *wait for link-credit <= 0*
+ flow(drain=True) ---+ +--- transfer(...)
+ \ /
+ x
+ / \
+(1) <--+ +-->
+(2) <---------- flow(...)
+ ...
+ -----------------------------------------------------------------
+ (1) If a message is available within the timeout, it will
+ arrive at this point.
+ (2) If a message is not available within the timeout, the
+ drain flag will ensure that the Sender promptly advances the
+ delivery-count until link-credit is consumed.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag39')"> ◊ </a> <strong>Transport : : Asynchronous Notification</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag39">
+<pre>
+Receiver Sender
+=====================================================================
+ ...
+ <---------- transfer(...)
+ <---------- transfer(...)
+flow(link-credit=delta) ---+ +--- transfer(...)
+ \ /
+ x
+ / \
+ <--+ +-->
+ <---------- transfer(...)
+ <---------- transfer(...)
+flow(link-credit=delta) ---+ +--- transfer(...)
+ \ /
+ x
+ / \
+ <--+ +-->
+ ...
+---------------------------------------------------------------------
+ The incoming message rate for the Link is limited by the
+ rate at which the Receiver updates the delivery-limit by
+ issuing link-credit.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag40')"> ◊ </a> <strong>Transport : : Stopping a Link</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag40">
+<pre>
+ Receiver Sender
+ ================================================================
+ ...
+ <---------- transfer(...)
+ flow(..., ---+ +--- transfer(...)
+ link-credit=0, \ /
+ echo=True) x
+ / \
+(1) <--+ +-->
+(2) <---------- flow(...)
+ ...
+ ----------------------------------------------------------------
+ (1) In-flight transfers may still arrive until the flow state
+ is updated at the Sender.
+ (2) At this point no further transfers will arrive.
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag41')"> ◊ </a> <strong>Transport : : Transferring a Message</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag41">
+<pre>
+ +------------------+
+ / Sender \
++----------------------+
+| unsettled: | transfer(delivery-tag=DT, settled=False,
+| ... | state=S_0, ...)
+| DT -> (local: S_0, |----------------------------------------------->
+| remote: ?) |
+| ... |
++----------------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag42')"> ◊ </a> <strong>Transport : : Transferring a Message</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag42">
+<pre>
+ +------------------+
+ / Receiver \
+ +----------------------+
+ transfer(delivery-tag=DT, settled=False, | unsettled: |
+ state=S_0, ...) | ... |
+----------------------------------------------->| DT -> (local: S_1, |
+ | remote: S_0)|
+ | ... |
+ +----------------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag43')"> ◊ </a> <strong>Transport : : Transferring a Message</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag43">
+<pre>
+ +------------------+
+ / Receiver \
+ +----------------------+
+ | unsettled: |
+ | ... |
+<-----------------------------------------------| DT -> (local: S_2, |
+ disp(role=receiver, ..., delivery-tag=DT, | remote: S_0)|
+ settled=False, state=S_2, ...) | ... |
+ +----------------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag44')"> ◊ </a> <strong>Transport : : Transferring a Message</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag44">
+<pre>
+ +------------------+
+ / Receiver \
+ +----------------------+
+ | unsettled: |
+ | ... |
+<-----------------------------------------------| DT -> (local: T_0, |
+ disp(role=receiver, ..., delivery-tag=DT, | remote: S_0)|
+ settled=False, state=T_0, ...) | ... |
+ +----------------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag45')"> ◊ </a> <strong>Transport : : Transferring a Message</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag45">
+<pre>
+ +------------------+
+ / Sender \
++----------------------+
+| unsettled: |
+| ... |
+| DT -> (local: S_0, |<-----------------------------------------------
+| remote: T_0)| disp(role=receiver, ..., delivery-tag=DT,
+| ... | settled=False, state=T_0, ...)
++----------------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag46')"> ◊ </a> <strong>Transport : : Transferring a Message</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag46">
+<pre>
+ +------------------+
+ / Sender \
++----------------------+
+| unsettled: | disp(role=sender, ..., delivery-tag=DT,
+| ... | settled=True, state=T_1, ...)
+| - -> - |----------------------------------------------->
+| ... |
++----------------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag47')"> ◊ </a> <strong>Transport : : Transferring a Message</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag47">
+<pre>
+ +------------------+
+ / Receiver \
+ +----------------------+
+ disp(role=sender, ..., delivery-tag=DT, | unsettled: |
+ settled=True, state=T_1, ...) | ... |
+----------------------------------------------->| DT -> (local: S_2, |
+ | remote: - ) |
+ | ... |
+ +----------------------+
+
+ </pre><br>
+</div>
+<a href="javascript:toggle_node('TransportDiag48')"> ◊ </a> <strong>Transport : : Transferring a Message</strong><br>
+<div style="display: none; margin-bottom: 2px; margin-left: 10px" id="TransportDiag48">
+<pre>
+ +------------------+
+ / Receiver \
+ +----------------------+
+ | unsettled: |
+ | ... |
+<-----------------------------------------------| - -> - |
+ | ... |
+ +----------------------+
+
+ </pre><br>
+</div>
+<a
<TRUNCATED>
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[2/2] qpid-site git commit: Publish the updated type reference
Posted by jr...@apache.org.
Publish the updated type reference
Project: http://git-wip-us.apache.org/repos/asf/qpid-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-site/commit/f16e5b79
Tree: http://git-wip-us.apache.org/repos/asf/qpid-site/tree/f16e5b79
Diff: http://git-wip-us.apache.org/repos/asf/qpid-site/diff/f16e5b79
Branch: refs/heads/asf-site
Commit: f16e5b79fc38b9915659ea9c455cadd1492a407b
Parents: cc6f81e
Author: Justin Ross <jr...@apache.org>
Authored: Wed Aug 15 05:42:43 2018 -0700
Committer: Justin Ross <jr...@apache.org>
Committed: Wed Aug 15 05:42:43 2018 -0700
----------------------------------------------------------------------
content/amqp/type-reference.html | 2047 +++++++++++++++++++++++++++++++--
1 file changed, 1982 insertions(+), 65 deletions(-)
----------------------------------------------------------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org