wee 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ChangeLog +75 -0
- data/README +17 -9
- data/Rakefile +2 -2
- data/TODO +20 -0
- data/benchmark/Makefile +14 -9
- data/benchmark/counter.rb +11 -30
- data/benchmark/report_req.rb +12 -0
- data/doc/rdoc/classes/Array.html +12 -12
- data/doc/rdoc/classes/Cache/StorageCache.html +38 -38
- data/doc/rdoc/classes/Cache/Strategy/CapacityBounded.html +30 -30
- data/doc/rdoc/classes/Cache/Strategy/LFU.html +24 -24
- data/doc/rdoc/classes/Cache/Strategy/LRU.html +24 -24
- data/doc/rdoc/classes/Cache/Strategy/Unbounded.html +24 -24
- data/doc/rdoc/classes/Enumerable.html +6 -6
- data/doc/rdoc/classes/Object.html +12 -12
- data/doc/rdoc/classes/OgApplication.html +126 -0
- data/doc/rdoc/classes/OgScaffolder.html +401 -0
- data/doc/rdoc/classes/OgSession.html +172 -0
- data/doc/rdoc/classes/String.html +12 -12
- data/doc/rdoc/classes/Struct.html +12 -12
- data/doc/rdoc/classes/Wee.html +5 -62
- data/doc/rdoc/classes/Wee/AnswerDecoration.html +9 -9
- data/doc/rdoc/classes/Wee/Application.html +107 -39
- data/doc/rdoc/classes/Wee/Brush.html +22 -18
- data/doc/rdoc/classes/Wee/Brush/ActionCallbackMixin.html +17 -11
- data/doc/rdoc/classes/Wee/Brush/ActionURLCallbackMixin.html +18 -10
- data/doc/rdoc/classes/Wee/Brush/AnchorTag.html +30 -64
- data/doc/rdoc/classes/Wee/Brush/FileUploadTag.html +8 -10
- data/doc/rdoc/classes/Wee/Brush/FormTag.html +27 -79
- data/doc/rdoc/classes/Wee/Brush/GenericEncodedTextBrush.html +12 -12
- data/doc/rdoc/classes/Wee/Brush/GenericSingleTagBrush.html +146 -0
- data/doc/rdoc/classes/Wee/Brush/GenericTagBrush.html +179 -65
- data/doc/rdoc/classes/Wee/Brush/GenericTextBrush.html +12 -12
- data/doc/rdoc/classes/Wee/Brush/ImageButtonTag.html +16 -18
- data/doc/rdoc/classes/Wee/Brush/ImageTag.html +203 -0
- data/doc/rdoc/classes/Wee/Brush/InputCallbackMixin.html +17 -11
- data/doc/rdoc/classes/Wee/Brush/InputTag.html +15 -15
- data/doc/rdoc/classes/Wee/Brush/JavascriptTag.html +147 -0
- data/doc/rdoc/classes/Wee/Brush/Page.html +17 -17
- data/doc/rdoc/classes/Wee/Brush/SelectListTag.html +25 -50
- data/doc/rdoc/classes/Wee/Brush/SelectOptionTag.html +7 -38
- data/doc/rdoc/classes/Wee/Brush/SubmitButtonTag.html +7 -7
- data/doc/rdoc/classes/Wee/Brush/TableDataTag.html +15 -16
- data/doc/rdoc/classes/Wee/Brush/TableHeaderTag.html +7 -7
- data/doc/rdoc/classes/Wee/Brush/TableRowTag.html +65 -50
- data/doc/rdoc/classes/Wee/Brush/TableTag.html +7 -7
- data/doc/rdoc/classes/Wee/Brush/TextAreaTag.html +14 -64
- data/doc/rdoc/classes/Wee/Brush/TextInputTag.html +7 -7
- data/doc/rdoc/classes/Wee/Brush/ToCallback.html +146 -0
- data/doc/rdoc/classes/Wee/CallbackRegistry.html +40 -40
- data/doc/rdoc/classes/Wee/CallbackStream.html +18 -18
- data/doc/rdoc/classes/Wee/Canvas.html +24 -24
- data/doc/rdoc/classes/Wee/Component.html +232 -149
- data/doc/rdoc/classes/Wee/Component/OnAnswer.html +153 -0
- data/doc/rdoc/classes/Wee/Decoration.html +42 -42
- data/doc/rdoc/classes/Wee/Delegate.html +27 -27
- data/doc/rdoc/classes/Wee/ErrorResponse.html +12 -12
- data/doc/rdoc/classes/Wee/FormDecoration.html +148 -0
- data/doc/rdoc/classes/Wee/GenericResponse.html +6 -6
- data/doc/rdoc/classes/Wee/HtmlCanvas.html +296 -215
- data/doc/rdoc/classes/Wee/HtmlWriter.html +83 -81
- data/doc/rdoc/classes/Wee/LiteralMethodCallback.html +21 -16
- data/doc/rdoc/classes/Wee/MessageBox.html +180 -0
- data/doc/rdoc/classes/Wee/PageDecoration.html +30 -30
- data/doc/rdoc/classes/Wee/Presenter.html +237 -69
- data/doc/rdoc/classes/Wee/RedirectResponse.html +6 -6
- data/doc/rdoc/classes/Wee/RefreshResponse.html +6 -6
- data/doc/rdoc/classes/Wee/Request.html +18 -18
- data/doc/rdoc/classes/Wee/RequestHandler.html +43 -39
- data/doc/rdoc/classes/Wee/Response.html +24 -24
- data/doc/rdoc/classes/Wee/Session.html +746 -72
- data/doc/rdoc/classes/Wee/SimpleIdGenerator.html +18 -18
- data/doc/rdoc/classes/Wee/Snapshot.html +19 -19
- data/doc/rdoc/classes/Wee/Utils.html +138 -2
- data/doc/rdoc/classes/Wee/Utils/LRUCache.html +7 -7
- data/doc/rdoc/classes/Wee/ValueHolder.html +18 -18
- data/doc/rdoc/classes/Wee/WEBrickAdaptor.html +43 -68
- data/doc/rdoc/classes/Wee/WrapperDecoration.html +150 -0
- data/doc/rdoc/created.rid +1 -1
- data/doc/rdoc/files/README.html +29 -15
- data/doc/rdoc/files/lib/wee/adaptors/webrick_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/application_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/components/form_decoration_rb.html +101 -0
- data/doc/rdoc/files/lib/wee/components/messagebox_rb.html +101 -0
- data/doc/rdoc/files/lib/wee/components/page_decoration_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/components/wrapper_decoration_rb.html +101 -0
- data/doc/rdoc/files/lib/wee/components_rb.html +4 -1
- data/doc/rdoc/files/lib/wee/continuation/core/component_rb.html +101 -0
- data/doc/rdoc/files/lib/wee/continuation/session_rb.html +110 -0
- data/doc/rdoc/files/lib/wee/continuation_rb.html +116 -0
- data/doc/rdoc/files/lib/wee/core/callback_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/core/component_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/core/presenter_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/core_rb.html +3 -3
- data/doc/rdoc/files/lib/wee/databases/og_rb.html +108 -0
- data/doc/rdoc/files/lib/wee/renderer/html/brushes_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/renderer/html/canvas_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/renderer/html/writer_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/requesthandler_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/session_rb.html +1 -2
- data/doc/rdoc/files/lib/wee/utils/autoreload_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/utils/cache_rb.html +1 -1
- data/doc/rdoc/files/lib/wee/utils/helper_rb.html +1 -8
- data/doc/rdoc/files/lib/wee/utils_rb.html +110 -0
- data/doc/rdoc/files/lib/wee_rb.html +1 -1
- data/doc/rdoc/fr_class_index.html +11 -1
- data/doc/rdoc/fr_file_index.html +8 -0
- data/doc/rdoc/fr_method_index.html +269 -228
- data/examples/calculator.rb +69 -0
- data/examples/calendar.rb +5 -17
- data/examples/example.rb +2 -2
- data/examples/hw.rb +17 -0
- data/examples/live-update.rb +45 -0
- data/examples/og-test.rb +51 -0
- data/lib/wee.rb +1 -1
- data/lib/wee/adaptors/webrick.rb +2 -0
- data/lib/wee/application.rb +16 -0
- data/lib/wee/components.rb +3 -0
- data/lib/wee/components/form_decoration.rb +7 -0
- data/{test → lib/wee}/components/messagebox.rb +1 -1
- data/lib/wee/components/page_decoration.rb +5 -5
- data/lib/wee/components/wrapper_decoration.rb +7 -0
- data/lib/wee/continuation.rb +5 -0
- data/lib/wee/continuation/core/component.rb +55 -0
- data/lib/wee/continuation/session.rb +217 -0
- data/lib/wee/core/callback.rb +11 -6
- data/lib/wee/core/component.rb +45 -33
- data/lib/wee/core/presenter.rb +68 -0
- data/lib/wee/databases/og.rb +114 -0
- data/lib/wee/renderer/html/brushes.rb +179 -98
- data/lib/wee/renderer/html/canvas.rb +37 -13
- data/lib/wee/renderer/html/writer.rb +34 -32
- data/lib/wee/requesthandler.rb +6 -3
- data/lib/wee/session.rb +73 -54
- data/lib/wee/utils.rb +5 -0
- data/lib/wee/utils/autoreload.rb +1 -1
- data/lib/wee/utils/cache.rb +0 -2
- data/lib/wee/utils/helper.rb +40 -8
- data/test/components/calltest-cont.rb +16 -0
- data/test/components/calltest.rb +15 -10
- data/test/stress.rb +31 -28
- data/test/stress_and_measure.rb +53 -0
- data/test/stressed_application.rb +15 -0
- data/test/test_html_writer.rb +9 -4
- metadata +236 -195
- data/benchmark/bench.sh +0 -24
|
@@ -88,9 +88,9 @@
|
|
|
88
88
|
<h3 class="section-bar">Methods</h3>
|
|
89
89
|
|
|
90
90
|
<div class="name-list">
|
|
91
|
-
<a href="#
|
|
92
|
-
<a href="#
|
|
93
|
-
<a href="#
|
|
91
|
+
<a href="#M000202">current</a>
|
|
92
|
+
<a href="#M000201">new</a>
|
|
93
|
+
<a href="#M000203">next</a>
|
|
94
94
|
</div>
|
|
95
95
|
</div>
|
|
96
96
|
|
|
@@ -112,19 +112,19 @@
|
|
|
112
112
|
<div id="methods">
|
|
113
113
|
<h3 class="section-bar">Public Class methods</h3>
|
|
114
114
|
|
|
115
|
-
<div id="method-
|
|
116
|
-
<a name="
|
|
115
|
+
<div id="method-M000201" class="method-detail">
|
|
116
|
+
<a name="M000201"></a>
|
|
117
117
|
|
|
118
118
|
<div class="method-heading">
|
|
119
|
-
<a href="#
|
|
119
|
+
<a href="#M000201" class="method-signature">
|
|
120
120
|
<span class="method-name">new</span><span class="method-args">(initial_value=0)</span>
|
|
121
121
|
</a>
|
|
122
122
|
</div>
|
|
123
123
|
|
|
124
124
|
<div class="method-description">
|
|
125
125
|
<p><a class="source-toggle" href="#"
|
|
126
|
-
onclick="toggleCode('
|
|
127
|
-
<div class="method-source-code" id="
|
|
126
|
+
onclick="toggleCode('M000201-source');return false;">[Source]</a></p>
|
|
127
|
+
<div class="method-source-code" id="M000201-source">
|
|
128
128
|
<pre>
|
|
129
129
|
<span class="ruby-comment cmt"># File lib/wee/idgen.rb, line 2</span>
|
|
130
130
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">initial_value</span>=<span class="ruby-value">0</span>)
|
|
@@ -137,19 +137,19 @@
|
|
|
137
137
|
|
|
138
138
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
139
139
|
|
|
140
|
-
<div id="method-
|
|
141
|
-
<a name="
|
|
140
|
+
<div id="method-M000202" class="method-detail">
|
|
141
|
+
<a name="M000202"></a>
|
|
142
142
|
|
|
143
143
|
<div class="method-heading">
|
|
144
|
-
<a href="#
|
|
144
|
+
<a href="#M000202" class="method-signature">
|
|
145
145
|
<span class="method-name">current</span><span class="method-args">()</span>
|
|
146
146
|
</a>
|
|
147
147
|
</div>
|
|
148
148
|
|
|
149
149
|
<div class="method-description">
|
|
150
150
|
<p><a class="source-toggle" href="#"
|
|
151
|
-
onclick="toggleCode('
|
|
152
|
-
<div class="method-source-code" id="
|
|
151
|
+
onclick="toggleCode('M000202-source');return false;">[Source]</a></p>
|
|
152
|
+
<div class="method-source-code" id="M000202-source">
|
|
153
153
|
<pre>
|
|
154
154
|
<span class="ruby-comment cmt"># File lib/wee/idgen.rb, line 6</span>
|
|
155
155
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">current</span>
|
|
@@ -160,19 +160,19 @@
|
|
|
160
160
|
</div>
|
|
161
161
|
</div>
|
|
162
162
|
|
|
163
|
-
<div id="method-
|
|
164
|
-
<a name="
|
|
163
|
+
<div id="method-M000203" class="method-detail">
|
|
164
|
+
<a name="M000203"></a>
|
|
165
165
|
|
|
166
166
|
<div class="method-heading">
|
|
167
|
-
<a href="#
|
|
167
|
+
<a href="#M000203" class="method-signature">
|
|
168
168
|
<span class="method-name">next</span><span class="method-args">()</span>
|
|
169
169
|
</a>
|
|
170
170
|
</div>
|
|
171
171
|
|
|
172
172
|
<div class="method-description">
|
|
173
173
|
<p><a class="source-toggle" href="#"
|
|
174
|
-
onclick="toggleCode('
|
|
175
|
-
<div class="method-source-code" id="
|
|
174
|
+
onclick="toggleCode('M000203-source');return false;">[Source]</a></p>
|
|
175
|
+
<div class="method-source-code" id="M000203-source">
|
|
176
176
|
<pre>
|
|
177
177
|
<span class="ruby-comment cmt"># File lib/wee/idgen.rb, line 10</span>
|
|
178
178
|
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">next</span>
|
|
@@ -86,7 +86,7 @@ This class is for backtracking the state of components (or
|
|
|
86
86
|
decorations/presenters). Components that want an undo-facility to be
|
|
87
87
|
implemented (triggered for example by a browsers back-button), have to
|
|
88
88
|
overwrite the <a
|
|
89
|
-
href="Component.html#
|
|
89
|
+
href="Component.html#M000222">Component#backtrack_state</a> method. Class
|
|
90
90
|
<a href="Snapshot.html">Wee::Snapshot</a> simply represents a collection of
|
|
91
91
|
objects from which snapshots were taken via methods take_snapshot.
|
|
92
92
|
</p>
|
|
@@ -100,9 +100,9 @@ objects from which snapshots were taken via methods take_snapshot.
|
|
|
100
100
|
<h3 class="section-bar">Methods</h3>
|
|
101
101
|
|
|
102
102
|
<div class="name-list">
|
|
103
|
-
<a href="#
|
|
104
|
-
<a href="#
|
|
105
|
-
<a href="#
|
|
103
|
+
<a href="#M000093">add</a>
|
|
104
|
+
<a href="#M000092">new</a>
|
|
105
|
+
<a href="#M000094">restore</a>
|
|
106
106
|
</div>
|
|
107
107
|
</div>
|
|
108
108
|
|
|
@@ -124,19 +124,19 @@ objects from which snapshots were taken via methods take_snapshot.
|
|
|
124
124
|
<div id="methods">
|
|
125
125
|
<h3 class="section-bar">Public Class methods</h3>
|
|
126
126
|
|
|
127
|
-
<div id="method-
|
|
128
|
-
<a name="
|
|
127
|
+
<div id="method-M000092" class="method-detail">
|
|
128
|
+
<a name="M000092"></a>
|
|
129
129
|
|
|
130
130
|
<div class="method-heading">
|
|
131
|
-
<a href="#
|
|
131
|
+
<a href="#M000092" class="method-signature">
|
|
132
132
|
<span class="method-name">new</span><span class="method-args">()</span>
|
|
133
133
|
</a>
|
|
134
134
|
</div>
|
|
135
135
|
|
|
136
136
|
<div class="method-description">
|
|
137
137
|
<p><a class="source-toggle" href="#"
|
|
138
|
-
onclick="toggleCode('
|
|
139
|
-
<div class="method-source-code" id="
|
|
138
|
+
onclick="toggleCode('M000092-source');return false;">[Source]</a></p>
|
|
139
|
+
<div class="method-source-code" id="M000092-source">
|
|
140
140
|
<pre>
|
|
141
141
|
<span class="ruby-comment cmt"># File lib/wee/core/snapshot.rb, line 9</span>
|
|
142
142
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
|
|
@@ -149,19 +149,19 @@ objects from which snapshots were taken via methods take_snapshot.
|
|
|
149
149
|
|
|
150
150
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
151
151
|
|
|
152
|
-
<div id="method-
|
|
153
|
-
<a name="
|
|
152
|
+
<div id="method-M000093" class="method-detail">
|
|
153
|
+
<a name="M000093"></a>
|
|
154
154
|
|
|
155
155
|
<div class="method-heading">
|
|
156
|
-
<a href="#
|
|
156
|
+
<a href="#M000093" class="method-signature">
|
|
157
157
|
<span class="method-name">add</span><span class="method-args">(object)</span>
|
|
158
158
|
</a>
|
|
159
159
|
</div>
|
|
160
160
|
|
|
161
161
|
<div class="method-description">
|
|
162
162
|
<p><a class="source-toggle" href="#"
|
|
163
|
-
onclick="toggleCode('
|
|
164
|
-
<div class="method-source-code" id="
|
|
163
|
+
onclick="toggleCode('M000093-source');return false;">[Source]</a></p>
|
|
164
|
+
<div class="method-source-code" id="M000093-source">
|
|
165
165
|
<pre>
|
|
166
166
|
<span class="ruby-comment cmt"># File lib/wee/core/snapshot.rb, line 13</span>
|
|
167
167
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add</span>(<span class="ruby-identifier">object</span>)
|
|
@@ -173,19 +173,19 @@ objects from which snapshots were taken via methods take_snapshot.
|
|
|
173
173
|
</div>
|
|
174
174
|
</div>
|
|
175
175
|
|
|
176
|
-
<div id="method-
|
|
177
|
-
<a name="
|
|
176
|
+
<div id="method-M000094" class="method-detail">
|
|
177
|
+
<a name="M000094"></a>
|
|
178
178
|
|
|
179
179
|
<div class="method-heading">
|
|
180
|
-
<a href="#
|
|
180
|
+
<a href="#M000094" class="method-signature">
|
|
181
181
|
<span class="method-name">restore</span><span class="method-args">()</span>
|
|
182
182
|
</a>
|
|
183
183
|
</div>
|
|
184
184
|
|
|
185
185
|
<div class="method-description">
|
|
186
186
|
<p><a class="source-toggle" href="#"
|
|
187
|
-
onclick="toggleCode('
|
|
188
|
-
<div class="method-source-code" id="
|
|
187
|
+
onclick="toggleCode('M000094-source');return false;">[Source]</a></p>
|
|
188
|
+
<div class="method-source-code" id="M000094-source">
|
|
189
189
|
<pre>
|
|
190
190
|
<span class="ruby-comment cmt"># File lib/wee/core/snapshot.rb, line 18</span>
|
|
191
191
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">restore</span>
|
|
@@ -55,8 +55,16 @@
|
|
|
55
55
|
<tr class="top-aligned-row">
|
|
56
56
|
<td><strong>In:</strong></td>
|
|
57
57
|
<td>
|
|
58
|
-
<a href="../../files/lib/wee/
|
|
59
|
-
lib/wee/utils
|
|
58
|
+
<a href="../../files/lib/wee/utils_rb.html">
|
|
59
|
+
lib/wee/utils.rb
|
|
60
|
+
</a>
|
|
61
|
+
<br />
|
|
62
|
+
<a href="../../files/lib/wee/utils/autoreload_rb.html">
|
|
63
|
+
lib/wee/utils/autoreload.rb
|
|
64
|
+
</a>
|
|
65
|
+
<br />
|
|
66
|
+
<a href="../../files/lib/wee/utils/helper_rb.html">
|
|
67
|
+
lib/wee/utils/helper.rb
|
|
60
68
|
</a>
|
|
61
69
|
<br />
|
|
62
70
|
</td>
|
|
@@ -76,6 +84,14 @@
|
|
|
76
84
|
|
|
77
85
|
</div>
|
|
78
86
|
|
|
87
|
+
<div id="method-list">
|
|
88
|
+
<h3 class="section-bar">Methods</h3>
|
|
89
|
+
|
|
90
|
+
<div class="name-list">
|
|
91
|
+
<a href="#M000045">app_for</a>
|
|
92
|
+
<a href="#M000044">autoreload</a>
|
|
93
|
+
</div>
|
|
94
|
+
</div>
|
|
79
95
|
|
|
80
96
|
</div>
|
|
81
97
|
|
|
@@ -98,6 +114,126 @@
|
|
|
98
114
|
|
|
99
115
|
|
|
100
116
|
<!-- if method_list -->
|
|
117
|
+
<div id="methods">
|
|
118
|
+
<h3 class="section-bar">Public Class methods</h3>
|
|
119
|
+
|
|
120
|
+
<div id="method-M000045" class="method-detail">
|
|
121
|
+
<a name="M000045"></a>
|
|
122
|
+
|
|
123
|
+
<div class="method-heading">
|
|
124
|
+
<a href="#M000045" class="method-signature">
|
|
125
|
+
<span class="method-name">app_for</span><span class="method-args">(component=nil, options={}, &block)</span>
|
|
126
|
+
</a>
|
|
127
|
+
</div>
|
|
128
|
+
|
|
129
|
+
<div class="method-description">
|
|
130
|
+
<dl>
|
|
131
|
+
<dt><tt>component</tt></dt><dd>The component class for which to create an application object. If a block
|
|
132
|
+
is given, this will be invoked to create a new component object.
|
|
133
|
+
|
|
134
|
+
</dd>
|
|
135
|
+
<dt><tt>options</tt></dt><dd>A Hash. Following keys are accepted:
|
|
136
|
+
|
|
137
|
+
<dl>
|
|
138
|
+
<dt>:application</dt><dd>The application class to use (default: <a
|
|
139
|
+
href="Application.html">Wee::Application</a>)
|
|
140
|
+
|
|
141
|
+
</dd>
|
|
142
|
+
<dt>:session</dt><dd>The session class to use (default: <a href="Session.html">Wee::Session</a>)
|
|
143
|
+
|
|
144
|
+
</dd>
|
|
145
|
+
<dt>:page_cache_capacity</dt><dd>The size of the sessions page_store (default: 10)
|
|
146
|
+
|
|
147
|
+
</dd>
|
|
148
|
+
<dt>:id_seed</dt><dd>Initial value of the <a href="SimpleIdGenerator.html">SimpleIdGenerator</a>
|
|
149
|
+
(default: rand(1_000_000))
|
|
150
|
+
|
|
151
|
+
</dd>
|
|
152
|
+
</dl>
|
|
153
|
+
</dd>
|
|
154
|
+
</dl>
|
|
155
|
+
<p><a class="source-toggle" href="#"
|
|
156
|
+
onclick="toggleCode('M000045-source');return false;">[Source]</a></p>
|
|
157
|
+
<div class="method-source-code" id="M000045-source">
|
|
158
|
+
<pre>
|
|
159
|
+
<span class="ruby-comment cmt"># File lib/wee/utils/helper.rb, line 22</span>
|
|
160
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">app_for</span>(<span class="ruby-identifier">component</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
|
161
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"either component or block must be given"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">component</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">block</span>.<span class="ruby-identifier">nil?</span>
|
|
162
|
+
|
|
163
|
+
<span class="ruby-identifier">defaults</span> = {
|
|
164
|
+
<span class="ruby-identifier">:application</span> =<span class="ruby-operator">></span> <span class="ruby-constant">Wee</span><span class="ruby-operator">::</span><span class="ruby-constant">Application</span>,
|
|
165
|
+
<span class="ruby-identifier">:session</span> =<span class="ruby-operator">></span> <span class="ruby-constant">Wee</span><span class="ruby-operator">::</span><span class="ruby-constant">Session</span>,
|
|
166
|
+
<span class="ruby-identifier">:page_cache_capacity</span> =<span class="ruby-operator">></span> <span class="ruby-value">10</span>,
|
|
167
|
+
<span class="ruby-identifier">:id_seed</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">rand</span>(<span class="ruby-value">1_000_000</span>)
|
|
168
|
+
}
|
|
169
|
+
<span class="ruby-identifier">options</span> = <span class="ruby-identifier">defaults</span>.<span class="ruby-identifier">update</span>(<span class="ruby-identifier">options</span>)
|
|
170
|
+
|
|
171
|
+
<span class="ruby-identifier">options</span>[<span class="ruby-identifier">:application</span>].<span class="ruby-identifier">new</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">app</span><span class="ruby-operator">|</span>
|
|
172
|
+
<span class="ruby-identifier">app</span>.<span class="ruby-identifier">default_request_handler</span> {
|
|
173
|
+
<span class="ruby-identifier">options</span>[<span class="ruby-identifier">:session</span>].<span class="ruby-identifier">new</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">sess</span><span class="ruby-operator">|</span>
|
|
174
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">component</span>
|
|
175
|
+
<span class="ruby-identifier">sess</span>.<span class="ruby-identifier">root_component</span> = <span class="ruby-identifier">component</span>.<span class="ruby-identifier">new</span>
|
|
176
|
+
<span class="ruby-keyword kw">else</span>
|
|
177
|
+
<span class="ruby-identifier">sess</span>.<span class="ruby-identifier">root_component</span> = <span class="ruby-identifier">block</span>.<span class="ruby-identifier">call</span>
|
|
178
|
+
<span class="ruby-keyword kw">end</span>
|
|
179
|
+
<span class="ruby-identifier">sess</span>.<span class="ruby-identifier">page_store</span> = <span class="ruby-constant">Wee</span><span class="ruby-operator">::</span><span class="ruby-constant">Utils</span><span class="ruby-operator">::</span><span class="ruby-constant">LRUCache</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>[<span class="ruby-identifier">:page_cache_capacity</span>])
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
<span class="ruby-identifier">app</span>.<span class="ruby-identifier">id_generator</span> = <span class="ruby-constant">Wee</span><span class="ruby-operator">::</span><span class="ruby-constant">SimpleIdGenerator</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>[<span class="ruby-identifier">:id_seed</span>])
|
|
183
|
+
}
|
|
184
|
+
<span class="ruby-keyword kw">end</span>
|
|
185
|
+
</pre>
|
|
186
|
+
</div>
|
|
187
|
+
</div>
|
|
188
|
+
</div>
|
|
189
|
+
|
|
190
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
191
|
+
|
|
192
|
+
<div id="method-M000044" class="method-detail">
|
|
193
|
+
<a name="M000044"></a>
|
|
194
|
+
|
|
195
|
+
<div class="method-heading">
|
|
196
|
+
<a href="#M000044" class="method-signature">
|
|
197
|
+
<span class="method-name">autoreload</span><span class="method-args">(check_interval=10)</span>
|
|
198
|
+
</a>
|
|
199
|
+
</div>
|
|
200
|
+
|
|
201
|
+
<div class="method-description">
|
|
202
|
+
<p><a class="source-toggle" href="#"
|
|
203
|
+
onclick="toggleCode('M000044-source');return false;">[Source]</a></p>
|
|
204
|
+
<div class="method-source-code" id="M000044-source">
|
|
205
|
+
<pre>
|
|
206
|
+
<span class="ruby-comment cmt"># File lib/wee/utils/autoreload.rb, line 4</span>
|
|
207
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">autoreload</span>(<span class="ruby-identifier">check_interval</span>=<span class="ruby-value">10</span>)
|
|
208
|
+
<span class="ruby-constant">Thread</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">start_time</span><span class="ruby-operator">|</span>
|
|
209
|
+
<span class="ruby-identifier">file_mtime</span> = {}
|
|
210
|
+
<span class="ruby-identifier">loop</span> <span class="ruby-keyword kw">do</span>
|
|
211
|
+
<span class="ruby-identifier">sleep</span> <span class="ruby-identifier">check_interval</span>
|
|
212
|
+
<span class="ruby-identifier">$LOADED_FEATURES</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">feature</span><span class="ruby-operator">|</span>
|
|
213
|
+
<span class="ruby-identifier">$LOAD_PATH</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">lp</span><span class="ruby-operator">|</span>
|
|
214
|
+
<span class="ruby-identifier">file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">lp</span>, <span class="ruby-identifier">feature</span>)
|
|
215
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-constant">File</span>.<span class="ruby-identifier">exists?</span>(<span class="ruby-identifier">file</span>) <span class="ruby-keyword kw">and</span>
|
|
216
|
+
<span class="ruby-constant">File</span>.<span class="ruby-identifier">stat</span>(<span class="ruby-identifier">file</span>).<span class="ruby-identifier">mtime</span> <span class="ruby-operator">></span> (<span class="ruby-identifier">file_mtime</span>[<span class="ruby-identifier">file</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">start_time</span>))
|
|
217
|
+
<span class="ruby-identifier">file_mtime</span>[<span class="ruby-identifier">file</span>] = <span class="ruby-constant">File</span>.<span class="ruby-identifier">stat</span>(<span class="ruby-identifier">file</span>).<span class="ruby-identifier">mtime</span>
|
|
218
|
+
<span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">"reload #{ file }"</span>
|
|
219
|
+
<span class="ruby-keyword kw">begin</span>
|
|
220
|
+
<span class="ruby-identifier">load</span>(<span class="ruby-identifier">file</span>)
|
|
221
|
+
<span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">e</span>
|
|
222
|
+
<span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">inspect</span>
|
|
223
|
+
<span class="ruby-keyword kw">end</span>
|
|
224
|
+
<span class="ruby-keyword kw">end</span>
|
|
225
|
+
<span class="ruby-keyword kw">end</span>
|
|
226
|
+
<span class="ruby-keyword kw">end</span>
|
|
227
|
+
<span class="ruby-keyword kw">end</span>
|
|
228
|
+
}
|
|
229
|
+
<span class="ruby-keyword kw">end</span>
|
|
230
|
+
</pre>
|
|
231
|
+
</div>
|
|
232
|
+
</div>
|
|
233
|
+
</div>
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
</div>
|
|
101
237
|
|
|
102
238
|
|
|
103
239
|
</div>
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
<h3 class="section-bar">Methods</h3>
|
|
89
89
|
|
|
90
90
|
<div class="name-list">
|
|
91
|
-
<a href="#
|
|
91
|
+
<a href="#M000046">new</a>
|
|
92
92
|
</div>
|
|
93
93
|
</div>
|
|
94
94
|
|
|
@@ -110,21 +110,21 @@
|
|
|
110
110
|
<div id="methods">
|
|
111
111
|
<h3 class="section-bar">Public Class methods</h3>
|
|
112
112
|
|
|
113
|
-
<div id="method-
|
|
114
|
-
<a name="
|
|
113
|
+
<div id="method-M000046" class="method-detail">
|
|
114
|
+
<a name="M000046"></a>
|
|
115
115
|
|
|
116
116
|
<div class="method-heading">
|
|
117
|
-
<a href="#
|
|
117
|
+
<a href="#M000046" class="method-signature">
|
|
118
118
|
<span class="method-name">new</span><span class="method-args">(capacity=20)</span>
|
|
119
119
|
</a>
|
|
120
120
|
</div>
|
|
121
121
|
|
|
122
122
|
<div class="method-description">
|
|
123
123
|
<p><a class="source-toggle" href="#"
|
|
124
|
-
onclick="toggleCode('
|
|
125
|
-
<div class="method-source-code" id="
|
|
124
|
+
onclick="toggleCode('M000046-source');return false;">[Source]</a></p>
|
|
125
|
+
<div class="method-source-code" id="M000046-source">
|
|
126
126
|
<pre>
|
|
127
|
-
<span class="ruby-comment cmt"># File lib/wee/utils/cache.rb, line
|
|
127
|
+
<span class="ruby-comment cmt"># File lib/wee/utils/cache.rb, line 4</span>
|
|
128
128
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">capacity</span>=<span class="ruby-value">20</span>)
|
|
129
129
|
<span class="ruby-keyword kw">super</span>(<span class="ruby-constant">Cache</span><span class="ruby-operator">::</span><span class="ruby-constant">Strategy</span><span class="ruby-operator">::</span><span class="ruby-constant">LRU</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">capacity</span>))
|
|
130
130
|
<span class="ruby-keyword kw">end</span>
|
|
@@ -97,9 +97,9 @@ href="Component.html">Wee::Component</a>.
|
|
|
97
97
|
<h3 class="section-bar">Methods</h3>
|
|
98
98
|
|
|
99
99
|
<div class="name-list">
|
|
100
|
-
<a href="#
|
|
101
|
-
<a href="#
|
|
102
|
-
<a href="#
|
|
100
|
+
<a href="#M000205">new</a>
|
|
101
|
+
<a href="#M000207">restore_snapshot</a>
|
|
102
|
+
<a href="#M000206">take_snapshot</a>
|
|
103
103
|
</div>
|
|
104
104
|
</div>
|
|
105
105
|
|
|
@@ -134,19 +134,19 @@ href="Component.html">Wee::Component</a>.
|
|
|
134
134
|
<div id="methods">
|
|
135
135
|
<h3 class="section-bar">Public Class methods</h3>
|
|
136
136
|
|
|
137
|
-
<div id="method-
|
|
138
|
-
<a name="
|
|
137
|
+
<div id="method-M000205" class="method-detail">
|
|
138
|
+
<a name="M000205"></a>
|
|
139
139
|
|
|
140
140
|
<div class="method-heading">
|
|
141
|
-
<a href="#
|
|
141
|
+
<a href="#M000205" class="method-signature">
|
|
142
142
|
<span class="method-name">new</span><span class="method-args">(value=nil)</span>
|
|
143
143
|
</a>
|
|
144
144
|
</div>
|
|
145
145
|
|
|
146
146
|
<div class="method-description">
|
|
147
147
|
<p><a class="source-toggle" href="#"
|
|
148
|
-
onclick="toggleCode('
|
|
149
|
-
<div class="method-source-code" id="
|
|
148
|
+
onclick="toggleCode('M000205-source');return false;">[Source]</a></p>
|
|
149
|
+
<div class="method-source-code" id="M000205-source">
|
|
150
150
|
<pre>
|
|
151
151
|
<span class="ruby-comment cmt"># File lib/wee/core/valueholder.rb, line 8</span>
|
|
152
152
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">value</span>=<span class="ruby-keyword kw">nil</span>)
|
|
@@ -159,19 +159,19 @@ href="Component.html">Wee::Component</a>.
|
|
|
159
159
|
|
|
160
160
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
161
161
|
|
|
162
|
-
<div id="method-
|
|
163
|
-
<a name="
|
|
162
|
+
<div id="method-M000207" class="method-detail">
|
|
163
|
+
<a name="M000207"></a>
|
|
164
164
|
|
|
165
165
|
<div class="method-heading">
|
|
166
|
-
<a href="#
|
|
166
|
+
<a href="#M000207" class="method-signature">
|
|
167
167
|
<span class="method-name">restore_snapshot</span><span class="method-args">(value)</span>
|
|
168
168
|
</a>
|
|
169
169
|
</div>
|
|
170
170
|
|
|
171
171
|
<div class="method-description">
|
|
172
172
|
<p><a class="source-toggle" href="#"
|
|
173
|
-
onclick="toggleCode('
|
|
174
|
-
<div class="method-source-code" id="
|
|
173
|
+
onclick="toggleCode('M000207-source');return false;">[Source]</a></p>
|
|
174
|
+
<div class="method-source-code" id="M000207-source">
|
|
175
175
|
<pre>
|
|
176
176
|
<span class="ruby-comment cmt"># File lib/wee/core/valueholder.rb, line 16</span>
|
|
177
177
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">restore_snapshot</span>(<span class="ruby-identifier">value</span>)
|
|
@@ -182,19 +182,19 @@ href="Component.html">Wee::Component</a>.
|
|
|
182
182
|
</div>
|
|
183
183
|
</div>
|
|
184
184
|
|
|
185
|
-
<div id="method-
|
|
186
|
-
<a name="
|
|
185
|
+
<div id="method-M000206" class="method-detail">
|
|
186
|
+
<a name="M000206"></a>
|
|
187
187
|
|
|
188
188
|
<div class="method-heading">
|
|
189
|
-
<a href="#
|
|
189
|
+
<a href="#M000206" class="method-signature">
|
|
190
190
|
<span class="method-name">take_snapshot</span><span class="method-args">()</span>
|
|
191
191
|
</a>
|
|
192
192
|
</div>
|
|
193
193
|
|
|
194
194
|
<div class="method-description">
|
|
195
195
|
<p><a class="source-toggle" href="#"
|
|
196
|
-
onclick="toggleCode('
|
|
197
|
-
<div class="method-source-code" id="
|
|
196
|
+
onclick="toggleCode('M000206-source');return false;">[Source]</a></p>
|
|
197
|
+
<div class="method-source-code" id="M000206-source">
|
|
198
198
|
<pre>
|
|
199
199
|
<span class="ruby-comment cmt"># File lib/wee/core/valueholder.rb, line 12</span>
|
|
200
200
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">take_snapshot</span>
|