blob: 37155fdaee64d2be854b121a44135a8d5fa3affc [file] [log] [blame]
<!-- Originally created with blockdiag. See the Git history for the source. -->
<svg height="614.9000000000001" viewBox="0 0 594 559" width="653.4000000000001" xmlns="http://www.w3.org/2000/svg" xmlns:inkspace="http://www.inkscape.org/namespaces/inkscape" xmlns:xlink="http://www.w3.org/1999/xlink" style="background-color:white">
<defs id="defs_block">
<filter height="1.504" id="filter_blur" inkspace:collect="always" width="1.1575" x="-0.07875" y="-0.252">
<feGaussianBlur id="feGaussianBlur3780" inkspace:collect="always" stdDeviation="4.2"></feGaussianBlur>
</filter>
</defs>
<title>Client Streaming RPC</title>
<desc></desc>
<rect fill="rgb(0,0,0)" height="384" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="8" x="231" y="153"></rect>
<rect fill="rgb(0,0,0)" height="308" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="8" x="423" y="153"></rect>
<polygon fill="rgb(0,0,0)" points="87,126 211,126 219,134 219,180 87,180 87,126" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1"></polygon>
<polygon fill="rgb(0,0,0)" points="51,220 211,220 219,228 219,287 51,287 51,220" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1"></polygon>
<polygon fill="rgb(0,0,0)" points="27,327 211,327 219,335 219,381 27,381 27,327" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1"></polygon>
<polygon fill="rgb(0,0,0)" points="443,421 573,421 581,429 581,501 443,501 443,421" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1"></polygon>
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="171" y="46"></rect>
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="363" y="46"></rect>
<path d="M 232 80 L 232 547" fill="none" stroke="rgb(0,0,0)" stroke-dasharray="8 4"></path>
<rect fill="moccasin" height="384" stroke="rgb(0,0,0)" width="8" x="228" y="147"></rect>
<path d="M 424 80 L 424 547" fill="none" stroke="rgb(0,0,0)" stroke-dasharray="8 4"></path>
<rect fill="moccasin" height="308" stroke="rgb(0,0,0)" width="8" x="420" y="147"></rect>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="168" y="40"></rect>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="36" x="232.0" y="66">client</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="360" y="40"></rect>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="36" x="424.0" y="66">server</text>
<path d="M 240 147 L 416 147" fill="none" stroke="rgb(0,0,0)"></path>
<polygon fill="rgb(0,0,0)" points="408,143 416,147 408,151" stroke="rgb(0,0,0)"></polygon>
<polygon fill="rgb(240,248,255)" points="84,120 208,120 216,128 216,174 84,174 84,120" stroke="rgb(0,0,0)"></polygon>
<path d="M 208 120 L 208 128" fill="none" stroke="rgb(0,0,0)"></path>
<path d="M 208 128 L 216 128" fill="none" stroke="rgb(0,0,0)"></path>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="108" x="146.0" y="133">PacketType.REQUEST</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="60" x="122.0" y="146">channel ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="60" x="122.0" y="159">service ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="54" x="119.0" y="172">method ID</text>
<path d="M 240 247 L 416 247" fill="none" stroke="rgb(0,0,0)" stroke-dasharray="4"></path>
<polygon fill="rgb(0,0,0)" points="408,243 416,247 408,251" stroke="rgb(0,0,0)"></polygon>
<polygon fill="rgb(240,248,255)" points="48,214 208,214 216,222 216,281 48,281 48,214" stroke="rgb(0,0,0)"></polygon>
<path d="M 208 214 L 208 222" fill="none" stroke="rgb(0,0,0)"></path>
<path d="M 208 222 L 216 222" fill="none" stroke="rgb(0,0,0)"></path>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="144" x="128.0" y="227">PacketType.CLIENT_STREAM</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="60" x="86.0" y="240">channel ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="60" x="86.0" y="253">service ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="54" x="83.0" y="266">method ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="42" x="77.0" y="279">payload</text>
<path d="M 240 348 L 416 348" fill="none" stroke="rgb(0,0,0)"></path>
<polygon fill="rgb(0,0,0)" points="408,344 416,348 408,352" stroke="rgb(0,0,0)"></polygon>
<polygon fill="rgb(240,248,255)" points="24,321 208,321 216,329 216,375 24,375 24,321" stroke="rgb(0,0,0)"></polygon>
<path d="M 208 321 L 208 329" fill="none" stroke="rgb(0,0,0)"></path>
<path d="M 208 329 L 216 329" fill="none" stroke="rgb(0,0,0)"></path>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="168" x="116.0" y="334">PacketType.CLIENT_STREAM_END</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="60" x="62.0" y="347">channel ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="60" x="62.0" y="360">service ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="54" x="59.0" y="373">method ID</text>
<path d="M 240 455 L 416 455" fill="none" stroke="rgb(0,0,0)"></path>
<polygon fill="rgb(0,0,0)" points="248,451 240,455 248,459" stroke="rgb(0,0,0)"></polygon>
<polygon fill="rgb(240,248,255)" points="440,415 570,415 578,423 578,495 440,495 440,415" stroke="rgb(0,0,0)"></polygon>
<path d="M 570 415 L 570 423" fill="none" stroke="rgb(0,0,0)"></path>
<path d="M 570 423 L 578 423" fill="none" stroke="rgb(0,0,0)"></path>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="114" x="505.0" y="428">PacketType.RESPONSE</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="60" x="478.0" y="441">channel ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="60" x="478.0" y="454">service ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="54" x="475.0" y="467">method ID</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="42" x="469.0" y="480">payload</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="36" x="466.0" y="493">status</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="30" x="259.0" y="145">start</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="138" x="313.0" y="245">messages (zero or more)</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="24" x="256.0" y="346">done</text>
<text fill="rgb(0,0,0)" font-family="sans-serif" font-size="11" font-style="normal" font-weight="normal" text-anchor="middle" textLength="48" x="392.0" y="453">response</text>
</svg>