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 +1 @@
1
- Mon Jul 11 23:57:28 CEST 2005
1
+ Mon, 06 Apr 2009 15:36:21 +0200
@@ -0,0 +1,243 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <title>File: README.rdoc [RDoc Documentation]</title>
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
8
+ <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
9
+ <script type="text/javascript">
10
+ // <![CDATA[
11
+
12
+ function popupCode( url ) {
13
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
14
+ }
15
+
16
+ function toggleCode( id ) {
17
+ if ( document.getElementById )
18
+ elem = document.getElementById( id );
19
+ else if ( document.all )
20
+ elem = eval( "document.all." + id );
21
+ else
22
+ return false;
23
+
24
+ elemStyle = elem.style;
25
+
26
+ if ( elemStyle.display != "block" ) {
27
+ elemStyle.display = "block"
28
+ } else {
29
+ elemStyle.display = "none"
30
+ }
31
+
32
+ return true;
33
+ }
34
+
35
+ // Make codeblocks hidden by default
36
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }<\/style>" )
37
+
38
+ // ]]>
39
+ </script>
40
+
41
+ </head>
42
+ <body>
43
+
44
+
45
+ <div id="fileHeader">
46
+ <h1>README.rdoc</h1>
47
+ <table class="header-table">
48
+ <tr class="top-aligned-row">
49
+ <td><strong>Path:</strong></td>
50
+ <td>README.rdoc
51
+
52
+ </td>
53
+ </tr>
54
+ <tr class="top-aligned-row">
55
+ <td><strong>Last Update:</strong></td>
56
+ <td>2009-02-24 14:28:38 +0100</td>
57
+ </tr>
58
+ </table>
59
+ </div>
60
+ <!-- banner header -->
61
+
62
+ <div id="bodyContent">
63
+
64
+ <div id="contextContent">
65
+
66
+ <div id="description">
67
+ <h1><a href="../classes/Wee.html">Wee</a> Web Framework</h1>
68
+ <h2>Copyright and License</h2>
69
+ <p>
70
+ Copyright &#169; 2004, 2005, 2009 by Michael Neumann (mneumann@ntecs.de).
71
+ </p>
72
+ <p>
73
+ Released under the same terms of license as Ruby.
74
+ </p>
75
+ <h2>Introduction</h2>
76
+ <p>
77
+ <a href="../classes/Wee.html">Wee</a> is a light-weight, very high-level
78
+ and modern web-framework that makes <b>W</b>eb <b>e</b>ngineering
79
+ <b>e</b>asy. It mainly inherits many ideas and features from <a
80
+ href="http://seaside.st/">Seaside</a>, but was written from scratch without
81
+ ever looking at the Seaside (or any other) sources. All code was developed
82
+ from ideas and lots of discussions with Avi Bryant.
83
+ </p>
84
+ <h2>Features</h2>
85
+ <h3>Reusable components</h3>
86
+ <p>
87
+ <a href="../classes/Wee.html">Wee</a> has <em>real</em> components, which
88
+ are like widgets in a GUI. Once written, you can use them everywhere. They
89
+ are completely independent and do not interfere with other components.
90
+ Components encapsulate state, a view and actions. Of course you can use an
91
+ external model or use templates for rendering.
92
+ </p>
93
+ <h3>Backtracking</h3>
94
+ <p>
95
+ See the <em>What is backtracking?</em> section below. In short,
96
+ backtracking lets the browser&#8217;s back and forward-button play well
97
+ together with your application.
98
+ </p>
99
+ <h3>Clean and concise</h3>
100
+ <p>
101
+ <a href="../classes/Wee.html">Wee</a> is well thought out, is written in
102
+ <b>and</b> supports clean and concise code. Furthermore I think most parts
103
+ are now very well documented.
104
+ </p>
105
+ <h3>Templating-independent</h3>
106
+ <p>
107
+ <a href="../classes/Wee.html">Wee</a> does not depend on a special
108
+ templating-engine. You can use a different templating engine for each
109
+ component if you want.
110
+ </p>
111
+ <h3>Powerful programmatic HTML generation</h3>
112
+ <p>
113
+ <a href="../classes/Wee.html">Wee</a> ships with an easy to use and very
114
+ powerful programmatic HTML-generation library. For example you can create a
115
+ select list easily with this piece of code:
116
+ </p>
117
+ <pre>
118
+ # select an object from these items
119
+ items = [1, 2, 3, 4]
120
+
121
+ # the labels shown to the user
122
+ labels = items.map {|i| i.to_s}
123
+
124
+ # render it
125
+ r.select_list(items).labels(labels).callback {|choosen| p choosen}
126
+
127
+ # render a multi-select list, with objects 2 and 4 selected
128
+ r.select_list(items).multi.labels(labels).selected([2,4])
129
+ </pre>
130
+ <p>
131
+ The callback is called with the selected objects from the <em>items</em>
132
+ array. Items can be any object, even whole components:
133
+ </p>
134
+ <pre>
135
+ labels = [&quot;msg1&quot;, &quot;msg2&quot;]
136
+ items = labels.collect {|m| MessageBox.new(m)}
137
+ r.select_list(items).labels(labels).callback {|choosen| call choosen.first}
138
+ </pre>
139
+ <h2>Observations and Limitations</h2>
140
+ <ul>
141
+ <li>Components are thread-safe by nature as a fresh components-tree is created
142
+ for each session and requests inside a session are serialized.
143
+
144
+ </li>
145
+ </ul>
146
+ <h2>What is backtracking?</h2>
147
+ <p>
148
+ If you want, you can make the back-button of your browser work correctly
149
+ together with your web-application. Imagine you have a simple counter
150
+ application, which shows the current count and two links <em>inc</em> and
151
+ <em>dec</em> with which you can increase or decrease the current count.
152
+ Starting with an inital count of 0 you increase the counter up to 8, then
153
+ click three times the back button of your browser (now displays 5). Finally
154
+ you decrease by one and your counter shows what you&#8217;d have expected:
155
+ 4. In contrast, traditional web applications would have shown 7, because
156
+ the back button usually does not trigger a HTTP request and as such the
157
+ server-side state still has a value of 8 for the counter when the request
158
+ to decrease comes in.
159
+ </p>
160
+ <p>
161
+ The solution to this problem is to take snapshots of the components state
162
+ after an action is performed and restoring the state before peforming
163
+ actions. Each action generates a new state, which is indicated by a
164
+ so-called <em>page-id</em> within the URL.
165
+ </p>
166
+ <h2>Decorations</h2>
167
+ <p>
168
+ Decorations are used to modify the look and behaviour of a component
169
+ without modifying the components tree itself. A component can have more
170
+ than one decoration. Decorations are implemented as a linked list
171
+ (Wee::Decoration#next points to the next decoration), starting at
172
+ Wee::Component#decoration, which either points to the next decoration in
173
+ the chain, or to itself.
174
+ </p>
175
+ <h2>The request/response cycle</h2>
176
+ <p>
177
+ The request/response cycle in <a href="../classes/Wee.html">Wee</a> is
178
+ actually split into two separate phases.
179
+ </p>
180
+ <h3>Render Phase</h3>
181
+ <p>
182
+ The rendering phase is assumed to be side-effect free! So, you as a
183
+ programmer should take care to meet this assumption. Rendering is performed
184
+ by method Wee::Component#render_on.
185
+ </p>
186
+ <h3>Action Phase (Invoking Callbacks)</h3>
187
+ <p>
188
+ Possible sources for callbacks are links (anchors) and all kinds of
189
+ form-elements like submit buttons, input-fields etc. There are two
190
+ different kinds of callbacks:
191
+ </p>
192
+ <ul>
193
+ <li>Input callbacks (input-fields)
194
+
195
+ </li>
196
+ <li>Action callbacks (anchor, submit-button)
197
+
198
+ </li>
199
+ </ul>
200
+ <p>
201
+ The distinction between input and action callbacks is important, as action
202
+ callbacks might depend on values of input-fields being assigned to instance
203
+ variables of the controlling component. Hence, <a
204
+ href="../classes/Wee.html">Wee</a> first invokes all input callbacks before
205
+ any action callback is triggered. Callback processing is performed by
206
+ method <a
207
+ href="../classes/Wee/Component.html#M000046">Wee::Component#process_callbacks</a>.
208
+ </p>
209
+ <p>
210
+ The result of the action phase is an updated components state. As such, a
211
+ snapshot is taken of the new state and stored under a new page-id. Then, a
212
+ redirect requests is sent back to the client, including this new page-id.
213
+ The client automatically follows this redirect and triggers a render phase
214
+ of the new page.
215
+ </p>
216
+
217
+ </div>
218
+
219
+ </div>
220
+
221
+
222
+ </div>
223
+
224
+ <!-- if includes -->
225
+
226
+ <div id="section">
227
+
228
+
229
+
230
+
231
+ <!-- if method_list -->
232
+
233
+
234
+
235
+
236
+ </div>
237
+
238
+ <div id="validator-badges">
239
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
240
+ </div>
241
+
242
+ </body>
243
+ </html>
@@ -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>File: application.rb</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
5
+ <title>File: application.rb [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,18 +42,18 @@
45
42
  <body>
46
43
 
47
44
 
48
-
49
45
  <div id="fileHeader">
50
46
  <h1>application.rb</h1>
51
47
  <table class="header-table">
52
48
  <tr class="top-aligned-row">
53
49
  <td><strong>Path:</strong></td>
54
50
  <td>lib/wee/application.rb
51
+
55
52
  </td>
56
53
  </tr>
57
54
  <tr class="top-aligned-row">
58
55
  <td><strong>Last Update:</strong></td>
59
- <td>Mon Jul 11 23:54:42 CEST 2005</td>
56
+ <td>2009-02-24 14:28:39 +0100</td>
60
57
  </tr>
61
58
  </table>
62
59
  </div>
@@ -64,29 +61,27 @@
64
61
 
65
62
  <div id="bodyContent">
66
63
 
64
+ <div id="contextContent">
67
65
 
66
+ <div id="requires-list">
67
+ <h3 class="section-bar">Required files</h3>
68
68
 
69
- <div id="contextContent">
69
+ <div class="name-list">
70
70
 
71
- <div id="description">
72
- <p>
73
- A <a href="../../../classes/Wee/Application.html">Wee::Application</a>
74
- manages all <a
75
- href="../../../classes/Wee/RequestHandler.html">Wee::RequestHandler</a>&#8217;s
76
- of a single application, where most of the time the request handlers are <a
77
- href="../../../classes/Wee/Session.html">Wee::Session</a> objects. It
78
- dispatches the request to the correct handler by examining the request.
79
- </p>
71
+ thread&nbsp;&nbsp;
80
72
 
81
- </div>
73
+ wee/id_generator&nbsp;&nbsp;
74
+
75
+ wee/lru_cache&nbsp;&nbsp;
82
76
 
77
+ </div>
78
+ </div>
83
79
 
84
80
  </div>
85
81
 
86
82
 
87
83
  </div>
88
84
 
89
-
90
85
  <!-- if includes -->
91
86
 
92
87
  <div id="section">
@@ -94,19 +89,16 @@ dispatches the request to the correct handler by examining the request.
94
89
 
95
90
 
96
91
 
97
-
98
-
92
+ <!-- if method_list -->
99
93
 
100
94
 
101
- <!-- if method_list -->
102
95
 
103
96
 
104
97
  </div>
105
98
 
106
-
107
99
  <div id="validator-badges">
108
100
  <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
109
101
  </div>
110
102
 
111
103
  </body>
112
- </html>
104
+ </html>
@@ -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>File: page.rb</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
5
+ <title>File: call_answer.rb [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,18 +42,18 @@
45
42
  <body>
46
43
 
47
44
 
48
-
49
45
  <div id="fileHeader">
50
- <h1>page.rb</h1>
46
+ <h1>call_answer.rb</h1>
51
47
  <table class="header-table">
52
48
  <tr class="top-aligned-row">
53
49
  <td><strong>Path:</strong></td>
54
- <td>lib/wee/page.rb
50
+ <td>lib/wee/call_answer.rb
51
+
55
52
  </td>
56
53
  </tr>
57
54
  <tr class="top-aligned-row">
58
55
  <td><strong>Last Update:</strong></td>
59
- <td>Mon Jul 11 23:54:42 CEST 2005</td>
56
+ <td>2009-02-24 16:32:29 +0100</td>
60
57
  </tr>
61
58
  </table>
62
59
  </div>
@@ -64,18 +61,13 @@
64
61
 
65
62
  <div id="bodyContent">
66
63
 
67
-
68
-
69
64
  <div id="contextContent">
70
65
 
71
-
72
-
73
66
  </div>
74
67
 
75
68
 
76
69
  </div>
77
70
 
78
-
79
71
  <!-- if includes -->
80
72
 
81
73
  <div id="section">
@@ -83,19 +75,16 @@
83
75
 
84
76
 
85
77
 
86
-
87
-
78
+ <!-- if method_list -->
88
79
 
89
80
 
90
- <!-- if method_list -->
91
81
 
92
82
 
93
83
  </div>
94
84
 
95
-
96
85
  <div id="validator-badges">
97
86
  <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
98
87
  </div>
99
88
 
100
89
  </body>
101
- </html>
90
+ </html>