wee 0.10.0 → 2.0.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.
Files changed (369) hide show
  1. data/README.rdoc +127 -0
  2. data/Rakefile +11 -32
  3. data/doc/rdoc/classes/Array.html +28 -24
  4. data/doc/rdoc/classes/Hash.html +28 -24
  5. data/doc/rdoc/classes/Object.html +37 -84
  6. data/doc/rdoc/classes/String.html +89 -21
  7. data/doc/rdoc/classes/Struct.html +32 -82
  8. data/doc/rdoc/classes/Wee.html +285 -86
  9. data/doc/rdoc/classes/Wee/AnswerDecoration.html +111 -48
  10. data/doc/rdoc/classes/Wee/{Context.html → AnswerDecoration/Answer.html} +61 -51
  11. data/doc/rdoc/classes/Wee/Application.html +161 -322
  12. data/doc/rdoc/classes/Wee/Application/SessionCache.html +162 -0
  13. data/doc/rdoc/classes/Wee/Brush.html +147 -62
  14. data/doc/rdoc/classes/{Enumerable.html → Wee/Brush/ActionInputTag.html} +68 -41
  15. data/doc/rdoc/classes/Wee/Brush/AnchorTag.html +150 -100
  16. data/doc/rdoc/classes/Wee/Brush/CheckboxTag.html +132 -46
  17. data/doc/rdoc/classes/Wee/Brush/FileUploadTag.html +63 -41
  18. data/doc/rdoc/classes/Wee/Brush/FormTag.html +184 -78
  19. data/doc/rdoc/classes/Wee/Brush/GenericEncodedTextBrush.html +48 -65
  20. data/doc/rdoc/classes/Wee/Brush/GenericSingleTagBrush.html +83 -37
  21. data/doc/rdoc/classes/Wee/Brush/GenericTagBrush.html +334 -310
  22. data/doc/rdoc/classes/Wee/Brush/GenericTextBrush.html +74 -54
  23. data/doc/rdoc/classes/Wee/Brush/HiddenInputTag.html +58 -43
  24. data/doc/rdoc/classes/Wee/Brush/ImageButtonTag.html +64 -74
  25. data/doc/rdoc/classes/Wee/Brush/ImageTag.html +109 -86
  26. data/doc/rdoc/classes/Wee/Brush/InputTag.html +205 -45
  27. data/doc/rdoc/classes/Wee/Brush/JavascriptTag.html +96 -34
  28. data/doc/rdoc/classes/Wee/Brush/Page.html +129 -67
  29. data/doc/rdoc/classes/Wee/{Utils/LRUCache.html → Brush/PasswordInputTag.html} +65 -38
  30. data/doc/rdoc/classes/Wee/Brush/RadioButtonTag.html +132 -78
  31. data/doc/rdoc/classes/Wee/Brush/{RadioButtonTag/RadioGroup.html → RadioGroup.html} +91 -53
  32. data/doc/rdoc/classes/Wee/Brush/SelectListTag.html +301 -127
  33. data/doc/rdoc/classes/Wee/Brush/SelectOptionTag.html +96 -33
  34. data/doc/rdoc/classes/Wee/Brush/SubmitButtonTag.html +59 -44
  35. data/doc/rdoc/classes/Wee/Brush/TableDataTag.html +94 -57
  36. data/doc/rdoc/classes/Wee/Brush/TableHeaderTag.html +96 -33
  37. data/doc/rdoc/classes/Wee/Brush/TableRowTag.html +181 -121
  38. data/doc/rdoc/classes/Wee/Brush/TableTag.html +94 -32
  39. data/doc/rdoc/classes/Wee/Brush/TextAreaTag.html +257 -71
  40. data/doc/rdoc/classes/Wee/Brush/TextInputTag.html +58 -43
  41. data/doc/rdoc/classes/Wee/CallAnswerMixin.html +289 -0
  42. data/doc/rdoc/classes/Wee/CallbackMixin.html +233 -0
  43. data/doc/rdoc/classes/Wee/CallbackRegistry.html +179 -155
  44. data/doc/rdoc/classes/Wee/Callbacks.html +262 -0
  45. data/doc/rdoc/classes/Wee/Component.html +228 -779
  46. data/doc/rdoc/classes/Wee/Decoration.html +144 -159
  47. data/doc/rdoc/classes/Wee/DecorationMixin.html +340 -0
  48. data/doc/rdoc/classes/Wee/Delegate.html +119 -76
  49. data/doc/rdoc/classes/Wee/DupReplaceSnapshotMixin.html +64 -47
  50. data/doc/rdoc/classes/Wee/ErrorResponse.html +59 -62
  51. data/doc/rdoc/classes/Wee/FormDecoration.html +51 -37
  52. data/doc/rdoc/classes/Wee/GenericResponse.html +60 -35
  53. data/doc/rdoc/classes/Wee/HtmlCanvas.html +1000 -602
  54. data/doc/rdoc/classes/Wee/HtmlDocument.html +288 -0
  55. data/doc/rdoc/classes/Wee/HtmlWriter.html +227 -126
  56. data/doc/rdoc/classes/Wee/IdGenerator.html +60 -31
  57. data/doc/rdoc/classes/Wee/IdGenerator/Secure.html +282 -0
  58. data/doc/rdoc/classes/Wee/{SimpleIdGenerator.html → IdGenerator/Sequential.html} +76 -49
  59. data/doc/rdoc/classes/Wee/JQuery.html +221 -0
  60. data/doc/rdoc/classes/Wee/LRUCache.html +514 -0
  61. data/doc/rdoc/classes/Wee/LRUCache/Item.html +158 -0
  62. data/doc/rdoc/classes/Wee/ObjectSnapshotMixin.html +187 -0
  63. data/doc/rdoc/classes/Wee/PageDecoration.html +88 -59
  64. data/doc/rdoc/classes/Wee/Presenter.html +124 -704
  65. data/doc/rdoc/classes/Wee/RedirectResponse.html +64 -33
  66. data/doc/rdoc/classes/Wee/RefreshResponse.html +59 -44
  67. data/doc/rdoc/classes/Wee/Renderer.html +234 -54
  68. data/doc/rdoc/classes/Wee/Request.html +151 -286
  69. data/doc/rdoc/classes/Wee/Response.html +29 -212
  70. data/doc/rdoc/classes/Wee/Session.html +585 -360
  71. data/doc/rdoc/classes/Wee/{StateHolder.html → Session/AbortCallbackProcessing.html} +67 -40
  72. data/doc/rdoc/classes/Wee/Session/MutexSerializer.html +166 -0
  73. data/doc/rdoc/classes/{Cache/Strategy/LFU/Item.html → Wee/Session/Page.html} +26 -27
  74. data/doc/rdoc/classes/Wee/Session/ThreadSerializer.html +219 -0
  75. data/doc/rdoc/classes/Wee/State.html +307 -0
  76. data/doc/rdoc/classes/{Cache/Strategy/LRU/Item.html → Wee/State/Snapshot.html} +26 -27
  77. data/doc/rdoc/classes/{Cache/Strategy/Unbounded/Item.html → Wee/State/SnapshotIVars.html} +26 -27
  78. data/doc/rdoc/classes/Wee/StructSnapshotMixin.html +183 -0
  79. data/doc/rdoc/classes/Wee/WrapperDecoration.html +101 -35
  80. data/doc/rdoc/created.rid +1 -1
  81. data/doc/rdoc/files/README_rdoc.html +243 -0
  82. data/doc/rdoc/files/lib/wee/application_rb.html +22 -30
  83. data/doc/rdoc/files/lib/wee/{page_rb.html → call_answer_rb.html} +14 -25
  84. data/doc/rdoc/files/lib/wee/callback_rb.html +12 -29
  85. data/doc/rdoc/files/lib/wee/component_rb.html +22 -27
  86. data/doc/rdoc/files/lib/wee/decoration_rb.html +19 -20
  87. data/doc/rdoc/files/lib/wee/{idgen_rb.html → html_brushes_rb.html} +14 -25
  88. data/doc/rdoc/files/lib/wee/html_canvas_rb.html +15 -23
  89. data/doc/rdoc/files/lib/wee/{abstractsession_rb.html → html_document_rb.html} +17 -25
  90. data/doc/rdoc/files/lib/wee/html_writer_rb.html +15 -23
  91. data/doc/rdoc/files/lib/wee/{webrick_rb.html → id_generator_rb.html} +19 -25
  92. data/doc/rdoc/files/lib/wee/{core/page_rb.html → jquery/jquery_rb.html} +14 -25
  93. data/doc/rdoc/files/lib/wee/{state_registry_rb.html → jquery_rb.html} +17 -27
  94. data/doc/rdoc/files/lib/{cache/cache_rb.html → wee/lru_cache_rb.html} +14 -25
  95. data/doc/rdoc/files/lib/wee/presenter_rb.html +12 -34
  96. data/doc/rdoc/files/lib/wee/{holder_rb.html → renderer_rb.html} +14 -25
  97. data/doc/rdoc/files/lib/wee/request_rb.html +18 -32
  98. data/doc/rdoc/files/lib/wee/response_rb.html +17 -24
  99. data/doc/rdoc/files/lib/wee/session_rb.html +21 -23
  100. data/doc/rdoc/files/lib/wee/state_rb.html +90 -0
  101. data/doc/rdoc/files/lib/wee_rb.html +48 -40
  102. data/doc/rdoc/fr_class_index.html +111 -75
  103. data/doc/rdoc/fr_file_index.html +46 -76
  104. data/doc/rdoc/fr_method_index.html +473 -480
  105. data/doc/rdoc/index.html +6 -9
  106. data/doc/rdoc/rdoc-style.css +210 -119
  107. data/examples/ObjectSpaceBrowser.rb +33 -23
  108. data/examples/ajax.rb +71 -0
  109. data/examples/continuations.rb +28 -0
  110. data/examples/demo.rb +92 -36
  111. data/examples/demo/calculator.rb +63 -0
  112. data/examples/demo/calendar.rb +42 -55
  113. data/examples/demo/counter.rb +38 -0
  114. data/{lib/wee/examples → examples/demo}/editable_counter.rb +11 -6
  115. data/examples/demo/example.rb +28 -24
  116. data/examples/demo/file_upload.rb +19 -0
  117. data/{lib/wee/components → examples/demo}/messagebox.rb +3 -3
  118. data/examples/demo/radio.rb +33 -0
  119. data/{lib/wee/examples → examples/demo}/window.rb +15 -10
  120. data/examples/hw.rb +3 -4
  121. data/{lib/wee/components → examples}/pager.rb +14 -14
  122. data/lib/wee.rb +48 -25
  123. data/lib/wee/application.rb +69 -131
  124. data/lib/wee/call_answer.rb +118 -0
  125. data/lib/wee/callback.rb +88 -0
  126. data/lib/wee/component.rb +141 -0
  127. data/lib/wee/decoration.rb +242 -0
  128. data/lib/wee/html_brushes.rb +725 -0
  129. data/lib/wee/html_canvas.rb +241 -0
  130. data/lib/wee/html_document.rb +45 -0
  131. data/lib/wee/html_writer.rb +71 -0
  132. data/lib/wee/id_generator.rb +70 -0
  133. data/lib/wee/jquery.rb +1 -0
  134. data/lib/wee/jquery/jquery.rb +17 -0
  135. data/lib/wee/jquery/public/jquery-1.3.2.min.js +19 -0
  136. data/lib/wee/jquery/public/wee-jquery.js +19 -0
  137. data/lib/wee/lru_cache.rb +89 -0
  138. data/lib/wee/presenter.rb +43 -0
  139. data/lib/wee/renderer.rb +65 -0
  140. data/lib/wee/request.rb +37 -113
  141. data/lib/wee/response.rb +43 -70
  142. data/lib/wee/session.rb +304 -113
  143. data/lib/wee/state.rb +85 -0
  144. data/test/component_spec.rb +17 -0
  145. data/wee.gemspec +4 -3
  146. metadata +249 -452
  147. data/ChangeLog +0 -657
  148. data/INSTALL +0 -17
  149. data/README +0 -272
  150. data/TODO +0 -142
  151. data/benchmark/Centrino1300/result.2000.counter.action +0 -45
  152. data/benchmark/Centrino1300/result.2000.counter.render +0 -43
  153. data/benchmark/Centrino1300/result.2000.filehandler +0 -43
  154. data/benchmark/Centrino600/result.2000.counter.action +0 -47
  155. data/benchmark/Centrino600/result.2000.counter.render +0 -45
  156. data/benchmark/Centrino600/result.2000.filehandler +0 -43
  157. data/benchmark/Makefile +0 -53
  158. data/benchmark/counter.rb +0 -77
  159. data/benchmark/filehandler.rb +0 -6
  160. data/benchmark/report_req.rb +0 -12
  161. data/bin/wee +0 -100
  162. data/doc/rdoc/classes/ActionView.html +0 -107
  163. data/doc/rdoc/classes/ActionView/Base.html +0 -133
  164. data/doc/rdoc/classes/Cache.html +0 -126
  165. data/doc/rdoc/classes/Cache/StorageCache.html +0 -320
  166. data/doc/rdoc/classes/Cache/Strategy.html +0 -128
  167. data/doc/rdoc/classes/Cache/Strategy/CapacityBounded.html +0 -269
  168. data/doc/rdoc/classes/Cache/Strategy/LFU.html +0 -238
  169. data/doc/rdoc/classes/Cache/Strategy/LRU.html +0 -238
  170. data/doc/rdoc/classes/Cache/Strategy/Unbounded.html +0 -225
  171. data/doc/rdoc/classes/LiteralMethod.html +0 -196
  172. data/doc/rdoc/classes/Main.html +0 -289
  173. data/doc/rdoc/classes/OgApplication.html +0 -126
  174. data/doc/rdoc/classes/OgScaffolder.html +0 -827
  175. data/doc/rdoc/classes/OgScaffolder/Editor.html +0 -565
  176. data/doc/rdoc/classes/OgSession.html +0 -172
  177. data/doc/rdoc/classes/Recipe.html +0 -113
  178. data/doc/rdoc/classes/Wee/AbstractSession.html +0 -502
  179. data/doc/rdoc/classes/Wee/Brush/ActionCallbackMixin.html +0 -148
  180. data/doc/rdoc/classes/Wee/Brush/ActionMixin.html +0 -146
  181. data/doc/rdoc/classes/Wee/Brush/ActionURLCallbackMixin.html +0 -154
  182. data/doc/rdoc/classes/Wee/Brush/AssignMixin.html +0 -141
  183. data/doc/rdoc/classes/Wee/Brush/CallbackMixin.html +0 -141
  184. data/doc/rdoc/classes/Wee/Brush/InputCallbackMixin.html +0 -148
  185. data/doc/rdoc/classes/Wee/Brush/SelectListTag/SelectListCallback.html +0 -158
  186. data/doc/rdoc/classes/Wee/Brush/ToCallback.html +0 -146
  187. data/doc/rdoc/classes/Wee/Callback.html +0 -231
  188. data/doc/rdoc/classes/Wee/CallbackStream.html +0 -227
  189. data/doc/rdoc/classes/Wee/Canvas.html +0 -235
  190. data/doc/rdoc/classes/Wee/CanvasMixin.html +0 -225
  191. data/doc/rdoc/classes/Wee/Component/OnAnswer.html +0 -153
  192. data/doc/rdoc/classes/Wee/ComponentDispatcher.html +0 -289
  193. data/doc/rdoc/classes/Wee/ComponentRunner.html +0 -321
  194. data/doc/rdoc/classes/Wee/ErrorPage.html +0 -175
  195. data/doc/rdoc/classes/Wee/Examples.html +0 -114
  196. data/doc/rdoc/classes/Wee/Examples/Calculator.html +0 -319
  197. data/doc/rdoc/classes/Wee/Examples/Counter.html +0 -289
  198. data/doc/rdoc/classes/Wee/Examples/EditableCounter.html +0 -210
  199. data/doc/rdoc/classes/Wee/Examples/Window.html +0 -346
  200. data/doc/rdoc/classes/Wee/FastCGIAdaptor.html +0 -227
  201. data/doc/rdoc/classes/Wee/Helper.html +0 -148
  202. data/doc/rdoc/classes/Wee/HtmlCanvasRenderer.html +0 -1230
  203. data/doc/rdoc/classes/Wee/LiteralMethodCallback.html +0 -198
  204. data/doc/rdoc/classes/Wee/LoginDecoration.html +0 -261
  205. data/doc/rdoc/classes/Wee/Md5IdGenerator.html +0 -181
  206. data/doc/rdoc/classes/Wee/MessageBox.html +0 -180
  207. data/doc/rdoc/classes/Wee/MethodCallback.html +0 -193
  208. data/doc/rdoc/classes/Wee/Nitro.html +0 -114
  209. data/doc/rdoc/classes/Wee/Nitro/ControllerClassMixin.html +0 -192
  210. data/doc/rdoc/classes/Wee/Nitro/ControllerMixin.html +0 -345
  211. data/doc/rdoc/classes/Wee/Nitro/FormTag.html +0 -155
  212. data/doc/rdoc/classes/Wee/Nitro/HtmlCanvasRenderer.html +0 -178
  213. data/doc/rdoc/classes/Wee/Page.html +0 -115
  214. data/doc/rdoc/classes/Wee/PagelessApplication.html +0 -154
  215. data/doc/rdoc/classes/Wee/PagelessComponentDriver.html +0 -296
  216. data/doc/rdoc/classes/Wee/PagelessRequest.html +0 -208
  217. data/doc/rdoc/classes/Wee/PagelessSession.html +0 -359
  218. data/doc/rdoc/classes/Wee/Pager.html +0 -534
  219. data/doc/rdoc/classes/Wee/Rails.html +0 -114
  220. data/doc/rdoc/classes/Wee/Rails/ControllerClassMixin.html +0 -192
  221. data/doc/rdoc/classes/Wee/Rails/ControllerMixin.html +0 -342
  222. data/doc/rdoc/classes/Wee/Rails/FormTag.html +0 -155
  223. data/doc/rdoc/classes/Wee/Rails/HtmlCanvasRenderer.html +0 -177
  224. data/doc/rdoc/classes/Wee/RenderingContext.html +0 -283
  225. data/doc/rdoc/classes/Wee/RequestHandler.html +0 -341
  226. data/doc/rdoc/classes/Wee/Snapshot.html +0 -211
  227. data/doc/rdoc/classes/Wee/StateRegistry.html +0 -434
  228. data/doc/rdoc/classes/Wee/StateRegistry/Snapshot.html +0 -320
  229. data/doc/rdoc/classes/Wee/StateRegistry/WithObject.html +0 -153
  230. data/doc/rdoc/classes/Wee/Utils.html +0 -300
  231. data/doc/rdoc/classes/Wee/ValueHolder.html +0 -220
  232. data/doc/rdoc/classes/Wee/WEBrickAdaptor.html +0 -368
  233. data/doc/rdoc/files/INSTALL.html +0 -130
  234. data/doc/rdoc/files/README.html +0 -471
  235. data/doc/rdoc/files/lib/wee/adaptors/fastcgi_rb.html +0 -108
  236. data/doc/rdoc/files/lib/wee/adaptors/nitro_rb.html +0 -101
  237. data/doc/rdoc/files/lib/wee/adaptors/rails_rb.html +0 -101
  238. data/doc/rdoc/files/lib/wee/adaptors/webrick_rb.html +0 -108
  239. data/doc/rdoc/files/lib/wee/component_ext_rb.html +0 -101
  240. data/doc/rdoc/files/lib/wee/components/component_dispatcher_rb.html +0 -108
  241. data/doc/rdoc/files/lib/wee/components/form_decoration_rb.html +0 -101
  242. data/doc/rdoc/files/lib/wee/components/login_decoration_rb.html +0 -101
  243. data/doc/rdoc/files/lib/wee/components/messagebox_rb.html +0 -101
  244. data/doc/rdoc/files/lib/wee/components/page_decoration_rb.html +0 -101
  245. data/doc/rdoc/files/lib/wee/components/pager_rb.html +0 -101
  246. data/doc/rdoc/files/lib/wee/components/wrapper_decoration_rb.html +0 -101
  247. data/doc/rdoc/files/lib/wee/components_rb.html +0 -114
  248. data/doc/rdoc/files/lib/wee/context_rb.html +0 -101
  249. data/doc/rdoc/files/lib/wee/continuation/core/component_rb.html +0 -101
  250. data/doc/rdoc/files/lib/wee/continuation/session_rb.html +0 -108
  251. data/doc/rdoc/files/lib/wee/continuation_rb.html +0 -116
  252. data/doc/rdoc/files/lib/wee/core/callback_rb.html +0 -115
  253. data/doc/rdoc/files/lib/wee/core/component_rb.html +0 -108
  254. data/doc/rdoc/files/lib/wee/core/componentrunner_rb.html +0 -110
  255. data/doc/rdoc/files/lib/wee/core/context_rb.html +0 -101
  256. data/doc/rdoc/files/lib/wee/core/decoration_rb.html +0 -133
  257. data/doc/rdoc/files/lib/wee/core/idgen_rb.html +0 -101
  258. data/doc/rdoc/files/lib/wee/core/presenter_rb.html +0 -112
  259. data/doc/rdoc/files/lib/wee/core/renderer_rb.html +0 -107
  260. data/doc/rdoc/files/lib/wee/core/snapshot_rb.html +0 -113
  261. data/doc/rdoc/files/lib/wee/core/valueholder_rb.html +0 -110
  262. data/doc/rdoc/files/lib/wee/core_ext_rb.html +0 -101
  263. data/doc/rdoc/files/lib/wee/core_rb.html +0 -124
  264. data/doc/rdoc/files/lib/wee/databases/og/application_rb.html +0 -101
  265. data/doc/rdoc/files/lib/wee/databases/og/old_scaffolder_rb.html +0 -101
  266. data/doc/rdoc/files/lib/wee/databases/og/scaffolder_rb.html +0 -115
  267. data/doc/rdoc/files/lib/wee/databases/og/session_rb.html +0 -101
  268. data/doc/rdoc/files/lib/wee/databases/og_rb.html +0 -111
  269. data/doc/rdoc/files/lib/wee/examples/calculator_rb.html +0 -107
  270. data/doc/rdoc/files/lib/wee/examples/counter_rb.html +0 -101
  271. data/doc/rdoc/files/lib/wee/examples/editable_counter_rb.html +0 -114
  272. data/doc/rdoc/files/lib/wee/examples/window_rb.html +0 -101
  273. data/doc/rdoc/files/lib/wee/idgen/md5_rb.html +0 -115
  274. data/doc/rdoc/files/lib/wee/idgen/simple_rb.html +0 -107
  275. data/doc/rdoc/files/lib/wee/pageless/application_rb.html +0 -108
  276. data/doc/rdoc/files/lib/wee/pageless/request_rb.html +0 -101
  277. data/doc/rdoc/files/lib/wee/pageless/session_rb.html +0 -109
  278. data/doc/rdoc/files/lib/wee/pageless_rb.html +0 -110
  279. data/doc/rdoc/files/lib/wee/renderer/html/brushes_rb.html +0 -101
  280. data/doc/rdoc/files/lib/wee/renderer/html/canvas_rb.html +0 -108
  281. data/doc/rdoc/files/lib/wee/renderer/html/writer_rb.html +0 -108
  282. data/doc/rdoc/files/lib/wee/rendering/html/brushes_rb.html +0 -101
  283. data/doc/rdoc/files/lib/wee/rendering/html/canvas_rb.html +0 -101
  284. data/doc/rdoc/files/lib/wee/rendering/html/writer_rb.html +0 -108
  285. data/doc/rdoc/files/lib/wee/requesthandler_rb.html +0 -101
  286. data/doc/rdoc/files/lib/wee/skeleton/og/components/main_rb.html +0 -101
  287. data/doc/rdoc/files/lib/wee/skeleton/og/conf/db_rb.html +0 -114
  288. data/doc/rdoc/files/lib/wee/skeleton/og/models/recipe_rb.html +0 -101
  289. data/doc/rdoc/files/lib/wee/skeleton/og/run_rb.html +0 -115
  290. data/doc/rdoc/files/lib/wee/skeleton/simple/components/main_rb.html +0 -101
  291. data/doc/rdoc/files/lib/wee/skeleton/simple/run_rb.html +0 -111
  292. data/doc/rdoc/files/lib/wee/snapshot_ext_rb.html +0 -101
  293. data/doc/rdoc/files/lib/wee/snapshot_rb.html +0 -107
  294. data/doc/rdoc/files/lib/wee/stuff_rb.html +0 -144
  295. data/doc/rdoc/files/lib/wee/template_rb.html +0 -101
  296. data/doc/rdoc/files/lib/wee/utils/autoreload_rb.html +0 -101
  297. data/doc/rdoc/files/lib/wee/utils/cache_rb.html +0 -108
  298. data/doc/rdoc/files/lib/wee/utils/helper_rb.html +0 -101
  299. data/doc/rdoc/files/lib/wee/utils_rb.html +0 -110
  300. data/examples/ajax/ajax.js +0 -444
  301. data/examples/ajax/ajax.rb +0 -31
  302. data/examples/cc.rb +0 -74
  303. data/examples/dispatcher.rb +0 -37
  304. data/examples/draw.rb +0 -94
  305. data/examples/live-update.rb +0 -45
  306. data/examples/nitro/run.rb +0 -42
  307. data/examples/og-test.rb +0 -60
  308. data/examples/radio.rb +0 -44
  309. data/examples/test.rb +0 -39
  310. data/install.rb +0 -14
  311. data/lib/cache/cache.rb +0 -167
  312. data/lib/wee/abstractsession.rb +0 -96
  313. data/lib/wee/adaptors/fastcgi.rb +0 -76
  314. data/lib/wee/adaptors/nitro.rb +0 -155
  315. data/lib/wee/adaptors/rails.rb +0 -154
  316. data/lib/wee/adaptors/webrick.rb +0 -89
  317. data/lib/wee/components.rb +0 -7
  318. data/lib/wee/components/component_dispatcher.rb +0 -46
  319. data/lib/wee/components/form_decoration.rb +0 -7
  320. data/lib/wee/components/login_decoration.rb +0 -35
  321. data/lib/wee/components/page_decoration.rb +0 -14
  322. data/lib/wee/components/wrapper_decoration.rb +0 -7
  323. data/lib/wee/continuation.rb +0 -5
  324. data/lib/wee/continuation/core/component.rb +0 -56
  325. data/lib/wee/continuation/session.rb +0 -64
  326. data/lib/wee/core.rb +0 -16
  327. data/lib/wee/core/callback.rb +0 -121
  328. data/lib/wee/core/component.rb +0 -356
  329. data/lib/wee/core/componentrunner.rb +0 -73
  330. data/lib/wee/core/context.rb +0 -27
  331. data/lib/wee/core/decoration.rb +0 -138
  332. data/lib/wee/core/idgen.rb +0 -5
  333. data/lib/wee/core/page.rb +0 -1
  334. data/lib/wee/core/presenter.rb +0 -100
  335. data/lib/wee/core/renderer.rb +0 -23
  336. data/lib/wee/core/snapshot.rb +0 -21
  337. data/lib/wee/core/valueholder.rb +0 -19
  338. data/lib/wee/core_ext.rb +0 -122
  339. data/lib/wee/databases/og.rb +0 -4
  340. data/lib/wee/databases/og/application.rb +0 -3
  341. data/lib/wee/databases/og/old_scaffolder.rb +0 -98
  342. data/lib/wee/databases/og/scaffolder.rb +0 -255
  343. data/lib/wee/databases/og/session.rb +0 -9
  344. data/lib/wee/examples/calculator.rb +0 -70
  345. data/lib/wee/examples/counter.rb +0 -33
  346. data/lib/wee/idgen/md5.rb +0 -21
  347. data/lib/wee/idgen/sequential.rb +0 -11
  348. data/lib/wee/pageless.rb +0 -3
  349. data/lib/wee/pageless/application.rb +0 -13
  350. data/lib/wee/pageless/request.rb +0 -27
  351. data/lib/wee/pageless/session.rb +0 -74
  352. data/lib/wee/renderer/html/brushes.rb +0 -667
  353. data/lib/wee/renderer/html/canvas.rb +0 -265
  354. data/lib/wee/renderer/html/writer.rb +0 -80
  355. data/lib/wee/requesthandler.rb +0 -81
  356. data/lib/wee/skeleton/og/README +0 -38
  357. data/lib/wee/skeleton/og/components/main.rb +0 -20
  358. data/lib/wee/skeleton/og/conf/db.rb +0 -8
  359. data/lib/wee/skeleton/og/models/recipe.rb +0 -5
  360. data/lib/wee/skeleton/og/run.rb +0 -23
  361. data/lib/wee/skeleton/simple/README +0 -32
  362. data/lib/wee/skeleton/simple/components/main.rb +0 -25
  363. data/lib/wee/skeleton/simple/run.rb +0 -12
  364. data/lib/wee/snapshot_ext.rb +0 -41
  365. data/lib/wee/template.rb +0 -42
  366. data/lib/wee/utils.rb +0 -5
  367. data/lib/wee/utils/autoreload.rb +0 -56
  368. data/lib/wee/utils/cache.rb +0 -7
  369. data/lib/wee/utils/helper.rb +0 -51
@@ -1,12 +1,9 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
6
3
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
4
  <head>
8
- <title>Class: Wee::Request</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
5
+ <title>Class: Wee::Request [RDoc Documentation]</title>
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
10
7
  <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
8
  <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
9
  <script type="text/javascript">
@@ -25,7 +22,7 @@
25
22
  return false;
26
23
 
27
24
  elemStyle = elem.style;
28
-
25
+
29
26
  if ( elemStyle.display != "block" ) {
30
27
  elemStyle.display = "block"
31
28
  } else {
@@ -34,10 +31,10 @@
34
31
 
35
32
  return true;
36
33
  }
37
-
34
+
38
35
  // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
36
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }<\/style>" )
37
+
41
38
  // ]]>
42
39
  </script>
43
40
 
@@ -45,7 +42,6 @@
45
42
  <body>
46
43
 
47
44
 
48
-
49
45
  <div id="classHeader">
50
46
  <table class="header-table">
51
47
  <tr class="top-aligned-row">
@@ -55,86 +51,65 @@
55
51
  <tr class="top-aligned-row">
56
52
  <td><strong>In:</strong></td>
57
53
  <td>
54
+
55
+
58
56
  <a href="../../files/lib/wee/request_rb.html">
57
+
59
58
  lib/wee/request.rb
59
+
60
60
  </a>
61
+
62
+
61
63
  <br />
64
+
62
65
  </td>
63
66
  </tr>
64
67
 
68
+
65
69
  <tr class="top-aligned-row">
66
70
  <td><strong>Parent:</strong></td>
67
71
  <td>
68
- <a href="../Object.html">
69
- Object
70
- </a>
72
+
73
+ Rack::Request
74
+
71
75
  </td>
72
76
  </tr>
77
+
73
78
  </table>
74
79
  </div>
75
80
  <!-- banner header -->
76
81
 
77
82
  <div id="bodyContent">
78
83
 
79
-
80
-
81
84
  <div id="contextContent">
82
85
 
83
- <div id="description">
84
- <p>
85
- Represents a request.
86
- </p>
87
- <p>
88
- NOTE that if there are fields named &quot;xxx&quot; and
89
- &quot;xxx.yyy&quot;, the value of fields[&#8216;xxx&#8217;] is a <a
90
- href="../Hash.html">Hash</a> {nil =&gt; val of &quot;xxx&quot;,
91
- &#8216;yyy&#8217; =&gt; val of &#8216;xxx.yyy&#8217;}. This is for the
92
- image-button to work correctly.
93
- </p>
94
-
95
- </div>
96
-
97
-
98
86
  </div>
99
87
 
88
+
100
89
  <div id="method-list">
101
90
  <h3 class="section-bar">Methods</h3>
102
91
 
103
92
  <div class="name-list">
104
- <a href="#M000386">action?</a>&nbsp;&nbsp;
105
- <a href="#M000385">application_path</a>&nbsp;&nbsp;
106
- <a href="#M000388">build_url</a>&nbsp;&nbsp;
107
- <a href="#M000390">make_request_path</a>&nbsp;&nbsp;
108
- <a href="#M000384">new</a>&nbsp;&nbsp;
109
- <a href="#M000389">pageless?</a>&nbsp;&nbsp;
110
- <a href="#M000391">parse_fields</a>&nbsp;&nbsp;
111
- <a href="#M000392">parse_path</a>&nbsp;&nbsp;
112
- <a href="#M000387">render?</a>&nbsp;&nbsp;
113
- </div>
114
- </div>
115
93
 
116
- </div>
94
+ <a href="#M000041">action?</a>&nbsp;&nbsp;
117
95
 
96
+ <a href="#M000043">build_url</a>&nbsp;&nbsp;
118
97
 
119
- <!-- if includes -->
120
-
121
- <div id="section">
98
+ <a href="#M000040">new</a>&nbsp;&nbsp;
122
99
 
100
+ <a href="#M000039">new</a>&nbsp;&nbsp;
123
101
 
124
- <div id="constants-list">
125
- <h3 class="section-bar">Constants</h3>
102
+ <a href="#M000042">render?</a>&nbsp;&nbsp;
126
103
 
127
- <div class="name-list">
128
- <table summary="Constants">
129
- <tr class="top-aligned-row context-row">
130
- <td class="context-item-name">DELIM</td>
131
- <td>=</td>
132
- <td class="context-item-value">'/___/'</td>
133
- </tr>
134
- </table>
135
104
  </div>
136
105
  </div>
137
106
 
107
+ </div>
108
+
109
+ <!-- if includes -->
110
+
111
+ <div id="section">
112
+
138
113
 
139
114
 
140
115
  <div id="attribute-list">
@@ -142,344 +117,234 @@ image-button to work correctly.
142
117
 
143
118
  <div class="name-list">
144
119
  <table>
145
- <tr class="top-aligned-row context-row">
146
- <td class="context-item-name">cookies</td>
147
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
148
- <td class="context-item-desc"></td>
149
- </tr>
120
+
150
121
  <tr class="top-aligned-row context-row">
151
122
  <td class="context-item-name">fields</td>
123
+
152
124
  <td class="context-item-value">&nbsp;[R]&nbsp;</td>
125
+
153
126
  <td class="context-item-desc"></td>
154
127
  </tr>
155
- <tr class="top-aligned-row context-row">
156
- <td class="context-item-name">info</td>
157
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
158
- <td class="context-item-desc">
159
- The part of the URL that is user-defineable
160
128
 
161
- </td>
162
- </tr>
163
129
  <tr class="top-aligned-row context-row">
164
130
  <td class="context-item-name">page_id</td>
165
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
131
+
132
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
133
+
166
134
  <td class="context-item-desc"></td>
167
135
  </tr>
136
+
168
137
  <tr class="top-aligned-row context-row">
169
- <td class="context-item-name">request_handler_id</td>
138
+ <td class="context-item-name">session_id</td>
139
+
170
140
  <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
141
+
171
142
  <td class="context-item-desc"></td>
172
143
  </tr>
144
+
173
145
  </table>
174
146
  </div>
175
147
  </div>
176
-
177
148
 
178
149
 
179
150
  <!-- if method_list -->
151
+
180
152
  <div id="methods">
153
+
181
154
  <h3 class="section-bar">Public Class methods</h3>
182
155
 
183
- <div id="method-M000384" class="method-detail">
184
- <a name="M000384"></a>
156
+
157
+ <div id="method-M000040" class="method-detail">
158
+ <a name="M000040"></a>
185
159
 
186
160
  <div class="method-heading">
187
- <a href="#M000384" class="method-signature">
188
- <span class="method-name">new</span><span class="method-args">(app_path, path, headers, fields, cookies)</span>
189
- </a>
190
- </div>
191
-
192
- <div class="method-description">
193
- <p><a class="source-toggle" href="#"
194
- onclick="toggleCode('M000384-source');return false;">[Source]</a></p>
195
- <div class="method-source-code" id="M000384-source">
196
- <pre>
197
- <span class="ruby-comment cmt"># File lib/wee/request.rb, line 17</span>
198
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">app_path</span>, <span class="ruby-identifier">path</span>, <span class="ruby-identifier">headers</span>, <span class="ruby-identifier">fields</span>, <span class="ruby-identifier">cookies</span>)
199
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">app_path</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?/</span>
200
- <span class="ruby-ivar">@app_path</span>, <span class="ruby-ivar">@path</span>, <span class="ruby-ivar">@headers</span>, <span class="ruby-ivar">@cookies</span> = <span class="ruby-identifier">app_path</span>, <span class="ruby-identifier">path</span>, <span class="ruby-identifier">headers</span>, <span class="ruby-identifier">cookies</span>
201
- <span class="ruby-identifier">parse_fields</span>(<span class="ruby-identifier">fields</span>)
202
- <span class="ruby-identifier">parse_path</span>
203
- <span class="ruby-keyword kw">end</span>
204
- </pre>
205
- </div>
206
- </div>
207
- </div>
208
161
 
209
- <h3 class="section-bar">Public Instance methods</h3>
162
+ <a href="#M000040" class="method-signature">
210
163
 
211
- <div id="method-M000386" class="method-detail">
212
- <a name="M000386"></a>
164
+ <span class="method-name">new</span><span class="method-args">(env)</span>
213
165
 
214
- <div class="method-heading">
215
- <a href="#M000386" class="method-signature">
216
- <span class="method-name">action?</span><span class="method-args">()</span>
217
166
  </a>
167
+
218
168
  </div>
219
-
169
+
220
170
  <div class="method-description">
221
- <p>
222
- Is this an action request?
223
- </p>
171
+
224
172
  <p><a class="source-toggle" href="#"
225
- onclick="toggleCode('M000386-source');return false;">[Source]</a></p>
226
- <div class="method-source-code" id="M000386-source">
173
+ onclick="toggleCode('M000040-source');return false;">[Source]</a></p>
174
+ <div class="method-source-code" id="M000040-source">
227
175
  <pre>
228
- <span class="ruby-comment cmt"># File lib/wee/request.rb, line 29</span>
229
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">action?</span>
230
- <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">render?</span>
231
- <span class="ruby-keyword kw">end</span>
176
+ <span class="ruby-comment cmt"># File lib/wee/request.rb, line 15</span>
177
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">env</span>)
178
+ <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">env</span>)
179
+ <span class="ruby-ivar">@fields</span> = <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">params</span>
180
+ <span class="ruby-ivar">@session_id</span> = <span class="ruby-ivar">@fields</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value str">&quot;_s&quot;</span>)
181
+ <span class="ruby-ivar">@page_id</span> = <span class="ruby-ivar">@fields</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value str">&quot;_p&quot;</span>)
182
+ <span class="ruby-keyword kw">end</span>
232
183
  </pre>
233
184
  </div>
185
+
234
186
  </div>
235
187
  </div>
236
188
 
237
- <div id="method-M000385" class="method-detail">
238
- <a name="M000385"></a>
189
+
190
+ <div id="method-M000039" class="method-detail">
191
+ <a name="M000039"></a>
239
192
 
240
193
  <div class="method-heading">
241
- <a href="#M000385" class="method-signature">
242
- <span class="method-name">application_path</span><span class="method-args">()</span>
194
+
195
+ <a href="#M000039" class="method-signature">
196
+
197
+ <span class="method-name">new</span><span class="method-args">(env)</span>
198
+
243
199
  </a>
200
+
244
201
  </div>
245
-
202
+
246
203
  <div class="method-description">
204
+
247
205
  <p><a class="source-toggle" href="#"
248
- onclick="toggleCode('M000385-source');return false;">[Source]</a></p>
249
- <div class="method-source-code" id="M000385-source">
206
+ onclick="toggleCode('M000039-source');return false;">[Source]</a></p>
207
+ <div class="method-source-code" id="M000039-source">
250
208
  <pre>
251
- <span class="ruby-comment cmt"># File lib/wee/request.rb, line 24</span>
252
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">application_path</span>
253
- <span class="ruby-ivar">@app_path</span>
254
- <span class="ruby-keyword kw">end</span>
209
+ <span class="ruby-comment cmt"># File lib/wee/request.rb, line 7</span>
210
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">env</span>)
211
+ <span class="ruby-identifier">env</span>[<span class="ruby-value str">'wee.request'</span>] <span class="ruby-operator">||=</span> <span class="ruby-keyword kw">super</span>
212
+ <span class="ruby-keyword kw">end</span>
255
213
  </pre>
256
214
  </div>
257
- </div>
258
- </div>
259
-
260
- <div id="method-M000388" class="method-detail">
261
- <a name="M000388"></a>
262
215
 
263
- <div class="method-heading">
264
- <a href="#M000388" class="method-signature">
265
- <span class="method-name">build_url</span><span class="method-args">(hash={})</span>
266
- </a>
267
216
  </div>
268
-
269
- <div class="method-description">
270
- <p><a class="source-toggle" href="#"
271
- onclick="toggleCode('M000388-source');return false;">[Source]</a></p>
272
- <div class="method-source-code" id="M000388-source">
273
- <pre>
274
- <span class="ruby-comment cmt"># File lib/wee/request.rb, line 38</span>
275
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">build_url</span>(<span class="ruby-identifier">hash</span>={})
276
- <span class="ruby-identifier">default</span> = {
277
- <span class="ruby-identifier">:request_handler_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">request_handler_id</span>,
278
- <span class="ruby-identifier">:page_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">page_id</span>,
279
- <span class="ruby-identifier">:info</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">info</span>
280
- }
281
- <span class="ruby-identifier">hash</span> = <span class="ruby-identifier">default</span>.<span class="ruby-identifier">update</span>(<span class="ruby-identifier">hash</span>)
217
+ </div>
282
218
 
283
- <span class="ruby-identifier">request_handler_id</span> = <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">:request_handler_id</span>]
284
- <span class="ruby-identifier">page_id</span> = <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">:page_id</span>]
285
- <span class="ruby-identifier">callback_id</span> = <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">:callback_id</span>]
286
- <span class="ruby-identifier">info</span> = <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">:info</span>]
287
219
 
288
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">request_handler_id</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword kw">and</span> <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">page_id</span>.<span class="ruby-identifier">nil?</span>
289
- <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">pageless?</span>
290
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">page_id</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword kw">and</span> <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">callback_id</span>.<span class="ruby-identifier">nil?</span>
291
- <span class="ruby-keyword kw">end</span>
220
+ <h3 class="section-bar">Public Instance methods</h3>
292
221
 
293
- <span class="ruby-comment cmt"># build request path, e.g. /___/req-id/page-id</span>
294
- <span class="ruby-identifier">req_path</span> = <span class="ruby-identifier">make_request_path</span>(<span class="ruby-identifier">request_handler_id</span>, <span class="ruby-identifier">page_id</span>)
295
222
 
296
- <span class="ruby-comment cmt"># build the whole url</span>
297
- <span class="ruby-identifier">url</span> = <span class="ruby-value str">&quot;&quot;</span>
298
- <span class="ruby-identifier">url</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@app_path</span>
223
+ <div id="method-M000041" class="method-detail">
224
+ <a name="M000041"></a>
299
225
 
300
- <span class="ruby-identifier">raise</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">url</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?/</span> <span class="ruby-comment cmt"># sanity check</span>
226
+ <div class="method-heading">
301
227
 
302
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">info</span>
303
- <span class="ruby-identifier">url</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">'/'</span>
304
- <span class="ruby-identifier">url</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">info</span>
305
- <span class="ruby-keyword kw">end</span>
306
- <span class="ruby-identifier">url</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">req_path</span>
228
+ <a href="#M000041" class="method-signature">
307
229
 
308
- <span class="ruby-identifier">url</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">'/'</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">info</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">req_path</span>.<span class="ruby-identifier">empty?</span>
230
+ <span class="method-name">action?</span><span class="method-args">()</span>
309
231
 
310
- <span class="ruby-identifier">url</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-value str">'?'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">callback_id</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">callback_id</span>
232
+ </a>
311
233
 
312
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">url</span>
313
- <span class="ruby-keyword kw">end</span>
314
- </pre>
315
- </div>
316
234
  </div>
317
- </div>
318
-
319
- <div id="method-M000387" class="method-detail">
320
- <a name="M000387"></a>
321
235
 
322
- <div class="method-heading">
323
- <a href="#M000387" class="method-signature">
324
- <span class="method-name">render?</span><span class="method-args">()</span>
325
- </a>
326
- </div>
327
-
328
236
  <div class="method-description">
237
+
329
238
  <p>
330
- Is this a render request?
239
+ Is this an action request?
331
240
  </p>
241
+
332
242
  <p><a class="source-toggle" href="#"
333
- onclick="toggleCode('M000387-source');return false;">[Source]</a></p>
334
- <div class="method-source-code" id="M000387-source">
243
+ onclick="toggleCode('M000041-source');return false;">[Source]</a></p>
244
+ <div class="method-source-code" id="M000041-source">
335
245
  <pre>
336
- <span class="ruby-comment cmt"># File lib/wee/request.rb, line 34</span>
337
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">render?</span>
338
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">fields</span>.<span class="ruby-identifier">empty?</span>
339
- <span class="ruby-keyword kw">end</span>
246
+ <span class="ruby-comment cmt"># File lib/wee/request.rb, line 23</span>
247
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">action?</span>
248
+ <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">render?</span>
249
+ <span class="ruby-keyword kw">end</span>
340
250
  </pre>
341
251
  </div>
252
+
342
253
  </div>
343
254
  </div>
344
255
 
345
- <h3 class="section-bar">Private Instance methods</h3>
346
256
 
347
- <div id="method-M000390" class="method-detail">
348
- <a name="M000390"></a>
257
+ <div id="method-M000043" class="method-detail">
258
+ <a name="M000043"></a>
349
259
 
350
260
  <div class="method-heading">
351
- <a href="#M000390" class="method-signature">
352
- <span class="method-name">make_request_path</span><span class="method-args">(request_handler_id, page_id)</span>
353
- </a>
354
- </div>
355
-
356
- <div class="method-description">
357
- <p><a class="source-toggle" href="#"
358
- onclick="toggleCode('M000390-source');return false;">[Source]</a></p>
359
- <div class="method-source-code" id="M000390-source">
360
- <pre>
361
- <span class="ruby-comment cmt"># File lib/wee/request.rb, line 84</span>
362
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">make_request_path</span>(<span class="ruby-identifier">request_handler_id</span>, <span class="ruby-identifier">page_id</span>)
363
- <span class="ruby-identifier">arr</span> = [<span class="ruby-identifier">request_handler_id</span>, <span class="ruby-identifier">page_id</span>].<span class="ruby-identifier">compact</span>
364
- <span class="ruby-identifier">req_path</span> =
365
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arr</span>.<span class="ruby-identifier">empty?</span>
366
- <span class="ruby-value str">&quot;&quot;</span>
367
- <span class="ruby-keyword kw">else</span>
368
- <span class="ruby-constant">DELIM</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">arr</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">'/'</span>)
369
- <span class="ruby-keyword kw">end</span>
370
- <span class="ruby-keyword kw">end</span>
371
- </pre>
372
- </div>
373
- </div>
374
- </div>
375
261
 
376
- <div id="method-M000389" class="method-detail">
377
- <a name="M000389"></a>
262
+ <a href="#M000043" class="method-signature">
263
+
264
+ <span class="method-name">build_url</span><span class="method-args">(hash={})</span>
378
265
 
379
- <div class="method-heading">
380
- <a href="#M000389" class="method-signature">
381
- <span class="method-name">pageless?</span><span class="method-args">()</span>
382
266
  </a>
267
+
383
268
  </div>
384
-
269
+
385
270
  <div class="method-description">
271
+
386
272
  <p><a class="source-toggle" href="#"
387
- onclick="toggleCode('M000389-source');return false;">[Source]</a></p>
388
- <div class="method-source-code" id="M000389-source">
273
+ onclick="toggleCode('M000043-source');return false;">[Source]</a></p>
274
+ <div class="method-source-code" id="M000043-source">
389
275
  <pre>
390
- <span class="ruby-comment cmt"># File lib/wee/request.rb, line 80</span>
391
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">pageless?</span>
392
- <span class="ruby-keyword kw">false</span>
393
- <span class="ruby-keyword kw">end</span>
394
- </pre>
395
- </div>
396
- </div>
397
- </div>
276
+ <span class="ruby-comment cmt"># File lib/wee/request.rb, line 32</span>
277
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">build_url</span>(<span class="ruby-identifier">hash</span>={})
278
+ <span class="ruby-identifier">session_id</span> = <span class="ruby-identifier">hash</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">:session_id</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">:session_id</span>] <span class="ruby-operator">:</span> <span class="ruby-ivar">@session_id</span>
279
+ <span class="ruby-identifier">page_id</span> = <span class="ruby-identifier">hash</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">:page_id</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">:page_id</span>] <span class="ruby-operator">:</span> <span class="ruby-ivar">@page_id</span>
280
+ <span class="ruby-identifier">callback_id</span> = <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">:callback_id</span>]
281
+ <span class="ruby-identifier">info</span> = <span class="ruby-identifier">hash</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">:info</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">:info</span>] <span class="ruby-operator">:</span> <span class="ruby-ivar">@info</span>
282
+
283
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">session_id</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword kw">and</span> <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">page_id</span>.<span class="ruby-identifier">nil?</span>
284
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">page_id</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword kw">and</span> <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">callback_id</span>.<span class="ruby-identifier">nil?</span>
398
285
 
399
- <div id="method-M000391" class="method-detail">
400
- <a name="M000391"></a>
286
+ <span class="ruby-identifier">q</span> = {}
287
+ <span class="ruby-identifier">q</span>[<span class="ruby-value str">'_s'</span>] = <span class="ruby-identifier">session_id</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">session_id</span>
288
+ <span class="ruby-identifier">q</span>[<span class="ruby-value str">'_p'</span>] = <span class="ruby-identifier">page_id</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">page_id</span>
289
+ <span class="ruby-identifier">q</span>[<span class="ruby-identifier">callback_id</span>] = <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">callback_id</span>
401
290
 
402
- <div class="method-heading">
403
- <a href="#M000391" class="method-signature">
404
- <span class="method-name">parse_fields</span><span class="method-args">(fields)</span>
405
- </a>
406
- </div>
407
-
408
- <div class="method-description">
409
- <p><a class="source-toggle" href="#"
410
- onclick="toggleCode('M000391-source');return false;">[Source]</a></p>
411
- <div class="method-source-code" id="M000391-source">
412
- <pre>
413
- <span class="ruby-comment cmt"># File lib/wee/request.rb, line 94</span>
414
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse_fields</span>(<span class="ruby-identifier">fields</span>)
415
- <span class="ruby-identifier">fields</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>
416
- <span class="ruby-ivar">@fields</span> = <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>
417
-
418
- <span class="ruby-comment cmt"># sorted by decreasing key length, e.g. &quot;2.x&quot; comes before &quot;2&quot;</span>
419
- <span class="ruby-identifier">fields</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">sort_by</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span> <span class="ruby-operator">-</span><span class="ruby-identifier">k</span>.<span class="ruby-identifier">length</span>}.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
420
- <span class="ruby-identifier">val</span> = <span class="ruby-identifier">fields</span>[<span class="ruby-identifier">key</span>]
421
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value str">&quot;.&quot;</span>)
422
- <span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span> = <span class="ruby-identifier">key</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">&quot;.&quot;</span>, <span class="ruby-value">2</span>)
423
- <span class="ruby-ivar">@fields</span>[<span class="ruby-identifier">a</span>] <span class="ruby-operator">||=</span> <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>
424
- <span class="ruby-ivar">@fields</span>[<span class="ruby-identifier">a</span>][<span class="ruby-identifier">b</span>] = <span class="ruby-identifier">val</span>
425
- <span class="ruby-keyword kw">else</span>
426
- <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@fields</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">key</span>)
427
- <span class="ruby-ivar">@fields</span>[<span class="ruby-identifier">key</span>][<span class="ruby-keyword kw">nil</span>] = <span class="ruby-identifier">val</span>
428
- <span class="ruby-keyword kw">else</span>
429
- <span class="ruby-ivar">@fields</span>[<span class="ruby-identifier">key</span>] = <span class="ruby-identifier">val</span>
430
- <span class="ruby-keyword kw">end</span>
431
- <span class="ruby-keyword kw">end</span>
291
+ <span class="ruby-identifier">path</span> = <span class="ruby-identifier">script_name</span>() <span class="ruby-operator">+</span> (<span class="ruby-identifier">info</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">path_info</span>())
292
+ <span class="ruby-identifier">path</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;?&quot;</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Rack</span><span class="ruby-operator">::</span><span class="ruby-constant">Utils</span>.<span class="ruby-identifier">build_query</span>(<span class="ruby-identifier">q</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">q</span>.<span class="ruby-identifier">empty?</span>
293
+
294
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">path</span>
432
295
  <span class="ruby-keyword kw">end</span>
433
- <span class="ruby-keyword kw">end</span>
434
296
  </pre>
435
297
  </div>
298
+
436
299
  </div>
437
300
  </div>
438
301
 
439
- <div id="method-M000392" class="method-detail">
440
- <a name="M000392"></a>
302
+
303
+ <div id="method-M000042" class="method-detail">
304
+ <a name="M000042"></a>
441
305
 
442
306
  <div class="method-heading">
443
- <a href="#M000392" class="method-signature">
444
- <span class="method-name">parse_path</span><span class="method-args">()</span>
307
+
308
+ <a href="#M000042" class="method-signature">
309
+
310
+ <span class="method-name">render?</span><span class="method-args">()</span>
311
+
445
312
  </a>
313
+
446
314
  </div>
447
-
315
+
448
316
  <div class="method-description">
317
+
318
+ <p>
319
+ Is this a render request?
320
+ </p>
321
+
449
322
  <p><a class="source-toggle" href="#"
450
- onclick="toggleCode('M000392-source');return false;">[Source]</a></p>
451
- <div class="method-source-code" id="M000392-source">
323
+ onclick="toggleCode('M000042-source');return false;">[Source]</a></p>
324
+ <div class="method-source-code" id="M000042-source">
452
325
  <pre>
453
- <span class="ruby-comment cmt"># File lib/wee/request.rb, line 115</span>
454
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse_path</span>
455
- <span class="ruby-identifier">full_app_path</span>, <span class="ruby-identifier">req_path</span> = <span class="ruby-ivar">@path</span>.<span class="ruby-identifier">split</span>(<span class="ruby-constant">DELIM</span>, <span class="ruby-value">2</span>)
456
-
457
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">full_app_path</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@app_path</span>
458
- <span class="ruby-ivar">@info</span> = <span class="ruby-keyword kw">nil</span>
459
- <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">full_app_path</span>[<span class="ruby-value">0</span>, <span class="ruby-ivar">@app_path</span>.<span class="ruby-identifier">size</span>] <span class="ruby-operator">==</span> <span class="ruby-ivar">@app_path</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">full_app_path</span>[<span class="ruby-ivar">@app_path</span>.<span class="ruby-identifier">size</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?/</span>
460
- <span class="ruby-ivar">@info</span> = <span class="ruby-identifier">full_app_path</span>[<span class="ruby-ivar">@app_path</span>.<span class="ruby-identifier">size</span><span class="ruby-operator">+</span><span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]
461
- <span class="ruby-keyword kw">else</span>
462
- <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;dispatched to wrong handler&quot;</span>
326
+ <span class="ruby-comment cmt"># File lib/wee/request.rb, line 28</span>
327
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">render?</span>
328
+ <span class="ruby-ivar">@fields</span>.<span class="ruby-identifier">empty?</span>
463
329
  <span class="ruby-keyword kw">end</span>
464
-
465
- <span class="ruby-ivar">@request_handler_id</span> = <span class="ruby-ivar">@page_id</span> = <span class="ruby-keyword kw">nil</span>
466
- <span class="ruby-ivar">@request_handler_id</span>, <span class="ruby-ivar">@page_id</span> = <span class="ruby-identifier">req_path</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'/'</span>, <span class="ruby-value">2</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">req_path</span>
467
- <span class="ruby-keyword kw">end</span>
468
330
  </pre>
469
331
  </div>
332
+
470
333
  </div>
471
334
  </div>
472
335
 
473
336
 
337
+
474
338
  </div>
475
339
 
476
340
 
477
- </div>
478
341
 
479
342
 
343
+ </div>
344
+
480
345
  <div id="validator-badges">
481
346
  <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
482
347
  </div>
483
348
 
484
349
  </body>
485
- </html>
350
+ </html>