diff options
author | Bjørn Christian Seime <bjorncs@yahoo-inc.com> | 2017-06-13 15:41:51 +0200 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@yahoo-inc.com> | 2017-06-13 15:41:51 +0200 |
commit | 46865be8a947405e7e7a6a5ff8f99196ab5dc3f2 (patch) | |
tree | a5b4d51b07cd1fc671f8157a85bb0ed577450f2c | |
parent | 76221b9e73ad7a76a8179663e638b545a470c325 (diff) |
Remove old and stale doc
-rw-r--r-- | jdisc_http_service/docs/class-diagram.graffle | 1856 | ||||
-rw-r--r-- | jdisc_http_service/docs/class-diagram.png | bin | 87451 -> 0 bytes | |||
-rw-r--r-- | jdisc_http_service/docs/httpserver.html | 96 |
3 files changed, 0 insertions, 1952 deletions
diff --git a/jdisc_http_service/docs/class-diagram.graffle b/jdisc_http_service/docs/class-diagram.graffle deleted file mode 100644 index 938459c6571..00000000000 --- a/jdisc_http_service/docs/class-diagram.graffle +++ /dev/null @@ -1,1856 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>ActiveLayerIndex</key> - <integer>0</integer> - <key>ApplicationVersion</key> - <array> - <string>com.omnigroup.OmniGrafflePro</string> - <string>139.7.0.167456</string> - </array> - <key>AutoAdjust</key> - <true/> - <key>BackgroundGraphic</key> - <dict> - <key>Bounds</key> - <string>{{0, 0}, {558.99999713897705, 783}}</string> - <key>Class</key> - <string>SolidGraphic</string> - <key>ID</key> - <integer>2</integer> - <key>Style</key> - <dict> - <key>shadow</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>stroke</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - </dict> - </dict> - <key>BaseZoom</key> - <integer>0</integer> - <key>CanvasOrigin</key> - <string>{0, 0}</string> - <key>ColumnAlign</key> - <integer>1</integer> - <key>ColumnSpacing</key> - <real>36</real> - <key>CreationDate</key> - <string>2012-06-18 12:41:37 +0000</string> - <key>Creator</key> - <string>Einar Rosenvinge</string> - <key>DisplayScale</key> - <string>1.000 cm = 1.000 cm</string> - <key>GraphDocumentVersion</key> - <integer>8</integer> - <key>GraphicsList</key> - <array> - <dict> - <key>Bounds</key> - <string>{{404.66666889190674, 39.999999999999936}, {151.17318725585938, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>ID</key> - <integer>114</integer> - <key>Magnets</key> - <array> - <string>{0, 1}</string> - <string>{0, -1}</string> - <string>{1, 0}</string> - <string>{-1, 0}</string> - </array> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>0</string> - <key>g</key> - <string>1</string> - <key>r</key> - <string>0</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 J2SE API}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>TableGroup</string> - <key>Graphics</key> - <array> - <dict> - <key>Bounds</key> - <string>{{404.66666889190674, 18.66666666666665}, {151.17318725585938, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>109</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>0</string> - <key>g</key> - <string>0</string> - <key>r</key> - <string>1</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 Netty API}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - </array> - <key>ID</key> - <integer>108</integer> - </dict> - <dict> - <key>Bounds</key> - <string>{{404.66666666666731, 7.9472862957175039e-08}, {151.17318725585938, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>ID</key> - <integer>107</integer> - <key>Magnets</key> - <array> - <string>{0, 1}</string> - <string>{0, -1}</string> - <string>{1, 0}</string> - <string>{-1, 0}</string> - </array> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>1</string> - <key>g</key> - <string>0</string> - <key>r</key> - <string>0</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 jDISC core API}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Bounds</key> - <string>{{328.46341597965198, 296.25884156306495}, {29.333332061767578, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>106</integer> - <key>Line</key> - <dict> - <key>ID</key> - <integer>105</integer> - <key>Offset</key> - <real>6.6666665077209473</real> - <key>Position</key> - <real>0.91559326648712158</real> - <key>RotationType</key> - <integer>0</integer> - </dict> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>shadow</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>stroke</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 1}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>52</integer> - </dict> - <key>ID</key> - <integer>105</integer> - <key>Points</key> - <array> - <string>{225.55682373046864, 284.810302734375}</string> - <string>{352.43905966196957, 312.07829430296113}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>StickArrow</string> - <key>Legacy</key> - <true/> - <key>LineType</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>104</integer> - </dict> - </dict> - <dict> - <key>Bounds</key> - <string>{{101.99999999999997, 277.810302734375}, {123.55682373046864, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>ID</key> - <integer>104</integer> - <key>Magnets</key> - <array> - <string>{0, 1}</string> - <string>{0, -1}</string> - <string>{1, 0}</string> - <string>{-1, 0}</string> - </array> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>0</string> - <key>g</key> - <string>0</string> - <key>r</key> - <string>1</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 ChannelPipeline}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Bounds</key> - <string>{{166.25436339285309, 474.88842165638926}, {29.333332061767578, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>103</integer> - <key>Line</key> - <dict> - <key>ID</key> - <integer>102</integer> - <key>Offset</key> - <real>6.6666665077209473</real> - <key>Position</key> - <real>0.78203368186950684</real> - <key>RotationType</key> - <integer>0</integer> - </dict> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>shadow</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>stroke</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 1}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>89</integer> - </dict> - <key>ID</key> - <integer>102</integer> - <key>Points</key> - <array> - <string>{291.52424638132226, 513.75253787937902}</string> - <string>{148.21246360738095, 481.32189037141075}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>StickArrow</string> - <key>Legacy</key> - <true/> - <key>LineType</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>58</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>95</integer> - </dict> - <key>ID</key> - <integer>96</integer> - <key>Points</key> - <array> - <string>{116.77841269969511, 466.71157835576878}</string> - <string>{116.77840998702608, 420.16666668003933}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>Arrow</string> - <key>Legacy</key> - <true/> - <key>LineType</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>89</integer> - </dict> - </dict> - <dict> - <key>Bounds</key> - <string>{{58.945077896118171, 405.66666666666708}, {115.66666412353516, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>ID</key> - <integer>95</integer> - <key>Magnets</key> - <array> - <string>{0, 1}</string> - <string>{0, -1}</string> - <string>{1, 0}</string> - <string>{-1, 0}</string> - </array> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>1</string> - <key>g</key> - <string>0</string> - <key>r</key> - <string>0</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 Request}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>TableGroup</string> - <key>Graphics</key> - <array> - <dict> - <key>Bounds</key> - <string>{{68.3333333333334, 467.21157836914102}, {96.890159606933594, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>89</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 HttpRequest}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - </array> - <key>ID</key> - <integer>88</integer> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>86</integer> - </dict> - <key>ID</key> - <integer>87</integer> - <key>Points</key> - <array> - <string>{350.25724339020428, 513.73666184812191}</string> - <string>{432.54926154576208, 492.26520134230651}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>Arrow</string> - <key>Legacy</key> - <true/> - <key>Pattern</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>58</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>TableGroup</string> - <key>Graphics</key> - <array> - <dict> - <key>Bounds</key> - <string>{{429.24670918782579, 464.13918876647955}, {115.08661651611328, 28}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>86</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>1</string> - <key>g</key> - <string>0</string> - <key>r</key> - <string>0</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 <<interface>>\ -ResponseHandler}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - </array> - <key>ID</key> - <integer>85</integer> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>80</integer> - </dict> - <key>ID</key> - <integer>81</integer> - <key>Points</key> - <array> - <string>{388.98464357649044, 311.73041212162735}</string> - <string>{421.12154403577119, 242.99627753494852}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>Arrow</string> - <key>Legacy</key> - <true/> - <key>LineType</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>52</integer> - </dict> - </dict> - <dict> - <key>Bounds</key> - <string>{{298.33331664403278, 228.54334004720087}, {246, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>ID</key> - <integer>80</integer> - <key>Magnets</key> - <array> - <string>{0, 1}</string> - <string>{0, -1}</string> - <string>{1, 0}</string> - <string>{-1, 0}</string> - </array> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>0</string> - <key>g</key> - <string>0</string> - <key>r</key> - <string>1</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 IdleStateAwareChannelUpstreamHandler}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>10</integer> - </dict> - <key>ID</key> - <integer>27</integer> - <key>Points</key> - <array> - <string>{129.27841644847507, 130.04334003445351}</string> - <string>{129.27841313680011, 80.666667938232422}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>Arrow</string> - <key>Legacy</key> - <true/> - <key>LineType</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>69</integer> - </dict> - </dict> - <dict> - <key>Bounds</key> - <string>{{71.445081075032547, 66.666667938232422}, {115.66666412353516, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>ID</key> - <integer>10</integer> - <key>Magnets</key> - <array> - <string>{0, 1}</string> - <string>{0, -1}</string> - <string>{1, 0}</string> - <string>{-1, 0}</string> - </array> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>1</string> - <key>g</key> - <string>0</string> - <key>r</key> - <string>0</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 AbstractResource}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>78</integer> - </dict> - <key>ID</key> - <integer>79</integer> - <key>Points</key> - <array> - <string>{185.26276724928567, 130.48075966792658}</string> - <string>{297.8372493866778, 116.27917789513803}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>Arrow</string> - <key>Legacy</key> - <true/> - <key>Pattern</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>69</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>TableGroup</string> - <key>Graphics</key> - <array> - <dict> - <key>Bounds</key> - <string>{{298.3333059188999, 92.666666666666913}, {151.17318725585938, 28}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>78</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>0</string> - <key>g</key> - <string>0</string> - <key>r</key> - <string>1</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 <<interface>>\ -ChannelPipelineFactory}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - </array> - <key>ID</key> - <integer>77</integer> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>75</integer> - </dict> - <key>ID</key> - <integer>76</integer> - <key>Points</key> - <array> - <string>{402.97819417613408, 311.99312587103537}</string> - <string>{465.1473485992222, 286.41782928501391}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>Arrow</string> - <key>Legacy</key> - <true/> - <key>Pattern</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>52</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>TableGroup</string> - <key>Graphics</key> - <array> - <dict> - <key>Bounds</key> - <string>{{454.91339111328136, 258.22751967112259}, {89.419929504394531, 28}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>75</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>0</string> - <key>g</key> - <string>1</string> - <key>r</key> - <string>0</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 <<interface>>\ -Runnable}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - </array> - <key>ID</key> - <integer>74</integer> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>34</integer> - </dict> - <key>ID</key> - <integer>9</integer> - <key>Points</key> - <array> - <string>{143.15706944536032, 130.31230832708621}</string> - <string>{250.79491585172687, 74.231022194055214}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>Arrow</string> - <key>Legacy</key> - <true/> - <key>Pattern</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>69</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>TableGroup</string> - <key>Graphics</key> - <array> - <dict> - <key>Bounds</key> - <string>{{226.66667683919275, 45.999999999999929}, {102.88706970214844, 28}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>34</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - <key>stroke</key> - <dict> - <key>Color</key> - <dict> - <key>b</key> - <string>1</string> - <key>g</key> - <string>0</string> - <key>r</key> - <string>0</string> - </dict> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 <<interface>>\ -ServerProvider}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - </array> - <key>ID</key> - <integer>33</integer> - </dict> - <dict> - <key>Bounds</key> - <string>{{344.6666666666668, 438.85001627604163}, {17, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>YES</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>63</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>shadow</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>stroke</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 1}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>Wrap</key> - <string>NO</string> - </dict> - <dict> - <key>Bounds</key> - <string>{{308.27841186523432, 496.00000000000023}, {29.333332061767578, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>62</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>shadow</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>stroke</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 1..*}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>58</integer> - </dict> - <key>ID</key> - <integer>61</integer> - <key>Points</key> - <array> - <string>{364.20702685721608, 438.63027009978003}</string> - <string>{326.6915789284576, 513.41623846111793}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>0</string> - <key>Legacy</key> - <true/> - <key>LineType</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>54</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>TableGroup</string> - <key>Graphics</key> - <array> - <dict> - <key>Bounds</key> - <string>{{226.66666603088379, 513.86289469401004}, {192.55682373046875, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>58</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 RequestContext}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - <dict> - <key>Bounds</key> - <string>{{226.66666603088379, 527.86289469401004}, {192.55682373046875, 42}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>59</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 HttpRequest request\ -ContentChannel requestContent\ -ContentChannel responseContent}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - <dict> - <key>Bounds</key> - <string>{{226.66666603088379, 569.86289469401004}, {192.55682373046875, 28}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>60</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 connect()\ -handleResponse(Response)}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - </array> - <key>GridH</key> - <array> - <integer>58</integer> - <integer>59</integer> - <integer>60</integer> - <array/> - </array> - <key>ID</key> - <integer>57</integer> - </dict> - <dict> - <key>Class</key> - <string>TableGroup</string> - <key>Graphics</key> - <array> - <dict> - <key>Bounds</key> - <string>{{226.66666666666663, 312.183349609375}, {317.66665649414062, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>52</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 ChannelContext}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - <dict> - <key>Bounds</key> - <string>{{226.66666666666652, 326.183349609375}, {317.66665649414062, 28}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>53</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 LinkedBlockingQueue<ResponsePart> responseOutputs\ -Channel serverChannel}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - <dict> - <key>Bounds</key> - <string>{{226.66666666666663, 354.183349609375}, {317.66665649414062, 84}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>54</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 channelConnected()\ -messageReceived()\ -exceptionCaught()\ -channelDisconnected()\ -channelIdle()\ -run()}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - </array> - <key>GridH</key> - <array> - <integer>52</integer> - <integer>53</integer> - <integer>54</integer> - <array/> - </array> - <key>ID</key> - <integer>51</integer> - </dict> - <dict> - <key>Bounds</key> - <string>{{158.97158196265923, 262.43389980796718}, {29.333332061767578, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>47</integer> - <key>Line</key> - <dict> - <key>ID</key> - <integer>16</integer> - <key>Offset</key> - <real>12.666667938232422</real> - <key>Position</key> - <real>0.93361091613769531</real> - <key>RotationType</key> - <integer>0</integer> - </dict> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>shadow</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>stroke</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 0..*}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>Head</key> - <dict> - <key>ID</key> - <integer>104</integer> - </dict> - <key>ID</key> - <integer>16</integer> - <key>Points</key> - <array> - <string>{144.7864237041758, 242.98231480726633}</string> - <string>{163.77841186523429, 277.810302734375}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>StickArrow</string> - <key>Legacy</key> - <true/> - <key>LineType</key> - <integer>1</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - <key>Tail</key> - <dict> - <key>ID</key> - <integer>71</integer> - </dict> - </dict> - <dict> - <key>Class</key> - <string>TableGroup</string> - <key>Graphics</key> - <array> - <dict> - <key>Bounds</key> - <string>{{33.000005086262888, 130.54334004720062}, {192.55682373046875, 14}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>69</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc - -\f0\b\fs24 \cf0 HttpServer}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - <dict> - <key>Bounds</key> - <string>{{33.000005086262888, 144.54334004720062}, {192.55682373046875, 42}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>70</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 Channel serverChannel\ -Executor channelWorkerExecutor\ -HttpServerConfig config}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - <dict> - <key>Bounds</key> - <string>{{33.000005086262888, 186.54334004720062}, {192.55682373046875, 56}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>71</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>GradientCenter</key> - <string>{-0.29411799999999999, -0.264706}</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Align</key> - <integer>0</integer> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 - -\f0\fs24 \cf0 start()\ -close()\ -destroy()\ -getPipeline()}</string> - <key>VerticalPad</key> - <integer>0</integer> - </dict> - <key>TextPlacement</key> - <integer>0</integer> - </dict> - </array> - <key>GridH</key> - <array> - <integer>69</integer> - <integer>70</integer> - <integer>71</integer> - <array/> - </array> - <key>ID</key> - <integer>68</integer> - </dict> - </array> - <key>GridInfo</key> - <dict/> - <key>GuidesLocked</key> - <string>NO</string> - <key>GuidesVisible</key> - <string>YES</string> - <key>HPages</key> - <integer>1</integer> - <key>ImageCounter</key> - <integer>1</integer> - <key>KeepToScale</key> - <false/> - <key>Layers</key> - <array> - <dict> - <key>Lock</key> - <string>NO</string> - <key>Name</key> - <string>Layer 1</string> - <key>Print</key> - <string>YES</string> - <key>View</key> - <string>YES</string> - </dict> - </array> - <key>LayoutInfo</key> - <dict> - <key>Animate</key> - <string>NO</string> - <key>circoMinDist</key> - <real>18</real> - <key>circoSeparation</key> - <real>0.0</real> - <key>layoutEngine</key> - <string>dot</string> - <key>neatoSeparation</key> - <real>0.0</real> - <key>twopiSeparation</key> - <real>0.0</real> - </dict> - <key>LinksVisible</key> - <string>NO</string> - <key>MagnetsVisible</key> - <string>NO</string> - <key>MasterSheets</key> - <array/> - <key>ModificationDate</key> - <string>2012-06-19 09:20:43 +0000</string> - <key>Modifier</key> - <string>Einar Rosenvinge</string> - <key>NotesVisible</key> - <string>NO</string> - <key>Orientation</key> - <integer>2</integer> - <key>OriginVisible</key> - <string>NO</string> - <key>PageBreaks</key> - <string>YES</string> - <key>PrintInfo</key> - <dict> - <key>NSBottomMargin</key> - <array> - <string>float</string> - <string>41</string> - </array> - <key>NSHorizonalPagination</key> - <array> - <string>coded</string> - <string>BAtzdHJlYW10eXBlZIHoA4QBQISEhAhOU051bWJlcgCEhAdOU1ZhbHVlAISECE5TT2JqZWN0AIWEASqEhAFxlwCG</string> - </array> - <key>NSLeftMargin</key> - <array> - <string>float</string> - <string>18</string> - </array> - <key>NSPaperSize</key> - <array> - <string>size</string> - <string>{594.99999713897705, 842}</string> - </array> - <key>NSPrintReverseOrientation</key> - <array> - <string>int</string> - <string>0</string> - </array> - <key>NSRightMargin</key> - <array> - <string>float</string> - <string>18</string> - </array> - <key>NSTopMargin</key> - <array> - <string>float</string> - <string>18</string> - </array> - </dict> - <key>PrintOnePage</key> - <false/> - <key>ReadOnly</key> - <string>NO</string> - <key>RowAlign</key> - <integer>1</integer> - <key>RowSpacing</key> - <real>36</real> - <key>SheetTitle</key> - <string>Canvas 1</string> - <key>SmartAlignmentGuidesActive</key> - <string>YES</string> - <key>SmartDistanceGuidesActive</key> - <string>YES</string> - <key>UniqueID</key> - <integer>1</integer> - <key>UseEntirePage</key> - <false/> - <key>VPages</key> - <integer>1</integer> - <key>WindowInfo</key> - <dict> - <key>CurrentSheet</key> - <integer>0</integer> - <key>ExpandedCanvases</key> - <array> - <dict> - <key>name</key> - <string>Canvas 1</string> - </dict> - </array> - <key>Frame</key> - <string>{{246, 375}, {1064, 803}}</string> - <key>ListView</key> - <true/> - <key>OutlineWidth</key> - <integer>142</integer> - <key>RightSidebar</key> - <false/> - <key>ShowRuler</key> - <true/> - <key>Sidebar</key> - <true/> - <key>SidebarWidth</key> - <integer>120</integer> - <key>VisibleRegion</key> - <string>{{-25, 0}, {610, 442.66666666666669}}</string> - <key>Zoom</key> - <real>1.5</real> - <key>ZoomValues</key> - <array> - <array> - <string>Canvas 1</string> - <real>1.5</real> - <real>0.25</real> - </array> - </array> - </dict> -</dict> -</plist> diff --git a/jdisc_http_service/docs/class-diagram.png b/jdisc_http_service/docs/class-diagram.png Binary files differdeleted file mode 100644 index ebccfd75bf9..00000000000 --- a/jdisc_http_service/docs/class-diagram.png +++ /dev/null diff --git a/jdisc_http_service/docs/httpserver.html b/jdisc_http_service/docs/httpserver.html deleted file mode 100644 index 66afeb687fe..00000000000 --- a/jdisc_http_service/docs/httpserver.html +++ /dev/null @@ -1,96 +0,0 @@ -<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. --> -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" -<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. --> - "http://www.w3.org/TR/html4/loose.dtd"> -<html> -<head> - <title>HTTP Server Architecture</title> - <style type="text/css"> - body { - font: 13px/1.231 arial,helvetica,clean,sans-serif; - *font-size: small; - *font: x-small; - } - select,input,button,textarea { - font: 99% arial,helvetica,clean,sans-serif; - } - table{ - font-size: inherit; - font: 100%; - } - pre,code,kbd,samp,tt { - font-family: monospace; - *font-size: 108%; - line-height: 100%; - } - </style> -</head> -<body> -<p>The HTTP server is started by calling <code>HttpServer.start()</code>, which in turn calls <code>ServerBootstrap.bind()</code> - provided by - Netty.</p> - -<img src="class-diagram.png" alt="Class diagram"> - -<p>Since our HttpServer implements <code>ChannelPipelineFactory</code> (provided by jetty), its - <code>getPipeline()</code> method is called for every new channel that is connected. There is hence a one-to-many - relationship between a <code>HttpServer</code> and a pipeline (and a one-to-one relationship between an actual - channel and a pipeline).</p> - -<p>The pipeline is responsible for decoding (and possibly deflating etc.) every new request that is received on a - channel. The final element in the pipeline is a <code>ChannelContext</code>, which is the jDISC class for handling - requests on a channel.</p> - -<p>The <code>ChannelContext</code> implements <code>SimpleChannelUpstreamHandler</code> (provided by Jetty), which has - simple callback methods for various event types. <br/>Examples:</p> - -<ul> - <li><code>channelConnected()</code></li> - <li><code>channelDisconnected()</code></li> - <li><code>messageReceived()</code></li> -</ul> - -<p>Since <code>ChannelContext</code> supports HTTP keep-alive and HTTP pipelining, it needs to keep track of multiple - requests made on the channel, and their order.</p> - -<p>In <code>messageReceived()</code> it will:</p> -<ul> - <li>Determine if the element received is a new HTTP request, or a chunk belonging to the previous one.</li> - <li>If it's a request, create a DISC <code>Request</code> object for it, and call <code>Request.connect()</code>, - which will in turn give it to the actual application, through the use of - <code>RequestHandler.handleRequest()</code>. - </li> - <li>If it's a chunk, fetch the previously added <code>RequestContext</code>, and use it to write the data received - into the <code>ContentChannel</code>. - </li> -</ul> - -<p><code>RequestContext</code> keeps track of a request and its input and output <code>ContentChannel</code>s, and - related objects. Since <code>RequestContext</code> is a <code>ResponseHandler</code>, it is responsible for - instantiating and returning a <code>ContentChannel</code> when an application calls <code>handleResponse()</code>. - Two types are supported, one that supports HTTP response chunking, and one that does not. The type used is chosen - automatically based on HTTP version, headers etc.</p> - -<p>Since the jDISC API is fully asynchronous, operations can occur in any order. This is very extensively tested in the - HTTP server implementation. For instance, an application (<code>RequestHandler</code>) may choose to respond and - close the output <code>ContentChannel</code> immediately upon receiving the request, before the body of the request - has been written into the input <code>ContentChannel</code> of the <code>RequestHandler</code>. All such cases are - tested and properly handled.</p> - -<p>As one can see from the illustration, <code>ChannelContext</code> is also a <code>Runnable</code>, i.e. it keeps one - thread per channel. The HTTP server has two modes of operation, <code>optimizeForPipeline</code> <code>true</code> - or <code>false</code> in <code>HttpServerConfig</code>.</p> - -<p>If <code>optimizeForPipeline</code> is set to <code>true</code>, response chunks are enqueued on a blocking queue in - <code>ChannelContext</code> when <code>ContentChannel.write()</code> is called. The <code>ChannelContext</code> - thread is responsible for actually writing them, and closing the channel when appropriate. Since the HTTP server - supports pipelining, and writes from an application may occur in any order, special care is taken to write response - chunks in the correct order.</p> - -<p>If <code>optimizeForPipeline</code> is set to <code>false</code>, a call to <code>ContentChannel.write()</code> will - lead to an actual write on the wire, iff. the given chunk to be written is the next in line. Otherwise this is a - no-op. This also means that a <code>ContentChannel.write()</code> may lead to a cascade of writes that have been - enqueued since they were out-of-order when their <code>write()</code> was called. The <code>ChannelContext</code> - thread still takes care of channel closing in most cases.</p> -</body> -</html> |