waves 0.7.7 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (402) hide show
  1. data/bin/waves +17 -72
  2. data/doc/HISTORY +1 -44
  3. data/doc/README +1 -0
  4. data/doc/VERSION +1 -0
  5. data/lib/caches/file.rb +48 -0
  6. data/lib/caches/memcached.rb +40 -0
  7. data/lib/caches/simple.rb +25 -0
  8. data/lib/caches/synchronized.rb +25 -0
  9. data/lib/commands/console.rb +35 -0
  10. data/lib/commands/generate.rb +52 -0
  11. data/lib/commands/help.rb +5 -0
  12. data/lib/commands/{waves-server.rb → server.rb} +16 -3
  13. data/lib/dispatchers/base.rb +21 -20
  14. data/lib/dispatchers/default.rb +11 -63
  15. data/lib/ext/float.rb +13 -0
  16. data/lib/{utilities → ext}/hash.rb +2 -2
  17. data/lib/{utilities → ext}/integer.rb +5 -2
  18. data/lib/ext/kernel.rb +20 -0
  19. data/lib/ext/module.rb +20 -0
  20. data/lib/{utilities → ext}/object.rb +3 -5
  21. data/lib/ext/string.rb +20 -0
  22. data/lib/ext/symbol.rb +11 -0
  23. data/lib/ext/tempfile.rb +5 -0
  24. data/lib/foundations/classic.rb +64 -0
  25. data/lib/foundations/compact.rb +50 -0
  26. data/lib/helpers/basic.rb +11 -0
  27. data/lib/helpers/doc_type.rb +34 -0
  28. data/lib/helpers/extended.rb +21 -0
  29. data/lib/helpers/form.rb +3 -1
  30. data/lib/helpers/formatting.rb +3 -3
  31. data/lib/helpers/layouts.rb +37 -0
  32. data/lib/helpers/model.rb +8 -4
  33. data/lib/helpers/view.rb +2 -4
  34. data/lib/layers/inflect/english.rb +48 -5
  35. data/lib/layers/mvc.rb +18 -18
  36. data/lib/layers/mvc/controllers.rb +41 -0
  37. data/lib/layers/mvc/extensions.rb +52 -0
  38. data/lib/layers/orm/{active_record.rb → providers/active_record.rb} +9 -14
  39. data/lib/layers/orm/{active_record → providers/active_record}/migrations/empty.rb.erb +0 -0
  40. data/lib/layers/orm/{active_record → providers/active_record}/tasks/generate.rb +1 -1
  41. data/lib/layers/orm/{active_record → providers/active_record}/tasks/schema.rb +1 -1
  42. data/lib/layers/orm/{data_mapper.rb → providers/data_mapper.rb} +3 -4
  43. data/lib/layers/orm/providers/filebase.rb +25 -0
  44. data/lib/layers/orm/{sequel.rb → providers/sequel.rb} +11 -7
  45. data/lib/layers/orm/{sequel → providers/sequel}/migrations/empty.rb.erb +0 -0
  46. data/lib/layers/orm/{sequel → providers/sequel}/tasks/generate.rb +5 -3
  47. data/lib/layers/orm/{sequel → providers/sequel}/tasks/schema.rb +2 -2
  48. data/lib/{renderers → layers/renderers}/erubis.rb +10 -13
  49. data/lib/{renderers → layers/renderers}/haml.rb +27 -25
  50. data/lib/layers/renderers/markaby.rb +29 -0
  51. data/lib/matchers/accept.rb +21 -0
  52. data/lib/matchers/base.rb +30 -0
  53. data/lib/matchers/content_type.rb +17 -0
  54. data/lib/matchers/path.rb +67 -0
  55. data/lib/matchers/query.rb +21 -0
  56. data/lib/matchers/request.rb +27 -0
  57. data/lib/matchers/resource.rb +19 -0
  58. data/lib/matchers/traits.rb +19 -0
  59. data/lib/matchers/uri.rb +20 -0
  60. data/lib/renderers/mixin.rb +15 -29
  61. data/lib/resources/mixin.rb +132 -0
  62. data/lib/resources/paths.rb +34 -0
  63. data/lib/runtime/configuration.rb +55 -135
  64. data/lib/runtime/console.rb +4 -1
  65. data/lib/runtime/logger.rb +24 -48
  66. data/lib/runtime/mime_types.rb +516 -2
  67. data/lib/runtime/mocks.rb +14 -0
  68. data/lib/runtime/monitor.rb +32 -0
  69. data/lib/runtime/request.rb +107 -39
  70. data/lib/runtime/response.rb +5 -2
  71. data/lib/runtime/response_mixin.rb +43 -22
  72. data/lib/runtime/runtime.rb +67 -0
  73. data/lib/runtime/server.rb +14 -101
  74. data/lib/runtime/session.rb +4 -43
  75. data/lib/runtime/worker.rb +86 -0
  76. data/lib/servers/base.rb +42 -0
  77. data/lib/servers/mongrel.rb +13 -0
  78. data/lib/servers/webrick.rb +13 -0
  79. data/lib/tasks/gem.rb +1 -0
  80. data/lib/tasks/generate.rb +67 -62
  81. data/lib/views/errors.rb +49 -0
  82. data/lib/views/mixin.rb +34 -82
  83. data/lib/waves.rb +36 -57
  84. data/samples/blog/Rakefile +16 -5
  85. data/samples/blog/blog.db +0 -0
  86. data/samples/blog/configurations/default.rb +11 -0
  87. data/samples/blog/configurations/development.rb +9 -11
  88. data/samples/blog/configurations/production.rb +11 -15
  89. data/samples/blog/log/waves.production +3 -0
  90. data/samples/blog/models/comment.rb +9 -0
  91. data/samples/blog/models/entry.rb +17 -0
  92. data/samples/blog/public/css/site.css +13 -2
  93. data/samples/blog/public/javascript/jquery-1.2.6.min.js +32 -0
  94. data/samples/blog/resources/entry.rb +39 -0
  95. data/samples/blog/resources/map.rb +9 -0
  96. data/samples/blog/schema/migrations/001_initial_schema.rb +3 -3
  97. data/samples/blog/schema/migrations/002_add_comments.rb +2 -2
  98. data/samples/blog/startup.rb +8 -6
  99. data/samples/blog/templates/comment/add.mab +6 -4
  100. data/samples/blog/templates/comment/list.mab +4 -4
  101. data/samples/blog/templates/entry/{editor.mab → edit.mab} +7 -6
  102. data/samples/blog/templates/entry/list.mab +10 -5
  103. data/samples/blog/templates/entry/show.mab +16 -7
  104. data/samples/blog/templates/entry/summary.mab +8 -4
  105. data/samples/blog/templates/errors/not_found_404.mab +6 -1
  106. data/samples/blog/templates/layouts/default.mab +5 -3
  107. data/samples/blog/templates/waves/status.mab +85 -0
  108. data/{app → templates/classic}/Rakefile +58 -0
  109. data/templates/classic/configurations/default.rb.erb +9 -0
  110. data/{app → templates/classic}/configurations/development.rb.erb +3 -8
  111. data/{app → templates/classic}/configurations/production.rb.erb +3 -5
  112. data/templates/classic/resources/map.rb.erb +8 -0
  113. data/templates/classic/startup.rb.erb +11 -0
  114. data/{app → templates/classic}/templates/errors/not_found_404.mab +0 -0
  115. data/{app → templates/classic}/templates/errors/server_error_500.mab +0 -0
  116. data/{app → templates/classic}/templates/layouts/default.mab +0 -0
  117. data/templates/compact/startup.rb.erb +11 -0
  118. metadata +257 -610
  119. data/app/bin/waves-console +0 -4
  120. data/app/bin/waves-server +0 -4
  121. data/app/configurations/mapping.rb.erb +0 -14
  122. data/app/controllers/.gitignore +0 -0
  123. data/app/doc/.gitignore +0 -0
  124. data/app/helpers/.gitignore +0 -0
  125. data/app/lib/application.rb.erb +0 -5
  126. data/app/lib/tasks/.gitignore +0 -0
  127. data/app/log/.gitignore +0 -0
  128. data/app/models/.gitignore +0 -0
  129. data/app/public/css/.gitignore +0 -0
  130. data/app/public/flash/.gitignore +0 -0
  131. data/app/public/images/.gitignore +0 -0
  132. data/app/public/javascript/.gitignore +0 -0
  133. data/app/schema/migrations/.gitignore +0 -0
  134. data/app/startup.rb +0 -5
  135. data/app/tmp/sessions/.gitignore +0 -0
  136. data/app/views/.gitignore +0 -0
  137. data/bin/waves-console +0 -4
  138. data/bin/waves-server +0 -4
  139. data/doc/rdoc/classes/Erubis/Context.html +0 -218
  140. data/doc/rdoc/classes/Kernel.html +0 -145
  141. data/doc/rdoc/classes/Symbol.html +0 -154
  142. data/doc/rdoc/classes/Tempfile.html +0 -161
  143. data/doc/rdoc/classes/Waves.html +0 -455
  144. data/doc/rdoc/classes/Waves/Application.html +0 -371
  145. data/doc/rdoc/classes/Waves/Blackboard.html +0 -296
  146. data/doc/rdoc/classes/Waves/Configurations.html +0 -283
  147. data/doc/rdoc/classes/Waves/Configurations/Base.html +0 -209
  148. data/doc/rdoc/classes/Waves/Configurations/Default.html +0 -237
  149. data/doc/rdoc/classes/Waves/Console.html +0 -187
  150. data/doc/rdoc/classes/Waves/Controllers.html +0 -203
  151. data/doc/rdoc/classes/Waves/Controllers/Base.html +0 -151
  152. data/doc/rdoc/classes/Waves/Controllers/Mixin.html +0 -312
  153. data/doc/rdoc/classes/Waves/Dispatchers.html +0 -118
  154. data/doc/rdoc/classes/Waves/Dispatchers/Base.html +0 -198
  155. data/doc/rdoc/classes/Waves/Dispatchers/Default.html +0 -224
  156. data/doc/rdoc/classes/Waves/Dispatchers/NotFoundError.html +0 -122
  157. data/doc/rdoc/classes/Waves/Dispatchers/Redirect.html +0 -173
  158. data/doc/rdoc/classes/Waves/Foundations.html +0 -131
  159. data/doc/rdoc/classes/Waves/Foundations/Default.html +0 -179
  160. data/doc/rdoc/classes/Waves/Foundations/Simple.html +0 -167
  161. data/doc/rdoc/classes/Waves/Helpers.html +0 -176
  162. data/doc/rdoc/classes/Waves/Helpers/AssetHelper.html +0 -212
  163. data/doc/rdoc/classes/Waves/Helpers/Common.html +0 -213
  164. data/doc/rdoc/classes/Waves/Helpers/Default.html +0 -135
  165. data/doc/rdoc/classes/Waves/Helpers/Form.html +0 -201
  166. data/doc/rdoc/classes/Waves/Helpers/Formatting.html +0 -232
  167. data/doc/rdoc/classes/Waves/Helpers/Model.html +0 -194
  168. data/doc/rdoc/classes/Waves/Helpers/NumberHelper.html +0 -165
  169. data/doc/rdoc/classes/Waves/Helpers/TagHelper.html +0 -226
  170. data/doc/rdoc/classes/Waves/Helpers/UrlHelper.html +0 -242
  171. data/doc/rdoc/classes/Waves/Helpers/View.html +0 -163
  172. data/doc/rdoc/classes/Waves/Inflect/InflectorMethods.html +0 -475
  173. data/doc/rdoc/classes/Waves/Layers.html +0 -175
  174. data/doc/rdoc/classes/Waves/Layers/DefaultErrors.html +0 -161
  175. data/doc/rdoc/classes/Waves/Layers/Inflect.html +0 -119
  176. data/doc/rdoc/classes/Waves/Layers/Inflect/English.html +0 -168
  177. data/doc/rdoc/classes/Waves/Layers/Inflect/English/Rules.html +0 -112
  178. data/doc/rdoc/classes/Waves/Layers/Inflect/English/StringMethods.html +0 -194
  179. data/doc/rdoc/classes/Waves/Layers/MVC.html +0 -204
  180. data/doc/rdoc/classes/Waves/Layers/ORM/ActiveRecord.html +0 -239
  181. data/doc/rdoc/classes/Waves/Layers/ORM/ActiveRecord/ControllerMethods.html +0 -246
  182. data/doc/rdoc/classes/Waves/Layers/ORM/ActiveRecord/Symbol.html +0 -132
  183. data/doc/rdoc/classes/Waves/Layers/ORM/DataMapper.html +0 -166
  184. data/doc/rdoc/classes/Waves/Layers/ORM/Filebase.html +0 -157
  185. data/doc/rdoc/classes/Waves/Layers/ORM/Sequel.html +0 -232
  186. data/doc/rdoc/classes/Waves/Layers/ORM/Sequel/ControllerMethods.html +0 -246
  187. data/doc/rdoc/classes/Waves/Layers/Simple.html +0 -169
  188. data/doc/rdoc/classes/Waves/Layers/SimpleErrors.html +0 -159
  189. data/doc/rdoc/classes/Waves/Logger.html +0 -288
  190. data/doc/rdoc/classes/Waves/Mapping.html +0 -760
  191. data/doc/rdoc/classes/Waves/Mapping/PrettyUrls.html +0 -129
  192. data/doc/rdoc/classes/Waves/Mapping/PrettyUrls/GetRules.html +0 -174
  193. data/doc/rdoc/classes/Waves/Mapping/PrettyUrls/RestRules.html +0 -180
  194. data/doc/rdoc/classes/Waves/MimeTypes.html +0 -200
  195. data/doc/rdoc/classes/Waves/Renderers/Erubis.html +0 -162
  196. data/doc/rdoc/classes/Waves/Renderers/Haml.html +0 -160
  197. data/doc/rdoc/classes/Waves/Renderers/Markaby.html +0 -167
  198. data/doc/rdoc/classes/Waves/Renderers/Mixin.html +0 -191
  199. data/doc/rdoc/classes/Waves/Renderers/Scope.html +0 -181
  200. data/doc/rdoc/classes/Waves/Request.html +0 -441
  201. data/doc/rdoc/classes/Waves/Request/ParseError.html +0 -111
  202. data/doc/rdoc/classes/Waves/Response.html +0 -283
  203. data/doc/rdoc/classes/Waves/ResponseMixin.html +0 -460
  204. data/doc/rdoc/classes/Waves/ResponseProxy.html +0 -269
  205. data/doc/rdoc/classes/Waves/Server.html +0 -488
  206. data/doc/rdoc/classes/Waves/Session.html +0 -330
  207. data/doc/rdoc/classes/Waves/Utilities/Hash.html +0 -185
  208. data/doc/rdoc/classes/Waves/Utilities/Integer.html +0 -424
  209. data/doc/rdoc/classes/Waves/Utilities/Module.html +0 -174
  210. data/doc/rdoc/classes/Waves/Utilities/Object.html +0 -155
  211. data/doc/rdoc/classes/Waves/Utilities/Proc.html +0 -145
  212. data/doc/rdoc/classes/Waves/Utilities/String.html +0 -290
  213. data/doc/rdoc/classes/Waves/Views.html +0 -278
  214. data/doc/rdoc/classes/Waves/Views/Base.html +0 -118
  215. data/doc/rdoc/classes/Waves/Views/Mixin.html +0 -279
  216. data/doc/rdoc/classes/Waves/Views/NoTemplateError.html +0 -111
  217. data/doc/rdoc/created.rid +0 -1
  218. data/doc/rdoc/files/README_rdoc.html +0 -415
  219. data/doc/rdoc/files/bin/waves.html +0 -135
  220. data/doc/rdoc/files/doc/HISTORY.html +0 -265
  221. data/doc/rdoc/files/lib/commands/waves-console_rb.html +0 -110
  222. data/doc/rdoc/files/lib/commands/waves-server_rb.html +0 -108
  223. data/doc/rdoc/files/lib/controllers/base_rb.html +0 -101
  224. data/doc/rdoc/files/lib/controllers/mixin_rb.html +0 -101
  225. data/doc/rdoc/files/lib/dispatchers/base_rb.html +0 -101
  226. data/doc/rdoc/files/lib/dispatchers/default_rb.html +0 -101
  227. data/doc/rdoc/files/lib/foundations/default_rb.html +0 -101
  228. data/doc/rdoc/files/lib/foundations/simple_rb.html +0 -101
  229. data/doc/rdoc/files/lib/helpers/asset_helper_rb.html +0 -101
  230. data/doc/rdoc/files/lib/helpers/common_rb.html +0 -101
  231. data/doc/rdoc/files/lib/helpers/default_rb.html +0 -101
  232. data/doc/rdoc/files/lib/helpers/form_rb.html +0 -101
  233. data/doc/rdoc/files/lib/helpers/formatting_rb.html +0 -108
  234. data/doc/rdoc/files/lib/helpers/model_rb.html +0 -101
  235. data/doc/rdoc/files/lib/helpers/number_helper_rb.html +0 -101
  236. data/doc/rdoc/files/lib/helpers/tag_helper_rb.html +0 -101
  237. data/doc/rdoc/files/lib/helpers/url_helper_rb.html +0 -101
  238. data/doc/rdoc/files/lib/helpers/view_rb.html +0 -101
  239. data/doc/rdoc/files/lib/layers/default_errors_rb.html +0 -101
  240. data/doc/rdoc/files/lib/layers/inflect/english/rules_rb.html +0 -101
  241. data/doc/rdoc/files/lib/layers/inflect/english/string_rb.html +0 -101
  242. data/doc/rdoc/files/lib/layers/inflect/english_rb.html +0 -109
  243. data/doc/rdoc/files/lib/layers/mvc_rb.html +0 -101
  244. data/doc/rdoc/files/lib/layers/orm/active_record/tasks/generate_rb.html +0 -101
  245. data/doc/rdoc/files/lib/layers/orm/active_record/tasks/schema_rb.html +0 -101
  246. data/doc/rdoc/files/lib/layers/orm/active_record_rb.html +0 -108
  247. data/doc/rdoc/files/lib/layers/orm/data_mapper_rb.html +0 -108
  248. data/doc/rdoc/files/lib/layers/orm/filebase_rb.html +0 -101
  249. data/doc/rdoc/files/lib/layers/orm/migration_rb.html +0 -101
  250. data/doc/rdoc/files/lib/layers/orm/sequel/tasks/generate_rb.html +0 -101
  251. data/doc/rdoc/files/lib/layers/orm/sequel/tasks/schema_rb.html +0 -101
  252. data/doc/rdoc/files/lib/layers/orm/sequel_rb.html +0 -108
  253. data/doc/rdoc/files/lib/layers/simple_errors_rb.html +0 -101
  254. data/doc/rdoc/files/lib/layers/simple_rb.html +0 -101
  255. data/doc/rdoc/files/lib/mapping/mapping_rb.html +0 -101
  256. data/doc/rdoc/files/lib/mapping/pretty_urls_rb.html +0 -101
  257. data/doc/rdoc/files/lib/renderers/erubis_rb.html +0 -108
  258. data/doc/rdoc/files/lib/renderers/haml_rb.html +0 -108
  259. data/doc/rdoc/files/lib/renderers/markaby_rb.html +0 -108
  260. data/doc/rdoc/files/lib/renderers/mixin_rb.html +0 -101
  261. data/doc/rdoc/files/lib/runtime/application_rb.html +0 -107
  262. data/doc/rdoc/files/lib/runtime/blackboard_rb.html +0 -101
  263. data/doc/rdoc/files/lib/runtime/configuration_rb.html +0 -101
  264. data/doc/rdoc/files/lib/runtime/console_rb.html +0 -101
  265. data/doc/rdoc/files/lib/runtime/debugger_rb.html +0 -101
  266. data/doc/rdoc/files/lib/runtime/logger_rb.html +0 -108
  267. data/doc/rdoc/files/lib/runtime/mime_types_rb.html +0 -101
  268. data/doc/rdoc/files/lib/runtime/request_rb.html +0 -101
  269. data/doc/rdoc/files/lib/runtime/response_mixin_rb.html +0 -101
  270. data/doc/rdoc/files/lib/runtime/response_proxy_rb.html +0 -101
  271. data/doc/rdoc/files/lib/runtime/response_rb.html +0 -101
  272. data/doc/rdoc/files/lib/runtime/server_rb.html +0 -108
  273. data/doc/rdoc/files/lib/runtime/session_rb.html +0 -101
  274. data/doc/rdoc/files/lib/tasks/cluster_rb.html +0 -101
  275. data/doc/rdoc/files/lib/tasks/gem_rb.html +0 -108
  276. data/doc/rdoc/files/lib/tasks/generate_rb.html +0 -101
  277. data/doc/rdoc/files/lib/utilities/hash_rb.html +0 -101
  278. data/doc/rdoc/files/lib/utilities/inflect_rb.html +0 -111
  279. data/doc/rdoc/files/lib/utilities/integer_rb.html +0 -101
  280. data/doc/rdoc/files/lib/utilities/module_rb.html +0 -101
  281. data/doc/rdoc/files/lib/utilities/object_rb.html +0 -101
  282. data/doc/rdoc/files/lib/utilities/proc_rb.html +0 -101
  283. data/doc/rdoc/files/lib/utilities/string_rb.html +0 -101
  284. data/doc/rdoc/files/lib/utilities/symbol_rb.html +0 -101
  285. data/doc/rdoc/files/lib/utilities/tempfile_rb.html +0 -115
  286. data/doc/rdoc/files/lib/views/base_rb.html +0 -101
  287. data/doc/rdoc/files/lib/views/mixin_rb.html +0 -101
  288. data/doc/rdoc/files/lib/waves_rb.html +0 -195
  289. data/doc/rdoc/fr_class_index.html +0 -104
  290. data/doc/rdoc/fr_file_index.html +0 -97
  291. data/doc/rdoc/fr_method_index.html +0 -233
  292. data/doc/rdoc/index.html +0 -24
  293. data/doc/rdoc/rdoc-style.css +0 -208
  294. data/lib/commands/waves-console.rb +0 -21
  295. data/lib/controllers/base.rb +0 -11
  296. data/lib/controllers/mixin.rb +0 -165
  297. data/lib/foundations/default.rb +0 -27
  298. data/lib/foundations/simple.rb +0 -30
  299. data/lib/helpers/asset_helper.rb +0 -67
  300. data/lib/helpers/common.rb +0 -66
  301. data/lib/helpers/default.rb +0 -13
  302. data/lib/helpers/number_helper.rb +0 -25
  303. data/lib/helpers/tag_helper.rb +0 -58
  304. data/lib/helpers/url_helper.rb +0 -77
  305. data/lib/layers/default_errors.rb +0 -26
  306. data/lib/layers/inflect/english/rules.rb +0 -88
  307. data/lib/layers/inflect/english/string.rb +0 -24
  308. data/lib/layers/orm/filebase.rb +0 -22
  309. data/lib/layers/simple.rb +0 -32
  310. data/lib/layers/simple_errors.rb +0 -23
  311. data/lib/mapping/mapping.rb +0 -289
  312. data/lib/mapping/pretty_urls.rb +0 -96
  313. data/lib/renderers/markaby.rb +0 -33
  314. data/lib/runtime/application.rb +0 -69
  315. data/lib/runtime/blackboard.rb +0 -57
  316. data/lib/runtime/debugger.rb +0 -9
  317. data/lib/runtime/response_proxy.rb +0 -30
  318. data/lib/tasks/cluster.rb +0 -26
  319. data/lib/utilities/inflect.rb +0 -110
  320. data/lib/utilities/module.rb +0 -21
  321. data/lib/utilities/proc.rb +0 -16
  322. data/lib/utilities/string.rb +0 -49
  323. data/lib/utilities/symbol.rb +0 -10
  324. data/lib/utilities/tempfile.rb +0 -9
  325. data/lib/views/base.rb +0 -9
  326. data/samples/blog/bin/waves-console +0 -3
  327. data/samples/blog/bin/waves-server +0 -3
  328. data/samples/blog/configurations/mapping.rb +0 -23
  329. data/samples/blog/doc/EMTPY +0 -0
  330. data/samples/blog/lib/application.rb +0 -5
  331. data/samples/jub/Rakefile +0 -72
  332. data/samples/jub/bin/waves-console +0 -4
  333. data/samples/jub/bin/waves-server +0 -4
  334. data/samples/jub/configurations/development.rb +0 -31
  335. data/samples/jub/configurations/mapping.rb +0 -18
  336. data/samples/jub/configurations/production.rb +0 -31
  337. data/samples/jub/lib/application.rb +0 -5
  338. data/samples/jub/startup.rb +0 -6
  339. data/samples/jub/templates/errors/not_found_404.mab +0 -2
  340. data/samples/jub/templates/errors/server_error_500.mab +0 -2
  341. data/samples/jub/templates/layouts/default.mab +0 -14
  342. data/verify/app_generation/helpers.rb +0 -24
  343. data/verify/app_generation/startup.rb +0 -39
  344. data/verify/blackboard/blackboard_verify.rb +0 -92
  345. data/verify/blackboard/helpers.rb +0 -5
  346. data/verify/configurations/attributes.rb +0 -37
  347. data/verify/configurations/helpers.rb +0 -1
  348. data/verify/configurations/rack_integration.rb +0 -29
  349. data/verify/controllers/base.rb +0 -37
  350. data/verify/controllers/helpers.rb +0 -13
  351. data/verify/controllers/interface.rb +0 -51
  352. data/verify/core/helpers.rb +0 -3
  353. data/verify/core/utilities.rb +0 -177
  354. data/verify/foundations/default.rb +0 -86
  355. data/verify/foundations/default_application/Rakefile +0 -14
  356. data/verify/foundations/default_application/bin/waves-console +0 -3
  357. data/verify/foundations/default_application/bin/waves-server +0 -3
  358. data/verify/foundations/default_application/configurations/development.rb +0 -26
  359. data/verify/foundations/default_application/configurations/mapping.rb +0 -14
  360. data/verify/foundations/default_application/configurations/production.rb +0 -30
  361. data/verify/foundations/default_application/controllers/default.rb +0 -15
  362. data/verify/foundations/default_application/controllers/loaded.rb +0 -15
  363. data/verify/foundations/default_application/defaultapplication.db +0 -0
  364. data/verify/foundations/default_application/helpers/loaded.rb +0 -10
  365. data/verify/foundations/default_application/lib/application.rb +0 -5
  366. data/verify/foundations/default_application/models/default.rb +0 -13
  367. data/verify/foundations/default_application/models/loaded.rb +0 -13
  368. data/verify/foundations/default_application/schema/migrations/templates/empty.rb.erb +0 -9
  369. data/verify/foundations/default_application/startup.rb +0 -7
  370. data/verify/foundations/default_application/templates/errors/not_found_404.mab +0 -2
  371. data/verify/foundations/default_application/templates/errors/server_error_500.mab +0 -2
  372. data/verify/foundations/default_application/templates/layouts/default.mab +0 -14
  373. data/verify/foundations/default_application/views/default.rb +0 -7
  374. data/verify/foundations/default_application/views/loaded.rb +0 -15
  375. data/verify/foundations/helpers.rb +0 -1
  376. data/verify/foundations/simple.rb +0 -25
  377. data/verify/helpers.rb +0 -76
  378. data/verify/layers/data_mapper/association_verify.rb +0 -87
  379. data/verify/layers/default_errors.rb +0 -29
  380. data/verify/layers/helpers.rb +0 -1
  381. data/verify/layers/migration.rb +0 -33
  382. data/verify/layers/sequel/model.rb +0 -41
  383. data/verify/layers/sequeltest.db +0 -0
  384. data/verify/mapping/always.rb +0 -19
  385. data/verify/mapping/filters.rb +0 -65
  386. data/verify/mapping/handle.rb +0 -24
  387. data/verify/mapping/helpers.rb +0 -7
  388. data/verify/mapping/matches.rb +0 -27
  389. data/verify/mapping/named.rb +0 -29
  390. data/verify/mapping/options.rb +0 -17
  391. data/verify/mapping/path.rb +0 -40
  392. data/verify/mapping/response_proxy.rb +0 -50
  393. data/verify/mapping/threaded.rb +0 -25
  394. data/verify/requests/helpers.rb +0 -16
  395. data/verify/requests/request.rb +0 -73
  396. data/verify/requests/response.rb +0 -59
  397. data/verify/requests/session.rb +0 -54
  398. data/verify/views/helpers.rb +0 -1
  399. data/verify/views/rendering.rb +0 -34
  400. data/verify/views/templates/foo.erb +0 -0
  401. data/verify/views/templates/moo.erb +0 -0
  402. data/verify/views/templates/moo.mab +0 -0
@@ -1,16 +0,0 @@
1
- module Waves
2
- module Utilities
3
- module Proc
4
- # calls the given lambda with the receiver as its argument
5
- def |(lambda)
6
- lambda do
7
- lambda.call( self.call )
8
- end
9
- end
10
- end
11
- end
12
- end
13
-
14
- class Proc # :nodoc:
15
- include Waves::Utilities::Proc
16
- end
@@ -1,49 +0,0 @@
1
- module Waves
2
- module Utilities
3
-
4
- # Utility methods mixed into String.
5
-
6
- module String
7
-
8
- # Syntactic sugar for using File.join to concatenate the argument to the receiver.
9
- #
10
- # require "lib" / "utilities" / "string"
11
- #
12
- # The idea is not original, but we can't remember where we first saw it.
13
- #
14
- # Waves::Utilities::Symbol defines the same method, allowing for :files / 'afilename.txt'
15
-
16
- def / ( string )
17
- File.join(self,string.to_s)
18
- end
19
-
20
- # produces stringsLikeThis
21
- def lower_camel_case
22
- gsub(/(_)(\w)/) { $2.upcase }
23
- end
24
-
25
- # produces StringsLikeThis
26
- def camel_case
27
- lower_camel_case.gsub(/^([a-z])/) { $1.upcase }
28
- end
29
-
30
- # produces strings_like_this
31
- def snake_case
32
- gsub(/\s+/,'').gsub(/([a-z\d])([A-Z])/){ "#{$1}_#{$2}"}.tr("-", "_").downcase
33
- end
34
-
35
- def title_case
36
- gsub(/(^|\s)\s*([a-z])/) { $1 + $2.upcase }
37
- end
38
-
39
- def text
40
- gsub(/[\_\-\.\:]/,' ')
41
- end
42
-
43
- end
44
- end
45
- end
46
-
47
- class ::String # :nodoc:
48
- include Waves::Utilities::String
49
- end
@@ -1,10 +0,0 @@
1
- class Symbol
2
- # Does File.join on self and string, converting self to string before invocation.
3
- # See String#/ for more.
4
- #
5
- # Note: This overrides any definitions done politely in modules, such as
6
- # {Sequel::SQL::ComplexExpressionMethods}[http://sequel.rubyforge.org/classes/Sequel/SQL/ComplexExpressionMethods.html]
7
- def / ( string )
8
- self.to_s / string
9
- end
10
- end
@@ -1,9 +0,0 @@
1
- # Patch Ruby's Tempfile class to work around a problem uploading files with Rack.
2
- #
3
- # The fix came from here: http://sinatra.lighthouseapp.com/projects/9779/tickets/1
4
- #
5
- # This is fixed in Rack already, but it hasn't made it into a gem.
6
- class Tempfile
7
- # Make == act like eql?
8
- def ==(other) ; eql?(other) || super ; end
9
- end
@@ -1,9 +0,0 @@
1
- module Waves
2
- module Views
3
- class Base
4
-
5
- include Waves::Views::Mixin
6
-
7
- end
8
- end
9
- end
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env ruby
2
- require 'startup'
3
- require 'commands/waves-console'
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env ruby
2
- require 'startup'
3
- require 'commands/waves-server'
@@ -1,23 +0,0 @@
1
- module Blog
2
-
3
- module Configurations
4
-
5
- module Mapping
6
- extend Waves::Mapping
7
-
8
- path '/', :method => :get do
9
- redirect("/entries")
10
- end
11
-
12
- path %r{^/comments/?$}, :method => :post do
13
- resource( :comment ) do
14
- controller { comment = create; redirect( "/entry/#{comment.entry.name}" ) }
15
- end
16
- end
17
- include Waves::Mapping::PrettyUrls::RestRules
18
- include Waves::Mapping::PrettyUrls::GetRules
19
- end
20
-
21
- end
22
-
23
- end
File without changes
@@ -1,5 +0,0 @@
1
- require 'layers/orm/sequel'
2
- module Blog
3
- include Waves::Foundations::Default
4
- include Waves::Layers::ORM::Sequel
5
- end
@@ -1,72 +0,0 @@
1
- #!/usr/bin/env ruby
2
- #
3
- # Warning: This file is clobbered when you update your
4
- # application with the waves script. Accordingly, you may
5
- # wish to keep your tasks in .rb or .rake files in lib/tasks
6
-
7
- begin
8
- require 'startup'
9
- Waves::Console.load(:mode => ENV['mode'])
10
-
11
- # load tasks from waves framework
12
- %w( cluster generate gem ).each { |task| require "tasks/#{task}.rb" }
13
-
14
- # load tasks from this app's lib/tasks
15
- Dir["lib/tasks/*.{rb,rake}"].each { |task| require task }
16
-
17
- rescue LoadError => e
18
- if e.message == 'no such file to load -- waves'
19
- puts "Can't find Waves source. Install gem, freeze Waves, or define WAVES in startup.rb"
20
- puts
21
- else
22
- raise e
23
- end
24
- end
25
-
26
- namespace :waves do
27
-
28
- desc "freeze src=<wherever> to ./waves"
29
- task :freeze do
30
-
31
- target = "#{Dir.pwd}/waves"
32
- src = ENV['src']
33
- raise "Please specify the location of waves using src=wherever" unless src
34
- raise "No directory found at '#{src}'" unless File.directory?(src)
35
-
36
- items = FileList["#{src}/*"]
37
- puts "Freezing from: #{src}"
38
- items.each do |item|
39
- puts "copying #{item}"
40
- cp_r item, target
41
- end
42
-
43
- end
44
-
45
- desc "unfreeze (i.e. delete) the waves source at ./waves"
46
- task :unfreeze do
47
- frozen = "#{Dir.pwd}/waves"
48
- rm_r frozen if File.exist?(frozen)
49
- end
50
-
51
- # Convenience task to allow you to freeze the current Waves
52
- # source without knowing where it is. This task only gets
53
- # defined when the Rakefile successfully loaded Waves and if
54
- # there's nothing in the way at ./waves
55
- if defined?(WAVES) && !File.exist?("#{Dir.pwd}/waves")
56
- namespace :freeze do
57
- desc "freeze current Waves source to ./waves"
58
- task :current do
59
- target = "#{Dir.pwd}/waves"
60
- current = File.expand_path( WAVES )
61
- items = FileList["#{current}/*"]
62
- puts "Freezing from: #{current}"
63
- items.each do |item|
64
- puts "copying #{item}"
65
- cp_r item, target
66
- end
67
-
68
- end
69
- end
70
- end
71
-
72
- end
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env ruby
2
- require 'rubygems'
3
- require 'startup'
4
- require 'commands/waves-console'
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env ruby
2
- require 'rubygems'
3
- require 'startup'
4
- require 'commands/waves-server'
@@ -1,31 +0,0 @@
1
- module Jub
2
-
3
- module Configurations
4
-
5
- class Development < Default
6
-
7
- database :adapter => 'sqlite', :database => 'jub'
8
-
9
- reloadable [ Jub ]
10
-
11
- log :level => :debug
12
-
13
- host '127.0.0.1'
14
-
15
- port 3000
16
-
17
- handler ::Rack::Handler::Mongrel, :Host => host, :Port => port
18
- # handler ::Rack::Handler::WEBrick, :BindAddress => host, :Port => port
19
- # handler ::Rack::Handler::Thin, :Host => host, :Port => port
20
-
21
- application do
22
- use ::Rack::ShowExceptions
23
- use ::Rack::Static, :urls => [ '/css/', '/javascript/', '/images/' ], :root => 'public'
24
- run ::Waves::Dispatchers::Default.new
25
- end
26
-
27
- end
28
-
29
- end
30
-
31
- end
@@ -1,18 +0,0 @@
1
- module Jub
2
-
3
- module Configurations
4
-
5
- module Mapping
6
- # your custom rules go here
7
-
8
- path "/" do
9
- "hello"
10
- end
11
-
12
- include Waves::Mapping::PrettyUrls::RestRules
13
- include Waves::Mapping::PrettyUrls::GetRules
14
- end
15
-
16
- end
17
-
18
- end
@@ -1,31 +0,0 @@
1
- module Jub
2
-
3
- module Configurations
4
-
5
- class Production < Default
6
-
7
- database :host => 'localhost', :adapter => 'mysql', :database => 'jub',
8
- :user => 'root', :password => ''
9
-
10
- reloadable []
11
-
12
- log :level => :error,
13
- :output => ( :log / "waves.#{$$}" ),
14
- :rotation => :weekly
15
-
16
- host '0.0.0.0'
17
-
18
- port 80
19
-
20
- handler ::Rack::Handler::Mongrel, :Host => host, :Port => port
21
- # handler ::Rack::Handler::WEBrick, :BindAddress => host, :Port => port
22
- # handler ::Rack::Handler::Thin, :Host => host, :Port => port
23
-
24
- application do
25
- use ::Rack::Static, :urls => [ '/css/', '/javascript/', '/images/' ], :root => 'public'
26
- run ::Waves::Dispatchers::Default.new
27
- end
28
-
29
- end
30
- end
31
- end
@@ -1,5 +0,0 @@
1
- require 'layers/orm/sequel'
2
- module Jub
3
- include Waves::Foundations::Default
4
- include Waves::Layers::ORM::Sequel
5
- end
@@ -1,6 +0,0 @@
1
- WAVES = File.join(File.dirname(__FILE__), "..", "..")
2
- lambda {
3
- waves = ( ( WAVES if defined? WAVES ) || ENV['WAVES'] || File.join(File.dirname(__FILE__), 'waves') )
4
- $:.unshift(File.join( waves, "lib" )) if File.exist? waves
5
- }.call
6
- require 'waves'
@@ -1,2 +0,0 @@
1
- h1 '404'
2
- p %q( That URL does not exist on this server. )
@@ -1,2 +0,0 @@
1
- h1 '500'
2
- p %q( Internal server error. Sorry, but your request could not be processed. )
@@ -1,14 +0,0 @@
1
- doctype :html4_strict
2
-
3
- html do
4
-
5
- head do
6
- title @title
7
- end
8
-
9
- body do
10
- layout_content
11
- end
12
-
13
- end
14
-
@@ -1,24 +0,0 @@
1
- %w( rubygems bacon open3 extensions/all).each { |f| require f }
2
-
3
- Bacon.extend Bacon::TestUnitOutput
4
- Bacon.summary_on_exit
5
-
6
- require File.join(File.dirname(__FILE__), "..", "..", "lib", "utilities", "string")
7
-
8
-
9
- AppPath = File.expand_path(File.dirname(__FILE__) / "sandbox")
10
- FrameworkPath = File.expand_path(File.dirname(__FILE__) / ".." / "..")
11
-
12
- def generate_test_app(path)
13
- command = File.dirname(__FILE__) / ".." / ".." / :bin / "waves"
14
- system "#{command} #{path}"
15
- end
16
-
17
- def clobber_test_app(path)
18
- FileUtils.rm_rf(path) if File.exist?(path)
19
- end
20
-
21
- def set_framework_path(path)
22
- text = File.read(path / 'startup.rb').split("\n").unshift("WAVES = '#{FrameworkPath}'").join("\n")
23
- File.write(path / 'startup.rb', text)
24
- end
@@ -1,39 +0,0 @@
1
- # require 'test_helper' because RubyMate needs help
2
-
3
- require File.join(File.dirname(__FILE__) , "helpers")
4
-
5
- clobber_test_app(AppPath)
6
- generate_test_app(AppPath)
7
-
8
- describe "A generated application" do
9
-
10
- it "has executable script files" do
11
- File.executable?(File.join(AppPath, "bin", "waves-console")).should.be.true
12
- end
13
-
14
- it "will fail to find waves framework, if the gem is not available" do
15
- Dir.chdir(AppPath) do
16
- stdin, stdout, stderr = Open3.popen3("ruby startup.rb")
17
- stderr.gets.should =~ %r{no such file to load -- waves \(LoadError\)}
18
- end
19
- end
20
-
21
- it "will find and use waves framework source when WAVES is defined" do
22
- set_framework_path(AppPath)
23
- Dir.chdir(AppPath) do
24
- stdin, stdout, stderr = Open3.popen3("ruby startup.rb")
25
- stderr.gets.should == nil
26
- end
27
- end
28
-
29
- it "has the directories we expect it to have" do
30
- dirs = %w{ bin/ configurations/ controllers/ doc/ helpers/ lib/
31
- log/ models/ public/ schema/ templates/ tmp/ views/ }
32
- Dir.chdir(AppPath) do
33
- Dir.glob("*/").should == dirs
34
- end
35
- end
36
-
37
- end
38
-
39
- clobber_test_app(AppPath)
@@ -1,92 +0,0 @@
1
- require File.join(File.dirname(__FILE__), "helpers")
2
-
3
- specification "Blackboard" do
4
-
5
- it 'should create a blackboard' do
6
- request = mock(:request)
7
- Waves::Blackboard.new(request).should.not == nil
8
- end
9
-
10
- it 'should allow adding a value, and reading from it' do
11
- request = mock(:request)
12
- bb = Waves::Blackboard.new(request)
13
- bb.test = 2
14
- bb.test.should == 2
15
-
16
- bb["test"].should == 2
17
-
18
- bb["test2"] = 3
19
- bb["test2"].should == 3
20
- bb.test2.should == 3
21
- end
22
-
23
- it 'should not have a value if never set' do
24
- request = mock(:request)
25
- bb = Waves::Blackboard.new(request)
26
- bb.never_set.should == nil
27
- bb["never_set"].should == nil
28
- end
29
-
30
- it 'should iterate over all defined values' do
31
- request = mock(:request)
32
- bb = Waves::Blackboard.new(request)
33
- bb.value1 = 1
34
- bb.value2 = 2
35
- a = []
36
- bb.each do |value|
37
- a << value
38
- end
39
- a.should == [["value1", 1], ["value2", 2]]
40
- end
41
-
42
- end
43
-
44
- module BlackBoardVerify
45
- module Controllers
46
- class Test
47
- include Waves::Controllers::Mixin
48
- end
49
- end
50
- end
51
-
52
- module BlackBoardVerify
53
- module Configurations
54
- module Mapping
55
- extend Waves::Mapping
56
- end
57
- end
58
- end
59
-
60
- module BlackBoardVerify
61
- module Helpers
62
- module Test
63
- extend Waves::Helpers::Default
64
- end
65
- end
66
- end
67
-
68
- module BlackBoardVerify
69
- module Views
70
- module Test
71
- extend Waves::Views::Mixin
72
- end
73
- end
74
- end
75
-
76
- specification "Blackboard included in other classes" do
77
-
78
- before do
79
- end
80
-
81
- after do
82
- end
83
-
84
- it 'should be included in other classes' do
85
- request = mock(:request)
86
- BlackBoardVerify::Controllers::Test.instance_methods.should.include "blackboard"
87
- Waves::Helpers::Default.instance_methods.should.include "blackboard"
88
- Waves::ResponseProxy.instance_methods.should.include "blackboard"
89
- BlackBoardVerify::Views::Test.methods.should.include "blackboard"
90
- end
91
-
92
- end