Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(142)

Unified Diff: net/docs/url_request.svg

Issue 1859793002: Include class relationship diagrams in network stack documentation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Cleaned up and regularized .dot files. Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/docs/url_request.svg
diff --git a/net/docs/url_request.svg b/net/docs/url_request.svg
new file mode 100644
index 0000000000000000000000000000000000000000..474cdff13e5d36b5a24645c6b7ad05e124a43b68
--- /dev/null
+++ b/net/docs/url_request.svg
@@ -0,0 +1,596 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by graphviz version 2.34.0 (20130907.0228)
+ -->
+<!-- Title: URLRequestRoot Pages: 1 -->
+<svg width="1879pt" height="777pt"
+ viewBox="0.00 0.00 1879.00 777.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 773)">
+<title>URLRequestRoot</title>
+<polygon fill="white" stroke="white" points="-4,4 -4,-773 1875,-773 1875,4 -4,4"/>
+<g id="clust1" class="cluster"><title>cluster_legend</title>
+<polygon fill="none" stroke="black" points="206,-598 206,-761 784,-761 784,-598 206,-598"/>
+<text text-anchor="middle" x="495" y="-745.8" font-family="Times,serif" font-size="14.00">Legend</text>
+</g>
+<!-- BaseClass -->
+<g id="node1" class="node"><title>BaseClass</title>
+<ellipse fill="none" stroke="black" cx="572" cy="-624" rx="48.1437" ry="18"/>
+<text text-anchor="middle" x="572" y="-620.3" font-family="Times,serif" font-size="14.00">BaseClass</text>
+</g>
+<!-- SubClass -->
+<g id="node2" class="node"><title>SubClass</title>
+<ellipse fill="none" stroke="black" cx="714" cy="-712" rx="61.6163" ry="18"/>
+<text text-anchor="middle" x="714" y="-708.3" font-family="Times,serif" font-size="14.00">Derived Class</text>
+</g>
+<!-- SubClass&#45;&gt;BaseClass -->
+<g id="edge1" class="edge"><title>SubClass&#45;&gt;BaseClass</title>
+<path fill="none" stroke="black" d="M688.285,-695.426C664.835,-681.224 630.074,-660.172 604.666,-644.784"/>
+<polygon fill="none" stroke="black" points="606.47,-641.784 596.103,-639.598 602.844,-647.772 606.47,-641.784"/>
+</g>
+<!-- Interface -->
+<g id="node7" class="node"><title>Interface</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="707" cy="-624" rx="68.3417" ry="18"/>
+<text text-anchor="middle" x="707" y="-620.3" font-family="Times,serif" font-size="14.00">Interface / ABC</text>
+</g>
+<!-- SubClass&#45;&gt;Interface -->
+<g id="edge2" class="edge"><title>SubClass&#45;&gt;Interface</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M712.583,-693.597C711.619,-681.746 710.322,-665.817 709.221,-652.292"/>
+<polygon fill="none" stroke="black" points="712.69,-651.767 708.391,-642.084 705.713,-652.335 712.69,-651.767"/>
+</g>
+<!-- Whole -->
+<g id="node3" class="node"><title>Whole</title>
+<ellipse fill="none" stroke="black" cx="471" cy="-624" rx="35.1455" ry="18"/>
+<text text-anchor="middle" x="471" y="-620.3" font-family="Times,serif" font-size="14.00">Whole</text>
+</g>
+<!-- Part -->
+<g id="node4" class="node"><title>Part</title>
+<ellipse fill="none" stroke="black" cx="607" cy="-712" rx="27" ry="18"/>
+<text text-anchor="middle" x="607" y="-708.3" font-family="Times,serif" font-size="14.00">Part</text>
+</g>
+<!-- Part&#45;&gt;Whole -->
+<g id="edge3" class="edge"><title>Part&#45;&gt;Whole</title>
+<path fill="none" stroke="black" d="M590.5,-697.67C576.832,-686.91 556.691,-671.691 538,-660 528.113,-653.816 517.018,-647.708 506.744,-642.369"/>
+<polygon fill="black" stroke="black" points="506.709,-642.351 499.547,-643.195 496.014,-636.909 503.175,-636.065 506.709,-642.351"/>
+<text text-anchor="middle" x="590.5" y="-664.3" font-family="Times,serif" font-size="14.00">ownership</text>
+</g>
+<!-- Part&#45;&gt;Whole -->
+<g id="edge4" class="edge"><title>Part&#45;&gt;Whole</title>
+<path fill="none" stroke="black" d="M586.373,-700.347C581.421,-698.046 576.091,-695.775 571,-694 537.814,-682.432 521.141,-698.327 494,-676 486.964,-670.212 481.997,-661.819 478.526,-653.507"/>
+<polygon fill="none" stroke="black" points="478.498,-653.425 472.749,-649.071 474.557,-642.09 480.306,-646.444 478.498,-653.425"/>
+<text text-anchor="middle" x="514" y="-664.3" font-family="Times,serif" font-size="14.00">pointer</text>
+</g>
+<!-- A -->
+<g id="node5" class="node"><title>A</title>
+<ellipse fill="none" stroke="black" cx="535" cy="-712" rx="27" ry="18"/>
+<text text-anchor="middle" x="535" y="-708.3" font-family="Times,serif" font-size="14.00">A</text>
+</g>
+<!-- B -->
+<g id="node6" class="node"><title>B</title>
+<ellipse fill="none" stroke="black" cx="391" cy="-624" rx="27" ry="18"/>
+<text text-anchor="middle" x="391" y="-620.3" font-family="Times,serif" font-size="14.00">B</text>
+</g>
+<!-- A&#45;&gt;B -->
+<g id="edge5" class="edge"><title>A&#45;&gt;B</title>
+<path fill="none" stroke="black" d="M514.191,-700.472C508.992,-698.113 503.367,-695.784 498,-694 461.768,-681.957 443.71,-699.981 414,-676 405.037,-668.765 399.442,-657.288 396.019,-647.053"/>
+<polyline fill="none" stroke="black" points="394.507,-642.152 395.981,-646.93 "/>
+<text text-anchor="middle" x="445.5" y="-664.3" font-family="Times,serif" font-size="14.00">association</text>
+<text text-anchor="middle" x="384.507" y="-645.952" font-family="Times,serif" font-size="14.00">?..?</text>
+<text text-anchor="middle" x="504.191" y="-689.272" font-family="Times,serif" font-size="14.00">?..?</text>
+</g>
+<!-- template_class -->
+<g id="node8" class="node"><title>template_class</title>
+<polygon fill="none" stroke="black" points="399,-730 308.505,-712 399,-694 489.495,-712 399,-730"/>
+<text text-anchor="middle" x="399" y="-708.3" font-family="Times,serif" font-size="14.00">template_class</text>
+</g>
+<!-- Factory -->
+<g id="node9" class="node"><title>Factory</title>
+<ellipse fill="none" stroke="black" cx="252" cy="-712" rx="38.0212" ry="18"/>
+<text text-anchor="middle" x="252" y="-708.3" font-family="Times,serif" font-size="14.00">Factory</text>
+</g>
+<!-- object -->
+<g id="node10" class="node"><title>object</title>
+<ellipse fill="none" stroke="black" cx="252" cy="-624" rx="33.2209" ry="18"/>
+<text text-anchor="middle" x="252" y="-620.3" font-family="Times,serif" font-size="14.00">object</text>
+</g>
+<!-- Factory&#45;&gt;object -->
+<g id="edge6" class="edge"><title>Factory&#45;&gt;object</title>
+<path fill="none" stroke="black" d="M252,-693.597C252,-684.562 252,-673.157 252,-662.254"/>
+<polygon fill="black" stroke="black" points="252,-642.084 256.5,-652.084 252,-647.084 252,-652.084 252,-652.084 252,-652.084 252,-647.084 247.5,-652.084 252,-642.084 252,-642.084"/>
+<polygon fill="black" stroke="black" points="252,-652.084 256.5,-662.084 252,-657.084 252,-662.084 252,-662.084 252,-662.084 252,-657.084 247.5,-662.084 252,-652.084 252,-652.084"/>
+</g>
+<!-- URLRequestContext -->
+<g id="node11" class="node"><title>URLRequestContext</title>
+<ellipse fill="none" stroke="black" cx="133" cy="-18" rx="87.1385" ry="18"/>
+<text text-anchor="middle" x="133" y="-14.3" font-family="Times,serif" font-size="14.00">URLRequestContext</text>
+</g>
+<!-- URLRequest -->
+<g id="node13" class="node"><title>URLRequest</title>
+<ellipse fill="none" stroke="black" cx="314" cy="-18" rx="58.2422" ry="18"/>
+<text text-anchor="middle" x="314" y="-14.3" font-family="Times,serif" font-size="14.00">URLRequest</text>
+</g>
+<!-- URLRequestContext&#45;&gt;URLRequest -->
+<g id="edge12" class="edge"><title>URLRequestContext&#45;&gt;URLRequest</title>
+<path fill="none" stroke="black" d="M220.318,-18C225.35,-18 230.382,-18 235.414,-18"/>
+<polygon fill="black" stroke="black" points="255.449,-18 245.449,-22.5 250.449,-18 245.449,-18 245.449,-18 245.449,-18 250.449,-18 245.449,-13.5 255.449,-18 255.449,-18"/>
+<polygon fill="black" stroke="black" points="245.449,-18 235.449,-22.5001 240.449,-18.0001 235.449,-18.0001 235.449,-18.0001 235.449,-18.0001 240.449,-18.0001 235.449,-13.5001 245.449,-18 245.449,-18"/>
+</g>
+<!-- URLRequestJobManager -->
+<g id="node12" class="node"><title>URLRequestJobManager</title>
+<ellipse fill="none" stroke="black" cx="104" cy="-92" rx="103.012" ry="18"/>
+<text text-anchor="middle" x="104" y="-88.3" font-family="Times,serif" font-size="14.00">URLRequestJobManager</text>
+</g>
+<!-- URLRequestJob -->
+<g id="node14" class="node"><title>URLRequestJob</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="314" cy="-92" rx="70.2668" ry="18"/>
+<text text-anchor="middle" x="314" y="-88.3" font-family="Times,serif" font-size="14.00">URLRequestJob</text>
+</g>
+<!-- URLRequestJobManager&#45;&gt;URLRequestJob -->
+<g id="edge13" class="edge"><title>URLRequestJobManager&#45;&gt;URLRequestJob</title>
+<path fill="none" stroke="black" d="M207.359,-92C212.584,-92 217.808,-92 223.033,-92"/>
+<polygon fill="black" stroke="black" points="243.184,-92 233.184,-96.5 238.184,-92 233.184,-92 233.184,-92 233.184,-92 238.184,-92 233.184,-87.5 243.184,-92 243.184,-92"/>
+<polygon fill="black" stroke="black" points="233.184,-92 223.184,-96.5001 228.184,-92.0001 223.184,-92.0001 223.184,-92.0001 223.184,-92.0001 228.184,-92.0001 223.184,-87.5001 233.184,-92 233.184,-92"/>
+</g>
+<!-- URLRequestJob&#45;&gt;URLRequest -->
+<g id="edge9" class="edge"><title>URLRequestJob&#45;&gt;URLRequest</title>
+<path fill="none" stroke="black" d="M314,-73.937C314,-66.3374 314,-57.1638 314,-48.5081"/>
+<polygon fill="black" stroke="black" points="314,-48.4407 310,-42.4407 314,-36.4407 318,-42.4406 314,-48.4407"/>
+</g>
+<!-- URLRequestJob_Others -->
+<g id="node15" class="node"><title>URLRequestJob_Others</title>
+<ellipse fill="none" stroke="black" cx="46" cy="-166" rx="46.1964" ry="18"/>
+<text text-anchor="middle" x="46" y="-162.3" font-family="Times,serif" font-size="14.00">...others...</text>
+</g>
+<!-- URLRequestJob_Others&#45;&gt;URLRequestJob -->
+<g id="edge7" class="edge"><title>URLRequestJob_Others&#45;&gt;URLRequestJob</title>
+<path fill="none" stroke="black" d="M81.1855,-154.079C88.0725,-152.009 95.2514,-149.899 102,-148 153.507,-133.507 212.445,-118.329 255.082,-107.598"/>
+<polygon fill="none" stroke="black" points="256.163,-110.935 265.009,-105.105 254.458,-104.146 256.163,-110.935"/>
+</g>
+<!-- URLRequestHttpJob -->
+<g id="node16" class="node"><title>URLRequestHttpJob</title>
+<ellipse fill="none" stroke="black" cx="314" cy="-166" rx="87.1385" ry="18"/>
+<text text-anchor="middle" x="314" y="-162.3" font-family="Times,serif" font-size="14.00">URLRequestHttpJob</text>
+</g>
+<!-- URLRequestHttpJob&#45;&gt;URLRequestJob -->
+<g id="edge8" class="edge"><title>URLRequestHttpJob&#45;&gt;URLRequestJob</title>
+<path fill="none" stroke="black" d="M314,-147.937C314,-139.807 314,-129.876 314,-120.705"/>
+<polygon fill="none" stroke="black" points="317.5,-120.441 314,-110.441 310.5,-120.441 317.5,-120.441"/>
+</g>
+<!-- Filter -->
+<g id="node17" class="node"><title>Filter</title>
+<ellipse fill="none" stroke="black" cx="467" cy="-166" rx="30.3206" ry="18"/>
+<text text-anchor="middle" x="467" y="-162.3" font-family="Times,serif" font-size="14.00">Filter</text>
+</g>
+<!-- URLRequestHttpJob&#45;&gt;Filter -->
+<g id="edge14" class="edge"><title>URLRequestHttpJob&#45;&gt;Filter</title>
+<path fill="none" stroke="black" d="M401.258,-166C406.334,-166 411.41,-166 416.486,-166"/>
+<polygon fill="black" stroke="black" points="436.697,-166 426.697,-170.5 431.697,-166 426.697,-166 426.697,-166 426.697,-166 431.697,-166 426.697,-161.5 436.697,-166 436.697,-166"/>
+<polygon fill="black" stroke="black" points="426.697,-166 416.697,-170.5 421.697,-166 416.697,-166 416.697,-166 416.697,-166 421.697,-166 416.697,-161.5 426.697,-166 426.697,-166"/>
+</g>
+<!-- Filter&#45;&gt;URLRequestJob -->
+<g id="edge10" class="edge"><title>Filter&#45;&gt;URLRequestJob</title>
+<path fill="none" stroke="black" d="M444.094,-154.221C421.235,-143.463 385.544,-126.668 357.324,-113.388"/>
+<polygon fill="black" stroke="black" points="356.996,-113.233 349.864,-114.298 346.138,-108.124 353.27,-107.059 356.996,-113.233"/>
+</g>
+<!-- Filter&#45;&gt;Filter -->
+<g id="edge11" class="edge"><title>Filter&#45;&gt;Filter</title>
+<path fill="none" stroke="black" d="M495.103,-172.724C505.969,-173.022 515,-170.781 515,-166 515,-163.236 511.981,-161.321 507.335,-160.254"/>
+<polygon fill="black" stroke="black" points="507.065,-160.233 500.765,-163.742 495.103,-159.276 501.403,-155.767 507.065,-160.233"/>
+<text text-anchor="middle" x="506.103" y="-176.524" font-family="Times,serif" font-size="14.00">0..1</text>
+</g>
+<!-- HttpTransactionFactory -->
+<g id="node18" class="node"><title>HttpTransactionFactory</title>
+<ellipse fill="none" stroke="black" cx="374" cy="-240" rx="97.237" ry="18"/>
+<text text-anchor="middle" x="374" y="-236.3" font-family="Times,serif" font-size="14.00">HttpTransactionFactory</text>
+</g>
+<!-- HttpTransaction -->
+<g id="node21" class="node"><title>HttpTransaction</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="649" cy="-240" rx="69.3156" ry="18"/>
+<text text-anchor="middle" x="649" y="-236.3" font-family="Times,serif" font-size="14.00">HttpTransaction</text>
+</g>
+<!-- HttpTransactionFactory&#45;&gt;HttpTransaction -->
+<g id="edge23" class="edge"><title>HttpTransactionFactory&#45;&gt;HttpTransaction</title>
+<path fill="none" stroke="black" d="M471.485,-240C500.782,-240 530.079,-240 559.376,-240"/>
+<polygon fill="black" stroke="black" points="579.658,-240 569.658,-244.5 574.658,-240 569.658,-240 569.658,-240 569.658,-240 574.658,-240 569.658,-235.5 579.658,-240 579.658,-240"/>
+<polygon fill="black" stroke="black" points="569.658,-240 559.658,-244.5 564.658,-240 559.658,-240 559.658,-240 559.658,-240 564.658,-240 559.658,-235.5 569.658,-240 569.658,-240"/>
+</g>
+<!-- HttpCache -->
+<g id="node19" class="node"><title>HttpCache</title>
+<ellipse fill="none" stroke="black" cx="160" cy="-166" rx="49.0941" ry="18"/>
+<text text-anchor="middle" x="160" y="-162.3" font-family="Times,serif" font-size="14.00">HttpCache</text>
+</g>
+<!-- HttpCache&#45;&gt;HttpTransactionFactory -->
+<g id="edge18" class="edge"><title>HttpCache&#45;&gt;HttpTransactionFactory</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M195.015,-178.781C228.842,-190.162 280.57,-207.566 319.732,-220.742"/>
+<polygon fill="none" stroke="black" points="318.805,-224.122 329.399,-223.994 321.037,-217.488 318.805,-224.122"/>
+</g>
+<!-- HttpCache_Transaction -->
+<g id="node22" class="node"><title>HttpCache_Transaction</title>
+<ellipse fill="none" stroke="black" cx="669" cy="-166" rx="97.237" ry="18"/>
+<text text-anchor="middle" x="669" y="-162.3" font-family="Times,serif" font-size="14.00">HttpCache::Transaction</text>
+</g>
+<!-- HttpCache&#45;&gt;HttpCache_Transaction -->
+<g id="edge22" class="edge"><title>HttpCache&#45;&gt;HttpCache_Transaction</title>
+<path fill="none" stroke="black" d="M182.344,-182.086C194.827,-190.078 211.045,-198.887 227,-203 296.291,-220.861 478.243,-213.661 549,-203 568.473,-200.066 589.144,-194.596 607.743,-188.745"/>
+<polygon fill="black" stroke="black" points="626.957,-182.348 618.891,-189.777 622.213,-183.928 617.469,-185.507 617.469,-185.507 617.469,-185.507 622.213,-183.928 616.048,-181.238 626.957,-182.348 626.957,-182.348"/>
+<polygon fill="black" stroke="black" points="617.469,-185.507 609.403,-192.935 612.725,-187.086 607.981,-188.666 607.981,-188.666 607.981,-188.666 612.725,-187.086 606.56,-184.396 617.469,-185.507 617.469,-185.507"/>
+</g>
+<!-- HttpNetworkLayer -->
+<g id="node20" class="node"><title>HttpNetworkLayer</title>
+<ellipse fill="none" stroke="black" cx="374" cy="-314" rx="79.4147" ry="18"/>
+<text text-anchor="middle" x="374" y="-310.3" font-family="Times,serif" font-size="14.00">HttpNetworkLayer</text>
+</g>
+<!-- HttpNetworkLayer&#45;&gt;HttpTransactionFactory -->
+<g id="edge19" class="edge"><title>HttpNetworkLayer&#45;&gt;HttpTransactionFactory</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M374,-295.937C374,-287.807 374,-277.876 374,-268.705"/>
+<polygon fill="none" stroke="black" points="377.5,-268.441 374,-258.441 370.5,-268.441 377.5,-268.441"/>
+</g>
+<!-- HttpNetworkTransaction -->
+<g id="node23" class="node"><title>HttpNetworkTransaction</title>
+<ellipse fill="none" stroke="black" cx="685" cy="-314" rx="101.087" ry="18"/>
+<text text-anchor="middle" x="685" y="-310.3" font-family="Times,serif" font-size="14.00">HttpNetworkTransaction</text>
+</g>
+<!-- HttpNetworkLayer&#45;&gt;HttpNetworkTransaction -->
+<g id="edge24" class="edge"><title>HttpNetworkLayer&#45;&gt;HttpNetworkTransaction</title>
+<path fill="none" stroke="black" d="M402.908,-330.888C421.858,-340.956 447.563,-352.766 472,-358 512.417,-366.657 524.303,-365.226 565,-358 587.072,-354.081 610.41,-346.403 630.579,-338.543"/>
+<polygon fill="black" stroke="black" points="649.163,-330.913 641.621,-338.874 644.537,-332.812 639.912,-334.711 639.912,-334.711 639.912,-334.711 644.537,-332.812 638.203,-330.548 649.163,-330.913 649.163,-330.913"/>
+<polygon fill="black" stroke="black" points="639.912,-334.711 632.371,-342.672 635.287,-336.61 630.662,-338.51 630.662,-338.51 630.662,-338.51 635.287,-336.61 628.952,-334.347 639.912,-334.711 639.912,-334.711"/>
+</g>
+<!-- HttpTransaction&#45;&gt;URLRequestHttpJob -->
+<g id="edge21" class="edge"><title>HttpTransaction&#45;&gt;URLRequestHttpJob</title>
+<path fill="none" stroke="black" d="M597.39,-227.908C540.232,-215.623 447.759,-195.748 384.08,-182.062"/>
+<polygon fill="black" stroke="black" points="383.876,-182.018 377.17,-184.668 372.144,-179.497 378.851,-176.847 383.876,-182.018"/>
+</g>
+<!-- HttpTransaction&#45;&gt;HttpCache_Transaction -->
+<g id="edge20" class="edge"><title>HttpTransaction&#45;&gt;HttpCache_Transaction</title>
+<path fill="none" stroke="black" d="M647.9,-221.937C649.254,-214.046 651.658,-204.459 654.46,-195.516"/>
+<polygon fill="black" stroke="black" points="654.542,-195.28 652.725,-188.302 658.467,-183.941 660.285,-190.919 654.542,-195.28"/>
+</g>
+<!-- HttpCache_Transaction&#45;&gt;HttpTransaction -->
+<g id="edge15" class="edge"><title>HttpCache_Transaction&#45;&gt;HttpTransaction</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M670.035,-184.441C668.574,-192.803 665.962,-203.005 662.958,-212.315"/>
+<polygon fill="none" stroke="black" points="659.59,-211.342 659.58,-221.937 666.195,-213.661 659.59,-211.342"/>
+</g>
+<!-- HttpNetworkTransaction&#45;&gt;HttpTransaction -->
+<g id="edge16" class="edge"><title>HttpNetworkTransaction&#45;&gt;HttpTransaction</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M676.469,-295.937C672.164,-287.329 666.851,-276.702 662.047,-267.095"/>
+<polygon fill="none" stroke="black" points="665.073,-265.32 657.47,-257.941 658.812,-268.45 665.073,-265.32"/>
+</g>
+<!-- HttpStreamRequest_Delegate -->
+<g id="node30" class="node"><title>HttpStreamRequest_Delegate</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="948" cy="-240" rx="119.384" ry="18"/>
+<text text-anchor="middle" x="948" y="-236.3" font-family="Times,serif" font-size="14.00">HttpStreamRequest::Delegate</text>
+</g>
+<!-- HttpNetworkTransaction&#45;&gt;HttpStreamRequest_Delegate -->
+<g id="edge25" class="edge"><title>HttpNetworkTransaction&#45;&gt;HttpStreamRequest_Delegate</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M737.59,-298.603C779.538,-287.119 838.486,-270.981 883.321,-258.707"/>
+<polygon fill="none" stroke="black" points="884.517,-262.008 893.238,-255.992 882.669,-255.257 884.517,-262.008"/>
+</g>
+<!-- HttpTransaction_Others -->
+<g id="node24" class="node"><title>HttpTransaction_Others</title>
+<ellipse fill="none" stroke="black" cx="519" cy="-314" rx="46.1964" ry="18"/>
+<text text-anchor="middle" x="519" y="-310.3" font-family="Times,serif" font-size="14.00">...others...</text>
+</g>
+<!-- HttpTransaction_Others&#45;&gt;HttpTransaction -->
+<g id="edge17" class="edge"><title>HttpTransaction_Others&#45;&gt;HttpTransaction</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M544.684,-298.775C563.849,-288.161 590.318,-273.501 611.798,-261.604"/>
+<polygon fill="none" stroke="black" points="613.61,-264.602 620.662,-256.695 610.218,-258.478 613.61,-264.602"/>
+</g>
+<!-- HttpStreamFactoryImpl -->
+<g id="node25" class="node"><title>HttpStreamFactoryImpl</title>
+<ellipse fill="none" stroke="black" cx="543" cy="-92" rx="97.237" ry="18"/>
+<text text-anchor="middle" x="543" y="-88.3" font-family="Times,serif" font-size="14.00">HttpStreamFactoryImpl</text>
+</g>
+<!-- HttpStreamRequest -->
+<g id="node26" class="node"><title>HttpStreamRequest</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="801" cy="-92" rx="81.3398" ry="18"/>
+<text text-anchor="middle" x="801" y="-88.3" font-family="Times,serif" font-size="14.00">HttpStreamRequest</text>
+</g>
+<!-- HttpStreamFactoryImpl&#45;&gt;HttpStreamRequest -->
+<g id="edge35" class="edge"><title>HttpStreamFactoryImpl&#45;&gt;HttpStreamRequest</title>
+<path fill="none" stroke="black" d="M640.254,-92C659.93,-92 679.606,-92 699.283,-92"/>
+<polygon fill="black" stroke="black" points="719.371,-92 709.371,-96.5 714.371,-92 709.371,-92 709.371,-92 709.371,-92 714.371,-92 709.371,-87.5 719.371,-92 719.371,-92"/>
+<polygon fill="black" stroke="black" points="709.371,-92 699.371,-96.5001 704.371,-92.0001 699.371,-92.0001 699.371,-92.0001 699.371,-92.0001 704.371,-92.0001 699.371,-87.5001 709.371,-92 709.371,-92"/>
+</g>
+<!-- HttpStreamRequest&#45;&gt;HttpNetworkTransaction -->
+<g id="edge30" class="edge"><title>HttpStreamRequest&#45;&gt;HttpNetworkTransaction</title>
+<path fill="none" stroke="black" d="M727.742,-100.027C665.59,-107.683 583.358,-122.401 563,-148 532.508,-186.341 541.956,-217.833 570,-258 581.436,-274.38 599.105,-286.046 617.189,-294.287"/>
+<polygon fill="black" stroke="black" points="617.377,-294.365 624.455,-292.985 628.451,-298.987 621.374,-300.368 617.377,-294.365"/>
+</g>
+<!-- HttpStream -->
+<g id="node27" class="node"><title>HttpStream</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="1254" cy="-92" rx="52.4675" ry="18"/>
+<text text-anchor="middle" x="1254" y="-88.3" font-family="Times,serif" font-size="14.00">HttpStream</text>
+</g>
+<!-- HttpStreamRequest&#45;&gt;HttpStream -->
+<g id="edge36" class="edge"><title>HttpStreamRequest&#45;&gt;HttpStream</title>
+<path fill="none" stroke="black" d="M882.841,-92C982.3,-92 1081.76,-92 1181.22,-92"/>
+<polygon fill="black" stroke="black" points="1201.44,-92 1191.44,-96.5 1196.44,-92 1191.44,-92 1191.44,-92 1191.44,-92 1196.44,-92 1191.44,-87.5 1201.44,-92 1201.44,-92"/>
+<polygon fill="black" stroke="black" points="1191.44,-92 1181.44,-96.5001 1186.44,-92.0001 1181.44,-92.0001 1181.44,-92.0001 1181.44,-92.0001 1186.44,-92.0001 1181.44,-87.5001 1191.44,-92 1191.44,-92"/>
+</g>
+<!-- HttpStream&#45;&gt;HttpNetworkTransaction -->
+<g id="edge31" class="edge"><title>HttpStream&#45;&gt;HttpNetworkTransaction</title>
+<path fill="none" stroke="black" d="M1201.95,-94.5406C1100.03,-98.3513 878.375,-110.782 813,-148 811.124,-149.068 741.098,-239.996 705.434,-286.395"/>
+<polygon fill="black" stroke="black" points="705.288,-286.585 704.803,-293.78 697.976,-296.1 698.46,-288.906 705.288,-286.585"/>
+</g>
+<!-- HttpStreamFactoryImpl_Request -->
+<g id="node28" class="node"><title>HttpStreamFactoryImpl_Request</title>
+<ellipse fill="none" stroke="black" cx="954" cy="-166" rx="131.408" ry="18"/>
+<text text-anchor="middle" x="954" y="-162.3" font-family="Times,serif" font-size="14.00">HttpStreamFactoryImpl::Request</text>
+</g>
+<!-- HttpStreamFactoryImpl_Request&#45;&gt;HttpStreamRequest -->
+<g id="edge26" class="edge"><title>HttpStreamFactoryImpl_Request&#45;&gt;HttpStreamRequest</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M918.899,-148.482C896.39,-137.889 867.038,-124.077 843.253,-112.884"/>
+<polygon fill="none" stroke="black" points="844.642,-109.669 834.104,-108.578 841.662,-116.003 844.642,-109.669"/>
+</g>
+<!-- HttpStreamFactoryImpl_Job -->
+<g id="node29" class="node"><title>HttpStreamFactoryImpl_Job</title>
+<ellipse fill="none" stroke="black" cx="1249" cy="-240" rx="115.06" ry="18"/>
+<text text-anchor="middle" x="1249" y="-236.3" font-family="Times,serif" font-size="14.00">HttpStreamFactoryImpl::Job</text>
+</g>
+<!-- HttpStreamFactoryImpl_Job&#45;&gt;HttpStreamFactoryImpl_Request -->
+<g id="edge33" class="edge"><title>HttpStreamFactoryImpl_Job&#45;&gt;HttpStreamFactoryImpl_Request</title>
+<path fill="none" stroke="black" d="M1189.66,-224.516C1142.77,-213.073 1077.12,-197.049 1027.01,-184.82"/>
+<polygon fill="black" stroke="black" points="1026.94,-184.801 1020.16,-187.264 1015.28,-181.956 1022.05,-179.493 1026.94,-184.801"/>
+<text text-anchor="middle" x="1178.66" y="-213.316" font-family="Times,serif" font-size="14.00">1..*</text>
+</g>
+<!-- HttpStreamRequest_Delegate&#45;&gt;HttpStreamFactoryImpl_Request -->
+<g id="edge34" class="edge"><title>HttpStreamRequest_Delegate&#45;&gt;HttpStreamFactoryImpl_Request</title>
+<path fill="none" stroke="black" d="M949.422,-221.937C950.055,-214.337 950.82,-205.164 951.541,-196.508"/>
+<polygon fill="none" stroke="black" points="951.55,-196.399 948.062,-190.088 952.547,-184.441 956.034,-190.752 951.55,-196.399"/>
+</g>
+<!-- HttpBasicStream -->
+<g id="node31" class="node"><title>HttpBasicStream</title>
+<ellipse fill="none" stroke="black" cx="1496" cy="-166" rx="72.192" ry="18"/>
+<text text-anchor="middle" x="1496" y="-162.3" font-family="Times,serif" font-size="14.00">HttpBasicStream</text>
+</g>
+<!-- HttpBasicStream&#45;&gt;HttpStream -->
+<g id="edge27" class="edge"><title>HttpBasicStream&#45;&gt;HttpStream</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1451.33,-151.71C1409.01,-139.12 1345.64,-120.265 1302.2,-107.34"/>
+<polygon fill="none" stroke="black" points="1303.01,-103.93 1292.43,-104.433 1301.01,-110.64 1303.01,-103.93"/>
+</g>
+<!-- QuicHttpStream -->
+<g id="node32" class="node"><title>QuicHttpStream</title>
+<ellipse fill="none" stroke="black" cx="1174" cy="-166" rx="70.2909" ry="18"/>
+<text text-anchor="middle" x="1174" y="-162.3" font-family="Times,serif" font-size="14.00">QuicHttpStream</text>
+</g>
+<!-- QuicHttpStream&#45;&gt;HttpStream -->
+<g id="edge28" class="edge"><title>QuicHttpStream&#45;&gt;HttpStream</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1192.55,-148.301C1203.21,-138.715 1216.74,-126.537 1228.39,-116.05"/>
+<polygon fill="none" stroke="black" points="1231,-118.405 1236.1,-109.113 1226.32,-113.202 1231,-118.405"/>
+</g>
+<!-- SpdyHttpStream -->
+<g id="node33" class="node"><title>SpdyHttpStream</title>
+<ellipse fill="none" stroke="black" cx="1334" cy="-166" rx="71.2405" ry="18"/>
+<text text-anchor="middle" x="1334" y="-162.3" font-family="Times,serif" font-size="14.00">SpdyHttpStream</text>
+</g>
+<!-- SpdyHttpStream&#45;&gt;HttpStream -->
+<g id="edge29" class="edge"><title>SpdyHttpStream&#45;&gt;HttpStream</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1315.45,-148.301C1304.79,-138.715 1291.26,-126.537 1279.61,-116.05"/>
+<polygon fill="none" stroke="black" points="1281.68,-113.202 1271.9,-109.113 1277,-118.405 1281.68,-113.202"/>
+</g>
+<!-- HttpBasicState -->
+<g id="node34" class="node"><title>HttpBasicState</title>
+<ellipse fill="none" stroke="black" cx="1471" cy="-240" rx="64.4914" ry="18"/>
+<text text-anchor="middle" x="1471" y="-236.3" font-family="Times,serif" font-size="14.00">HttpBasicState</text>
+</g>
+<!-- HttpBasicState&#45;&gt;HttpBasicStream -->
+<g id="edge32" class="edge"><title>HttpBasicState&#45;&gt;HttpBasicStream</title>
+<path fill="none" stroke="black" d="M1476.92,-221.937C1479.66,-214.046 1482.99,-204.459 1486.1,-195.516"/>
+<polygon fill="black" stroke="black" points="1486.18,-195.277 1484.37,-188.296 1490.12,-183.941 1491.93,-190.921 1486.18,-195.277"/>
+</g>
+<!-- ClientSocketPool -->
+<g id="node35" class="node"><title>ClientSocketPool</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="1629" cy="-240" rx="74.6146" ry="18"/>
+<text text-anchor="middle" x="1629" y="-236.3" font-family="Times,serif" font-size="14.00">ClientSocketPool</text>
+</g>
+<!-- ClientSocketHandle -->
+<g id="node53" class="node"><title>ClientSocketHandle</title>
+<ellipse fill="none" stroke="black" cx="1473" cy="-314" rx="83.2649" ry="18"/>
+<text text-anchor="middle" x="1473" y="-310.3" font-family="Times,serif" font-size="14.00">ClientSocketHandle</text>
+</g>
+<!-- ClientSocketPool&#45;&gt;ClientSocketHandle -->
+<g id="edge56" class="edge"><title>ClientSocketPool&#45;&gt;ClientSocketHandle</title>
+<path fill="none" stroke="black" d="M1596.02,-256.222C1573.29,-266.713 1542.8,-280.783 1517.87,-292.291"/>
+<polygon fill="none" stroke="black" points="1517.75,-292.348 1513.97,-298.495 1506.85,-297.377 1510.62,-291.231 1517.75,-292.348"/>
+</g>
+<!-- TransportClientSocketPool -->
+<g id="node36" class="node"><title>TransportClientSocketPool</title>
+<ellipse fill="none" stroke="black" cx="1244" cy="-314" rx="109.261" ry="18"/>
+<text text-anchor="middle" x="1244" y="-310.3" font-family="Times,serif" font-size="14.00">TransportClientSocketPool</text>
+</g>
+<!-- TransportClientSocketPool&#45;&gt;ClientSocketPool -->
+<g id="edge37" class="edge"><title>TransportClientSocketPool&#45;&gt;ClientSocketPool</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1315.28,-300.264C1376.1,-289.318 1465.86,-272.975 1544,-258 1550.3,-256.792 1556.87,-255.514 1563.43,-254.224"/>
+<polygon fill="none" stroke="black" points="1564.57,-257.566 1573.7,-252.194 1563.21,-250.699 1564.57,-257.566"/>
+</g>
+<!-- TransportClientSocketPool&#45;&gt;ClientSocketHandle -->
+<g id="edge59" class="edge"><title>TransportClientSocketPool&#45;&gt;ClientSocketHandle</title>
+<path fill="none" stroke="black" d="M1353.58,-314C1358.82,-314 1364.06,-314 1369.29,-314"/>
+<polygon fill="black" stroke="black" points="1389.5,-314 1379.5,-318.5 1384.5,-314 1379.5,-314 1379.5,-314 1379.5,-314 1384.5,-314 1379.5,-309.5 1389.5,-314 1389.5,-314"/>
+<polygon fill="black" stroke="black" points="1379.5,-314 1369.5,-318.5 1374.5,-314 1369.5,-314 1369.5,-314 1369.5,-314 1374.5,-314 1369.5,-309.5 1379.5,-314 1379.5,-314"/>
+</g>
+<!-- SSLClientSocketPool -->
+<g id="node37" class="node"><title>SSLClientSocketPool</title>
+<ellipse fill="none" stroke="black" cx="1781" cy="-314" rx="90.0136" ry="18"/>
+<text text-anchor="middle" x="1781" y="-310.3" font-family="Times,serif" font-size="14.00">SSLClientSocketPool</text>
+</g>
+<!-- SSLClientSocketPool&#45;&gt;ClientSocketPool -->
+<g id="edge38" class="edge"><title>SSLClientSocketPool&#45;&gt;ClientSocketPool</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1747.64,-297.199C1724.96,-286.455 1694.79,-272.162 1670.55,-260.679"/>
+<polygon fill="none" stroke="black" points="1671.77,-257.388 1661.24,-256.27 1668.78,-263.714 1671.77,-257.388"/>
+</g>
+<!-- ClientSocketPool_Others -->
+<g id="node38" class="node"><title>ClientSocketPool_Others</title>
+<ellipse fill="none" stroke="black" cx="1626" cy="-314" rx="46.1964" ry="18"/>
+<text text-anchor="middle" x="1626" y="-310.3" font-family="Times,serif" font-size="14.00">...others...</text>
+</g>
+<!-- ClientSocketPool_Others&#45;&gt;ClientSocketPool -->
+<g id="edge39" class="edge"><title>ClientSocketPool_Others&#45;&gt;ClientSocketPool</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1626.71,-295.937C1627.05,-287.807 1627.46,-277.876 1627.85,-268.705"/>
+<polygon fill="none" stroke="black" points="1631.35,-268.578 1628.27,-258.441 1624.36,-268.286 1631.35,-268.578"/>
+</g>
+<!-- ClientSocketPoolBase -->
+<g id="node39" class="node"><title>ClientSocketPoolBase</title>
+<polygon fill="none" stroke="black" points="1244,-420 1113.72,-402 1244,-384 1374.28,-402 1244,-420"/>
+<text text-anchor="middle" x="1244" y="-398.3" font-family="Times,serif" font-size="14.00">ClientSocketPoolBase</text>
+</g>
+<!-- ClientSocketPoolBase&#45;&gt;TransportClientSocketPool -->
+<g id="edge50" class="edge"><title>ClientSocketPoolBase&#45;&gt;TransportClientSocketPool</title>
+<path fill="none" stroke="black" d="M1244,-383.597C1244,-372.333 1244,-357.384 1244,-344.317"/>
+<polygon fill="black" stroke="black" points="1244,-344.084 1240,-338.084 1244,-332.084 1248,-338.084 1244,-344.084"/>
+<text text-anchor="middle" x="1311" y="-354.3" font-family="Times,serif" font-size="14.00">TransportSocketParams</text>
+</g>
+<!-- ClientSocketPoolBaseHelper -->
+<g id="node40" class="node"><title>ClientSocketPoolBaseHelper</title>
+<ellipse fill="none" stroke="black" cx="911" cy="-624" rx="116.484" ry="18"/>
+<text text-anchor="middle" x="911" y="-620.3" font-family="Times,serif" font-size="14.00">ClientSocketPoolBaseHelper</text>
+</g>
+<!-- ClientSocketPoolBaseHelper&#45;&gt;ClientSocketPoolBase -->
+<g id="edge49" class="edge"><title>ClientSocketPoolBaseHelper&#45;&gt;ClientSocketPoolBase</title>
+<path fill="none" stroke="black" d="M834.046,-610.419C809.796,-602.428 785.56,-589.363 771,-568 761.989,-554.779 761.419,-544.814 771,-532 818.185,-468.896 1044.51,-429.596 1166.19,-412.674"/>
+<polygon fill="black" stroke="black" points="1166.46,-412.638 1171.86,-407.861 1178.35,-411.01 1172.94,-415.787 1166.46,-412.638"/>
+</g>
+<!-- ConnectJob_Delegate -->
+<g id="node46" class="node"><title>ConnectJob_Delegate</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="1140" cy="-550" rx="90.4879" ry="18"/>
+<text text-anchor="middle" x="1140" y="-546.3" font-family="Times,serif" font-size="14.00">ConnectJob::Delegate</text>
+</g>
+<!-- ClientSocketPoolBaseHelper&#45;&gt;ConnectJob_Delegate -->
+<g id="edge40" class="edge"><title>ClientSocketPoolBaseHelper&#45;&gt;ConnectJob_Delegate</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M959.845,-607.643C996.14,-596.231 1045.73,-580.64 1083.69,-568.704"/>
+<polygon fill="none" stroke="black" points="1085.08,-571.935 1093.57,-565.597 1082.98,-565.257 1085.08,-571.935"/>
+</g>
+<!-- ConnectJobFactory -->
+<g id="node41" class="node"><title>ConnectJobFactory</title>
+<ellipse fill="none" stroke="black" cx="1256" cy="-476" rx="81.3646" ry="18"/>
+<text text-anchor="middle" x="1256" y="-472.3" font-family="Times,serif" font-size="14.00">ConnectJobFactory</text>
+</g>
+<!-- ConnectJobFactory&#45;&gt;ClientSocketPoolBase -->
+<g id="edge52" class="edge"><title>ConnectJobFactory&#45;&gt;ClientSocketPoolBase</title>
+<path fill="none" stroke="black" d="M1253.16,-457.937C1251.86,-450.136 1250.28,-440.676 1248.8,-431.821"/>
+<polygon fill="black" stroke="black" points="1248.8,-431.777 1243.86,-426.517 1246.82,-419.941 1251.76,-425.201 1248.8,-431.777"/>
+</g>
+<!-- ConnectJob -->
+<g id="node42" class="node"><title>ConnectJob</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="1085" cy="-476" rx="53.4184" ry="18"/>
+<text text-anchor="middle" x="1085" y="-472.3" font-family="Times,serif" font-size="14.00">ConnectJob</text>
+</g>
+<!-- ConnectJobFactory&#45;&gt;ConnectJob -->
+<g id="edge58" class="edge"><title>ConnectJobFactory&#45;&gt;ConnectJob</title>
+<path fill="none" stroke="black" d="M1174.49,-476C1169.28,-476 1164.07,-476 1158.86,-476"/>
+<polygon fill="black" stroke="black" points="1138.77,-476 1148.77,-471.5 1143.77,-476 1148.77,-476 1148.77,-476 1148.77,-476 1143.77,-476 1148.77,-480.5 1138.77,-476 1138.77,-476"/>
+<polygon fill="black" stroke="black" points="1148.77,-476 1158.77,-471.5 1153.77,-476 1158.77,-476 1158.77,-476 1158.77,-476 1153.77,-476 1158.77,-480.5 1148.77,-476 1148.77,-476"/>
+</g>
+<!-- TransportConnectJob -->
+<g id="node43" class="node"><title>TransportConnectJob</title>
+<ellipse fill="none" stroke="black" cx="1338" cy="-550" rx="89.0632" ry="18"/>
+<text text-anchor="middle" x="1338" y="-546.3" font-family="Times,serif" font-size="14.00">TransportConnectJob</text>
+</g>
+<!-- TransportConnectJob&#45;&gt;ConnectJob -->
+<g id="edge44" class="edge"><title>TransportConnectJob&#45;&gt;ConnectJob</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1288.62,-534.947C1244.1,-522.277 1178.97,-503.743 1134.44,-491.069"/>
+<polygon fill="none" stroke="black" points="1135.28,-487.669 1124.7,-488.299 1133.36,-494.402 1135.28,-487.669"/>
+</g>
+<!-- SSLConnectJob -->
+<g id="node44" class="node"><title>SSLConnectJob</title>
+<ellipse fill="none" stroke="black" cx="850" cy="-550" rx="69.3156" ry="18"/>
+<text text-anchor="middle" x="850" y="-546.3" font-family="Times,serif" font-size="14.00">SSLConnectJob</text>
+</g>
+<!-- SSLConnectJob&#45;&gt;ConnectJob -->
+<g id="edge45" class="edge"><title>SSLConnectJob&#45;&gt;ConnectJob</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M893.103,-535.794C933.829,-523.316 994.813,-504.632 1037.06,-491.689"/>
+<polygon fill="none" stroke="black" points="1038.3,-494.969 1046.83,-488.693 1036.25,-488.276 1038.3,-494.969"/>
+</g>
+<!-- ConnectJob_Others -->
+<g id="node45" class="node"><title>ConnectJob_Others</title>
+<ellipse fill="none" stroke="black" cx="984" cy="-550" rx="46.1964" ry="18"/>
+<text text-anchor="middle" x="984" y="-546.3" font-family="Times,serif" font-size="14.00">...others...</text>
+</g>
+<!-- ConnectJob_Others&#45;&gt;ConnectJob -->
+<g id="edge46" class="edge"><title>ConnectJob_Others&#45;&gt;ConnectJob</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1005.42,-533.731C1019.78,-523.491 1038.91,-509.857 1054.81,-498.521"/>
+<polygon fill="none" stroke="black" points="1057.15,-501.15 1063.26,-492.496 1053.09,-495.45 1057.15,-501.15"/>
+</g>
+<!-- ConnectJob_Delegate&#45;&gt;ConnectJob -->
+<g id="edge57" class="edge"><title>ConnectJob_Delegate&#45;&gt;ConnectJob</title>
+<path fill="none" stroke="black" d="M1126.97,-531.937C1120.53,-523.508 1112.61,-513.143 1105.39,-503.696"/>
+<polygon fill="none" stroke="black" points="1105.23,-503.477 1098.4,-501.137 1097.94,-493.941 1104.76,-496.28 1105.23,-503.477"/>
+</g>
+<!-- StreamSocket -->
+<g id="node47" class="node"><title>StreamSocket</title>
+<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="1515" cy="-550" rx="61.1419" ry="18"/>
+<text text-anchor="middle" x="1515" y="-546.3" font-family="Times,serif" font-size="14.00">StreamSocket</text>
+</g>
+<!-- StreamSocket&#45;&gt;ConnectJob -->
+<g id="edge53" class="edge"><title>StreamSocket&#45;&gt;ConnectJob</title>
+<path fill="none" stroke="black" d="M1468.32,-538.372C1457.73,-536.122 1446.5,-533.866 1436,-532 1316.69,-510.795 1285.37,-514.902 1166,-494 1157.63,-492.534 1148.81,-490.839 1140.18,-489.098"/>
+<polygon fill="black" stroke="black" points="1139.95,-489.049 1133.26,-491.755 1128.19,-486.625 1134.88,-483.92 1139.95,-489.049"/>
+</g>
+<!-- Socket -->
+<g id="node52" class="node"><title>Socket</title>
+<ellipse fill="none" stroke="black" cx="1537" cy="-476" rx="35.6194" ry="18"/>
+<text text-anchor="middle" x="1537" y="-472.3" font-family="Times,serif" font-size="14.00">Socket</text>
+</g>
+<!-- StreamSocket&#45;&gt;Socket -->
+<g id="edge41" class="edge"><title>StreamSocket&#45;&gt;Socket</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1520.21,-531.937C1522.79,-523.508 1525.96,-513.143 1528.84,-503.696"/>
+<polygon fill="none" stroke="black" points="1532.25,-504.527 1531.82,-493.941 1525.55,-502.481 1532.25,-504.527"/>
+</g>
+<!-- StreamSocket&#45;&gt;ClientSocketHandle -->
+<g id="edge51" class="edge"><title>StreamSocket&#45;&gt;ClientSocketHandle</title>
+<path fill="none" stroke="black" d="M1506.43,-532.104C1501.4,-521.443 1495.39,-507.234 1492,-494 1478.79,-442.461 1474.75,-380.306 1473.52,-344.449"/>
+<polygon fill="black" stroke="black" points="1473.51,-344.066 1469.34,-338.18 1473.18,-332.071 1477.34,-337.957 1473.51,-344.066"/>
+</g>
+<!-- TCPClientSocket -->
+<g id="node48" class="node"><title>TCPClientSocket</title>
+<ellipse fill="none" stroke="black" cx="1515" cy="-624" rx="74.6146" ry="18"/>
+<text text-anchor="middle" x="1515" y="-620.3" font-family="Times,serif" font-size="14.00">TCPClientSocket</text>
+</g>
+<!-- TCPClientSocket&#45;&gt;StreamSocket -->
+<g id="edge42" class="edge"><title>TCPClientSocket&#45;&gt;StreamSocket</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1515,-605.937C1515,-597.807 1515,-587.876 1515,-578.705"/>
+<polygon fill="none" stroke="black" points="1518.5,-578.441 1515,-568.441 1511.5,-578.441 1518.5,-578.441"/>
+</g>
+<!-- StreamSocket_Others -->
+<g id="node49" class="node"><title>StreamSocket_Others</title>
+<ellipse fill="none" stroke="black" cx="1655" cy="-624" rx="46.1964" ry="18"/>
+<text text-anchor="middle" x="1655" y="-620.3" font-family="Times,serif" font-size="14.00">...others...</text>
+</g>
+<!-- StreamSocket_Others&#45;&gt;StreamSocket -->
+<g id="edge43" class="edge"><title>StreamSocket_Others&#45;&gt;StreamSocket</title>
+<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1628.01,-609.118C1606.82,-598.223 1577.06,-582.916 1553.39,-570.746"/>
+<polygon fill="none" stroke="black" points="1554.82,-567.544 1544.33,-566.083 1551.62,-573.769 1554.82,-567.544"/>
+</g>
+<!-- TransportConnectJobHelper -->
+<g id="node50" class="node"><title>TransportConnectJobHelper</title>
+<ellipse fill="none" stroke="black" cx="1309" cy="-624" rx="113.61" ry="18"/>
+<text text-anchor="middle" x="1309" y="-620.3" font-family="Times,serif" font-size="14.00">TransportConnectJobHelper</text>
+</g>
+<!-- TransportConnectJobHelper&#45;&gt;TransportConnectJob -->
+<g id="edge55" class="edge"><title>TransportConnectJobHelper&#45;&gt;TransportConnectJob</title>
+<path fill="none" stroke="black" d="M1315.87,-605.937C1319.04,-598.072 1322.89,-588.522 1326.48,-579.604"/>
+<polygon fill="black" stroke="black" points="1326.49,-579.572 1325.02,-572.512 1330.98,-568.441 1332.44,-575.501 1326.49,-579.572"/>
+</g>
+<!-- SingleRequestHostResolver -->
+<g id="node51" class="node"><title>SingleRequestHostResolver</title>
+<ellipse fill="none" stroke="black" cx="1309" cy="-712" rx="113.135" ry="18"/>
+<text text-anchor="middle" x="1309" y="-708.3" font-family="Times,serif" font-size="14.00">SingleRequestHostResolver</text>
+</g>
+<!-- SingleRequestHostResolver&#45;&gt;TransportConnectJobHelper -->
+<g id="edge54" class="edge"><title>SingleRequestHostResolver&#45;&gt;TransportConnectJobHelper</title>
+<path fill="none" stroke="black" d="M1309,-693.597C1309,-682.333 1309,-667.384 1309,-654.317"/>
+<polygon fill="black" stroke="black" points="1309,-654.084 1305,-648.084 1309,-642.084 1313,-648.084 1309,-654.084"/>
+</g>
+<!-- ClientSocketHandle&#45;&gt;HttpStreamFactoryImpl_Job -->
+<g id="edge47" class="edge"><title>ClientSocketHandle&#45;&gt;HttpStreamFactoryImpl_Job</title>
+<path fill="none" stroke="black" d="M1428.48,-298.689C1394.17,-287.661 1346.39,-272.305 1308.76,-260.208"/>
+<polygon fill="black" stroke="black" points="1308.35,-260.077 1301.41,-262.049 1296.93,-256.405 1303.86,-254.433 1308.35,-260.077"/>
+</g>
+<!-- ClientSocketHandle&#45;&gt;HttpBasicState -->
+<g id="edge48" class="edge"><title>ClientSocketHandle&#45;&gt;HttpBasicState</title>
+<path fill="none" stroke="black" d="M1472.53,-295.937C1472.31,-288.337 1472.06,-279.164 1471.82,-270.508"/>
+<polygon fill="black" stroke="black" points="1471.82,-270.436 1467.65,-264.549 1471.48,-258.441 1475.65,-264.327 1471.82,-270.436"/>
+</g>
+</g>
+</svg>
« net/docs/url_request.dot ('K') | « net/docs/url_request.dot ('k') | net/net.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698