renee 0.3.11 → 0.4.0.pre1

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 (231) hide show
  1. data/Gemfile +17 -0
  2. data/Gemfile-renee +8 -0
  3. data/Gemfile-renee-core +8 -0
  4. data/Gemfile-renee-render +9 -0
  5. data/Gemfile-renee-session +9 -0
  6. data/Gemfile-renee-url-generation +8 -0
  7. data/MIT-LICENSE.txt +7 -0
  8. data/README-renee-core.md +242 -0
  9. data/README-renee-render.md +38 -0
  10. data/README-renee-session.md +3 -0
  11. data/README-renee-url-generation.md +3 -0
  12. data/README.md +131 -6
  13. data/Rakefile +109 -9
  14. data/TODO.txt +45 -0
  15. data/config.ru +26 -0
  16. data/examples/blog/blog.rb +3 -1
  17. data/examples/blog/config.ru +24 -19
  18. data/examples/blog/views/edit.erb +10 -1
  19. data/examples/blog/views/show.erb +5 -0
  20. data/lib/renee.rb +11 -4
  21. data/lib/renee/core.rb +98 -0
  22. data/lib/renee/core/chaining.rb +66 -0
  23. data/lib/renee/core/env_accessors.rb +72 -0
  24. data/lib/renee/core/exceptions.rb +15 -0
  25. data/lib/renee/core/matcher.rb +61 -0
  26. data/lib/renee/core/plugins.rb +31 -0
  27. data/lib/renee/core/rack_interaction.rb +50 -0
  28. data/lib/renee/core/request_context.rb +56 -0
  29. data/lib/renee/core/responding.rb +112 -0
  30. data/lib/renee/core/response.rb +78 -0
  31. data/lib/renee/core/routing.rb +319 -0
  32. data/lib/renee/core/transform.rb +18 -0
  33. data/lib/renee/render.rb +221 -0
  34. data/lib/renee/session.rb +50 -0
  35. data/lib/renee/url_generation.rb +117 -0
  36. data/lib/renee/util.rb +7 -0
  37. data/lib/renee/version.rb +2 -4
  38. data/plan.txt +19 -0
  39. data/renee-core.gemspec +26 -0
  40. data/renee-render.gemspec +30 -0
  41. data/renee-session.gemspec +28 -0
  42. data/renee-url-generation.gemspec +24 -0
  43. data/renee.gemspec +5 -6
  44. data/site/MIT-LICENSE.txt +7 -0
  45. data/site/public/css/app.css +75 -0
  46. data/site/public/docs/renee-core/Renee.html +208 -0
  47. data/site/public/docs/renee-core/Renee/Core.html +366 -0
  48. data/site/public/docs/renee-core/Renee/Core/Chaining.html +192 -0
  49. data/site/public/docs/renee-core/Renee/Core/ClassMethods.html +725 -0
  50. data/site/public/docs/renee-core/Renee/Core/ClientError.html +317 -0
  51. data/site/public/docs/renee-core/Renee/Core/EnvAccessors.html +152 -0
  52. data/site/public/docs/renee-core/Renee/Core/EnvAccessors/ClassMethods.html +354 -0
  53. data/site/public/docs/renee-core/Renee/Core/Matcher.html +675 -0
  54. data/site/public/docs/renee-core/Renee/Core/Plugins.html +475 -0
  55. data/site/public/docs/renee-core/Renee/Core/RackInteraction.html +488 -0
  56. data/site/public/docs/renee-core/Renee/Core/RequestContext.html +511 -0
  57. data/site/public/docs/renee-core/Renee/Core/Responding.html +877 -0
  58. data/site/public/docs/renee-core/Renee/Core/Response.html +691 -0
  59. data/site/public/docs/renee-core/Renee/Core/Routing.html +1589 -0
  60. data/site/public/docs/renee-core/Renee/Core/Transform.html +249 -0
  61. data/site/public/docs/renee-core/Renee/Core/URLGeneration.html +597 -0
  62. data/site/public/docs/renee-core/_index.html +244 -0
  63. data/site/public/docs/renee-core/class_list.html +47 -0
  64. data/site/public/docs/renee-core/css/common.css +1 -0
  65. data/site/public/docs/renee-core/css/full_list.css +55 -0
  66. data/site/public/docs/renee-core/css/style.css +322 -0
  67. data/site/public/docs/renee-core/file.README-renee-core.html +341 -0
  68. data/site/public/docs/renee-core/file.README.html +212 -0
  69. data/site/public/docs/renee-core/file_list.html +49 -0
  70. data/site/public/docs/renee-core/frames.html +13 -0
  71. data/site/public/docs/renee-core/index.html +341 -0
  72. data/site/public/docs/renee-core/js/app.js +205 -0
  73. data/site/public/docs/renee-core/js/full_list.js +167 -0
  74. data/site/public/docs/renee-core/js/jquery.js +16 -0
  75. data/site/public/docs/renee-core/method_list.html +590 -0
  76. data/site/public/docs/renee-core/top-level-namespace.html +103 -0
  77. data/site/public/docs/renee-render/Renee.html +116 -0
  78. data/site/public/docs/renee-render/Renee/Core.html +346 -0
  79. data/site/public/docs/renee-render/Renee/Core/Chaining.html +125 -0
  80. data/site/public/docs/renee-render/Renee/Core/ClassMethods.html +620 -0
  81. data/site/public/docs/renee-render/Renee/Core/ClientError.html +317 -0
  82. data/site/public/docs/renee-render/Renee/Core/EnvAccessors.html +152 -0
  83. data/site/public/docs/renee-render/Renee/Core/EnvAccessors/ClassMethods.html +354 -0
  84. data/site/public/docs/renee-render/Renee/Core/Matcher.html +675 -0
  85. data/site/public/docs/renee-render/Renee/Core/RackInteraction.html +488 -0
  86. data/site/public/docs/renee-render/Renee/Core/RequestContext.html +421 -0
  87. data/site/public/docs/renee-render/Renee/Core/Responding.html +873 -0
  88. data/site/public/docs/renee-render/Renee/Core/Response.html +691 -0
  89. data/site/public/docs/renee-render/Renee/Core/Routing.html +1682 -0
  90. data/site/public/docs/renee-render/Renee/Core/Transform.html +249 -0
  91. data/site/public/docs/renee-render/Renee/Core/URLGeneration.html +597 -0
  92. data/site/public/docs/renee-render/Renee/Render.html +873 -0
  93. data/site/public/docs/renee-render/Renee/Render/ClassMethods.html +382 -0
  94. data/site/public/docs/renee-render/Renee/Render/TemplateNotFound.html +126 -0
  95. data/site/public/docs/renee-render/_index.html +143 -0
  96. data/site/public/docs/renee-render/class_list.html +47 -0
  97. data/site/public/docs/renee-render/css/common.css +1 -0
  98. data/site/public/docs/renee-render/css/full_list.css +55 -0
  99. data/site/public/docs/renee-render/css/style.css +322 -0
  100. data/site/public/docs/renee-render/file.README-renee-render.html +104 -0
  101. data/site/public/docs/renee-render/file.README.html +212 -0
  102. data/site/public/docs/renee-render/file_list.html +49 -0
  103. data/site/public/docs/renee-render/frames.html +13 -0
  104. data/site/public/docs/renee-render/index.html +104 -0
  105. data/site/public/docs/renee-render/js/app.js +205 -0
  106. data/site/public/docs/renee-render/js/full_list.js +167 -0
  107. data/site/public/docs/renee-render/js/jquery.js +16 -0
  108. data/site/public/docs/renee-render/method_list.html +110 -0
  109. data/site/public/docs/renee-render/top-level-namespace.html +103 -0
  110. data/site/public/docs/renee-session/Renee.html +106 -0
  111. data/site/public/docs/renee-session/Renee/Session.html +173 -0
  112. data/site/public/docs/renee-session/Renee/Session/ClassMethods.html +470 -0
  113. data/site/public/docs/renee-session/_index.html +136 -0
  114. data/site/public/docs/renee-session/class_list.html +47 -0
  115. data/site/public/docs/renee-session/css/common.css +1 -0
  116. data/site/public/docs/renee-session/css/full_list.css +55 -0
  117. data/site/public/docs/renee-session/css/style.css +322 -0
  118. data/site/public/docs/renee-session/file.README-renee-core.html +341 -0
  119. data/site/public/docs/renee-session/file.README-renee-session.html +69 -0
  120. data/site/public/docs/renee-session/file_list.html +49 -0
  121. data/site/public/docs/renee-session/frames.html +13 -0
  122. data/site/public/docs/renee-session/index.html +69 -0
  123. data/site/public/docs/renee-session/js/app.js +205 -0
  124. data/site/public/docs/renee-session/js/full_list.js +167 -0
  125. data/site/public/docs/renee-session/js/jquery.js +16 -0
  126. data/site/public/docs/renee-session/method_list.html +102 -0
  127. data/site/public/docs/renee-session/top-level-namespace.html +103 -0
  128. data/site/public/docs/renee-url-generation/Renee.html +208 -0
  129. data/site/public/docs/renee-url-generation/Renee/Core.html +366 -0
  130. data/site/public/docs/renee-url-generation/Renee/Core/Chaining.html +192 -0
  131. data/site/public/docs/renee-url-generation/Renee/Core/ClassMethods.html +725 -0
  132. data/site/public/docs/renee-url-generation/Renee/Core/ClientError.html +317 -0
  133. data/site/public/docs/renee-url-generation/Renee/Core/EnvAccessors.html +152 -0
  134. data/site/public/docs/renee-url-generation/Renee/Core/EnvAccessors/ClassMethods.html +354 -0
  135. data/site/public/docs/renee-url-generation/Renee/Core/Matcher.html +675 -0
  136. data/site/public/docs/renee-url-generation/Renee/Core/Plugins.html +475 -0
  137. data/site/public/docs/renee-url-generation/Renee/Core/RackInteraction.html +488 -0
  138. data/site/public/docs/renee-url-generation/Renee/Core/RequestContext.html +511 -0
  139. data/site/public/docs/renee-url-generation/Renee/Core/Responding.html +877 -0
  140. data/site/public/docs/renee-url-generation/Renee/Core/Response.html +691 -0
  141. data/site/public/docs/renee-url-generation/Renee/Core/Routing.html +1589 -0
  142. data/site/public/docs/renee-url-generation/Renee/Core/Transform.html +249 -0
  143. data/site/public/docs/renee-url-generation/_index.html +244 -0
  144. data/site/public/docs/renee-url-generation/class_list.html +47 -0
  145. data/site/public/docs/renee-url-generation/css/common.css +1 -0
  146. data/site/public/docs/renee-url-generation/css/full_list.css +55 -0
  147. data/site/public/docs/renee-url-generation/css/style.css +322 -0
  148. data/site/public/docs/renee-url-generation/file.README-renee-url-generation.html +69 -0
  149. data/site/public/docs/renee-url-generation/file_list.html +49 -0
  150. data/site/public/docs/renee-url-generation/frames.html +13 -0
  151. data/site/public/docs/renee-url-generation/index.html +69 -0
  152. data/site/public/docs/renee-url-generation/js/app.js +205 -0
  153. data/site/public/docs/renee-url-generation/js/full_list.js +167 -0
  154. data/site/public/docs/renee-url-generation/js/jquery.js +16 -0
  155. data/site/public/docs/renee-url-generation/method_list.html +590 -0
  156. data/site/public/docs/renee-url-generation/top-level-namespace.html +103 -0
  157. data/site/public/docs/renee/Renee.html +232 -0
  158. data/site/public/docs/renee/Renee/Application.html +367 -0
  159. data/site/public/docs/renee/Renee/Core.html +370 -0
  160. data/site/public/docs/renee/Renee/Core/Chaining.html +192 -0
  161. data/site/public/docs/renee/Renee/Core/ClassMethods.html +725 -0
  162. data/site/public/docs/renee/Renee/Core/ClientError.html +317 -0
  163. data/site/public/docs/renee/Renee/Core/EnvAccessors.html +152 -0
  164. data/site/public/docs/renee/Renee/Core/EnvAccessors/ClassMethods.html +354 -0
  165. data/site/public/docs/renee/Renee/Core/Matcher.html +675 -0
  166. data/site/public/docs/renee/Renee/Core/Plugins.html +475 -0
  167. data/site/public/docs/renee/Renee/Core/RackInteraction.html +488 -0
  168. data/site/public/docs/renee/Renee/Core/RequestContext.html +511 -0
  169. data/site/public/docs/renee/Renee/Core/Responding.html +877 -0
  170. data/site/public/docs/renee/Renee/Core/Response.html +691 -0
  171. data/site/public/docs/renee/Renee/Core/Routing.html +1589 -0
  172. data/site/public/docs/renee/Renee/Core/Transform.html +249 -0
  173. data/site/public/docs/renee/Renee/Core/URLGeneration.html +597 -0
  174. data/site/public/docs/renee/Renee/Render.html +877 -0
  175. data/site/public/docs/renee/Renee/Render/ClassMethods.html +382 -0
  176. data/site/public/docs/renee/Renee/Render/TemplateNotFound.html +126 -0
  177. data/site/public/docs/renee/Renee/Session.html +177 -0
  178. data/site/public/docs/renee/Renee/Session/ClassMethods.html +470 -0
  179. data/site/public/docs/renee/Renee/URLGeneration.html +142 -0
  180. data/site/public/docs/renee/Renee/URLGeneration/ClassMethods.html +593 -0
  181. data/site/public/docs/renee/Renee/Util.html +163 -0
  182. data/site/public/docs/renee/_index.html +336 -0
  183. data/site/public/docs/renee/class_list.html +47 -0
  184. data/site/public/docs/renee/css/common.css +1 -0
  185. data/site/public/docs/renee/css/full_list.css +55 -0
  186. data/site/public/docs/renee/css/style.css +322 -0
  187. data/site/public/docs/renee/file.README.html +212 -0
  188. data/site/public/docs/renee/file_list.html +49 -0
  189. data/site/public/docs/renee/frames.html +13 -0
  190. data/site/public/docs/renee/index.html +212 -0
  191. data/site/public/docs/renee/js/app.js +205 -0
  192. data/site/public/docs/renee/js/full_list.js +167 -0
  193. data/site/public/docs/renee/js/jquery.js +16 -0
  194. data/site/public/docs/renee/method_list.html +758 -0
  195. data/site/public/docs/renee/top-level-namespace.html +202 -0
  196. data/site/public/img/favicon.ico +0 -0
  197. data/site/public/img/reneeclean.png +0 -0
  198. data/site/public/img/russiangithub.png +0 -0
  199. data/site/public/img/stoneposter.png +0 -0
  200. data/site/public/img/vospit.jpeg +0 -0
  201. data/site/views/chaining.md +32 -0
  202. data/site/views/index.md +219 -0
  203. data/site/views/layouts/app.haml +16 -0
  204. data/site/views/rack-integration.md +51 -0
  205. data/site/views/responding.md +103 -0
  206. data/site/views/route-generation.md +82 -0
  207. data/site/views/routing.md +261 -0
  208. data/site/views/settings.md +19 -0
  209. data/site/views/team-renee.md +13 -0
  210. data/site/views/tutorial.md +57 -0
  211. data/site/views/variable-types.md +57 -0
  212. data/test.watchr +61 -0
  213. data/test/renee-core/chaining_test.rb +33 -0
  214. data/test/renee-core/env_accessors_test.rb +43 -0
  215. data/test/renee-core/include_test.rb +14 -0
  216. data/test/renee-core/request_context_test.rb +70 -0
  217. data/test/renee-core/responding_test.rb +128 -0
  218. data/test/renee-core/routing_test.rb +443 -0
  219. data/test/renee-core/test_helper.rb +4 -0
  220. data/test/renee-core/variable_type_test.rb +57 -0
  221. data/test/renee-render/render_test.rb +162 -0
  222. data/test/renee-render/test_helper.rb +9 -0
  223. data/test/renee-session/session_test.rb +31 -0
  224. data/test/renee-session/test_helper.rb +9 -0
  225. data/test/renee-url-generation/test_helper.rb +10 -0
  226. data/test/renee-url-generation/url_generation_test.rb +63 -0
  227. data/test/{blog_test.rb → renee/blog_test.rb} +10 -5
  228. data/test/renee/test_helper.rb +56 -0
  229. data/test/test_helper.rb +23 -10
  230. metadata +333 -156
  231. data/.yardopts +0 -6
@@ -0,0 +1,877 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Module: Renee::Core::Responding
8
+
9
+ &mdash; Documentation by YARD 0.7.4
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ relpath = '../..';
19
+ if (relpath != '') relpath += '/';
20
+ </script>
21
+
22
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
25
+
26
+
27
+ </head>
28
+ <body>
29
+ <script type="text/javascript" charset="utf-8">
30
+ if (window.top.frames.main) document.body.className = 'frames';
31
+ </script>
32
+
33
+ <div id="header">
34
+ <div id="menu">
35
+
36
+ <a href="../../_index.html">Index (R)</a> &raquo;
37
+ <span class='title'><span class='object_link'><a href="../../Renee.html" title="Renee (module)">Renee</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Core.html" title="Renee::Core (class)">Core</a></span></span>
38
+ &raquo;
39
+ <span class="title">Responding</span>
40
+
41
+
42
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
43
+ </div>
44
+
45
+ <div id="search">
46
+
47
+ <a id="class_list_link" href="#">Class List</a>
48
+
49
+ <a id="method_list_link" href="#">Method List</a>
50
+
51
+ <a id="file_list_link" href="#">File List</a>
52
+
53
+ </div>
54
+ <div class="clear"></div>
55
+ </div>
56
+
57
+ <iframe id="search_frame"></iframe>
58
+
59
+ <div id="content"><h1>Module: Renee::Core::Responding
60
+
61
+
62
+
63
+ </h1>
64
+
65
+ <dl class="box">
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+ <dt class="r1">Included in:</dt>
74
+ <dd class="r1"><span class='object_link'><a href="../Core.html" title="Renee::Core (class)">Renee::Core</a></span></dd>
75
+
76
+
77
+
78
+ <dt class="r2 last">Defined in:</dt>
79
+ <dd class="r2 last">lib/renee/core/responding.rb</dd>
80
+
81
+ </dl>
82
+ <div class="clear"></div>
83
+
84
+ <h2>Overview</h2><div class="docstring">
85
+ <div class="discussion">
86
+ <p>Collection of useful methods for responding within a <span class='object_link'><a href="../Core.html" title="Renee::Core (class)">Renee::Core</a></span> app.</p>
87
+
88
+
89
+ </div>
90
+ </div>
91
+ <div class="tags">
92
+
93
+
94
+ </div>
95
+ <h2>Constant Summary</h2>
96
+
97
+ <dl class="constants">
98
+
99
+ <dt id="HTTP_CODES-constant" class="">HTTP_CODES =
100
+ <div class="docstring">
101
+ <div class="discussion">
102
+ <p>Codes used by Symbol lookup in interpret_response.</p>
103
+
104
+
105
+ </div>
106
+ </div>
107
+ <div class="tags">
108
+
109
+ <div class="examples">
110
+ <h3>Examples:</h3>
111
+
112
+ <h4><div class='inline'>
113
+ </div></h4>
114
+ <pre class="example code"><span class='id identifier rubyid_halt'>halt</span> <span class='symbol'>:unauthorized</span> <span class='comment'># would return a 401.</span></pre>
115
+
116
+ </div>
117
+
118
+
119
+ </div>
120
+ </dt>
121
+ <dd><pre class="code"><span class='lbrace'>{</span>
122
+ <span class='symbol'>:ok</span> <span class='op'>=&gt;</span> <span class='int'>200</span><span class='comma'>,</span>
123
+ <span class='symbol'>:created</span> <span class='op'>=&gt;</span> <span class='int'>201</span><span class='comma'>,</span>
124
+ <span class='symbol'>:accepted</span> <span class='op'>=&gt;</span> <span class='int'>202</span><span class='comma'>,</span>
125
+ <span class='symbol'>:no_content</span> <span class='op'>=&gt;</span> <span class='int'>204</span><span class='comma'>,</span>
126
+ <span class='symbol'>:no_content</span> <span class='op'>=&gt;</span> <span class='int'>204</span><span class='comma'>,</span>
127
+ <span class='symbol'>:bad_request</span> <span class='op'>=&gt;</span> <span class='int'>400</span><span class='comma'>,</span>
128
+ <span class='symbol'>:unauthorized</span> <span class='op'>=&gt;</span> <span class='int'>401</span><span class='comma'>,</span>
129
+ <span class='symbol'>:payment_required</span> <span class='op'>=&gt;</span> <span class='int'>403</span><span class='comma'>,</span>
130
+ <span class='symbol'>:not_found</span> <span class='op'>=&gt;</span> <span class='int'>404</span><span class='comma'>,</span>
131
+ <span class='symbol'>:method_not_found</span> <span class='op'>=&gt;</span> <span class='int'>405</span><span class='comma'>,</span>
132
+ <span class='symbol'>:not_acceptable</span> <span class='op'>=&gt;</span> <span class='int'>406</span><span class='comma'>,</span>
133
+ <span class='symbol'>:gone</span> <span class='op'>=&gt;</span> <span class='int'>410</span><span class='comma'>,</span>
134
+ <span class='symbol'>:error</span> <span class='op'>=&gt;</span> <span class='int'>500</span><span class='comma'>,</span>
135
+ <span class='symbol'>:not_implemented</span> <span class='op'>=&gt;</span> <span class='int'>501</span><span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
136
+
137
+ </dl>
138
+
139
+
140
+
141
+
142
+
143
+
144
+
145
+ <h2>
146
+ Instance Method Summary
147
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
148
+ </h2>
149
+
150
+ <ul class="summary">
151
+
152
+ <li class="public ">
153
+ <span class="summary_signature">
154
+
155
+ <a href="#halt-instance_method" title="#halt (instance method)">- (Object) <strong>halt</strong>(*response) </a>
156
+
157
+
158
+
159
+ </span>
160
+
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+ <span class="summary_desc"><div class='inline'><p>Halts current processing to the top-level calling Renee application and uses that as a response.</p>
169
+ </div></span>
170
+
171
+ </li>
172
+
173
+
174
+ <li class="public ">
175
+ <span class="summary_signature">
176
+
177
+ <a href="#interpret_response-instance_method" title="#interpret_response (instance method)">- (Object) <strong>interpret_response</strong>(response) </a>
178
+
179
+
180
+
181
+ </span>
182
+
183
+
184
+
185
+
186
+
187
+
188
+
189
+
190
+ <span class="summary_desc"><div class='inline'><p>Interprets responses returns by #halt.</p>
191
+ </div></span>
192
+
193
+ </li>
194
+
195
+
196
+ <li class="public ">
197
+ <span class="summary_signature">
198
+
199
+ <a href="#redirect-instance_method" title="#redirect (instance method)">- (Object) <strong>redirect</strong>(path, code = 302) </a>
200
+
201
+
202
+
203
+ </span>
204
+
205
+
206
+
207
+
208
+
209
+
210
+
211
+
212
+ <span class="summary_desc"><div class='inline'><p>Returns a rack-based response for redirection.</p>
213
+ </div></span>
214
+
215
+ </li>
216
+
217
+
218
+ <li class="public ">
219
+ <span class="summary_signature">
220
+
221
+ <a href="#redirect%21-instance_method" title="#redirect! (instance method)">- (Object) <strong>redirect!</strong>(path, code = 302) </a>
222
+
223
+
224
+
225
+ </span>
226
+
227
+
228
+
229
+
230
+
231
+
232
+
233
+
234
+ <span class="summary_desc"><div class='inline'><p>Halts with a rack-based response for redirection.</p>
235
+ </div></span>
236
+
237
+ </li>
238
+
239
+
240
+ <li class="public ">
241
+ <span class="summary_signature">
242
+
243
+ <a href="#respond-instance_method" title="#respond (instance method)">- (Object) <strong>respond</strong>(body = [], status = 200, header = {}, &amp;blk) </a>
244
+
245
+
246
+
247
+ </span>
248
+
249
+
250
+
251
+
252
+
253
+
254
+
255
+
256
+ <span class="summary_desc"><div class='inline'><p>Creates a response by allowing the response header, body and status to be passed into the block.</p>
257
+ </div></span>
258
+
259
+ </li>
260
+
261
+
262
+ <li class="public ">
263
+ <span class="summary_signature">
264
+
265
+ <a href="#respond%21-instance_method" title="#respond! (instance method)">- (Object) <strong>respond!</strong>(*args, &amp;blk) </a>
266
+
267
+
268
+
269
+ </span>
270
+
271
+
272
+
273
+
274
+
275
+
276
+
277
+
278
+ <span class="summary_desc"><div class='inline'><p>Creates a response by allowing the response header, body and status to be passed into the block.</p>
279
+ </div></span>
280
+
281
+ </li>
282
+
283
+
284
+ </ul>
285
+
286
+
287
+
288
+
289
+ <div id="instance_method_details" class="method_details_list">
290
+ <h2>Instance Method Details</h2>
291
+
292
+
293
+ <div class="method_details first">
294
+ <p class="signature first" id="halt-instance_method">
295
+
296
+ - (<tt>Object</tt>) <strong>halt</strong>(*response)
297
+
298
+
299
+
300
+ </p><div class="docstring">
301
+ <div class="discussion">
302
+ <p>Halts current processing to the top-level calling Renee application and uses that as a response.</p>
303
+
304
+
305
+ </div>
306
+ </div>
307
+ <div class="tags">
308
+ <h3>Parameters:</h3>
309
+ <ul class="param">
310
+
311
+ <li>
312
+
313
+ <span class='name'>response</span>
314
+
315
+
316
+ <span class='type'>(<tt>Object...</tt>)</span>
317
+
318
+
319
+
320
+ &mdash;
321
+ <div class='inline'><p>The response to use.</p>
322
+ </div>
323
+
324
+ </li>
325
+
326
+ </ul>
327
+
328
+
329
+ <h3>See Also:</h3>
330
+ <ul class="see">
331
+
332
+ <li><span class='object_link'><a href="#interpret_response-instance_method" title="Renee::Core::Responding#interpret_response (method)">#interpret_response</a></span></li>
333
+
334
+ </ul>
335
+
336
+ </div><table class="source_code">
337
+ <tr>
338
+ <td>
339
+ <pre class="lines">
340
+
341
+
342
+ 28
343
+ 29
344
+ 30</pre>
345
+ </td>
346
+ <td>
347
+ <pre class="code"><span class="info file"># File 'lib/renee/core/responding.rb', line 28</span>
348
+
349
+ <span class='kw'>def</span> <span class='id identifier rubyid_halt'>halt</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
350
+ <span class='id identifier rubyid_throw'>throw</span> <span class='symbol'>:halt</span><span class='comma'>,</span> <span class='id identifier rubyid_interpret_response'>interpret_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>1</span> <span class='op'>?</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span> <span class='op'>:</span> <span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
351
+ <span class='kw'>end</span></pre>
352
+ </td>
353
+ </tr>
354
+ </table>
355
+ </div>
356
+
357
+ <div class="method_details ">
358
+ <p class="signature " id="interpret_response-instance_method">
359
+
360
+ - (<tt>Object</tt>) <strong>interpret_response</strong>(response)
361
+
362
+
363
+
364
+ </p><div class="docstring">
365
+ <div class="discussion">
366
+ <p>Interprets responses returns by #halt.</p>
367
+
368
+ <ul>
369
+ <li>If it is a Symbol, it will be looked up in <span class='object_link'><a href="#HTTP_CODES-constant" title="Renee::Core::Responding::HTTP_CODES (constant)">HTTP_CODES</a></span>.</li>
370
+ <li>If it is a Symbol, it will use Rack::Response to return the value.</li>
371
+ <li>If it is a Symbol, it will either be used as a Rack response or as a body and status code.</li>
372
+ <li>If it is an Integer, it will use Rack::Response to return the status code.</li>
373
+ <li>Otherwise, #to_s will be called on it and it will be treated as a Symbol.</li>
374
+ </ul>
375
+
376
+
377
+
378
+ </div>
379
+ </div>
380
+ <div class="tags">
381
+ <h3>Parameters:</h3>
382
+ <ul class="param">
383
+
384
+ <li>
385
+
386
+ <span class='name'>response</span>
387
+
388
+
389
+ <span class='type'>(<tt>Object</tt>)</span>
390
+
391
+
392
+
393
+ &mdash;
394
+ <div class='inline'><p>This can be either a Symbol, String, Array or any Object.</p>
395
+ </div>
396
+
397
+ </li>
398
+
399
+ </ul>
400
+
401
+
402
+ </div><table class="source_code">
403
+ <tr>
404
+ <td>
405
+ <pre class="lines">
406
+
407
+
408
+ 72
409
+ 73
410
+ 74
411
+ 75
412
+ 76
413
+ 77
414
+ 78
415
+ 79
416
+ 80
417
+ 81
418
+ 82
419
+ 83
420
+ 84
421
+ 85
422
+ 86</pre>
423
+ </td>
424
+ <td>
425
+ <pre class="code"><span class="info file"># File 'lib/renee/core/responding.rb', line 72</span>
426
+
427
+ <span class='kw'>def</span> <span class='id identifier rubyid_interpret_response'>interpret_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
428
+ <span class='kw'>case</span> <span class='id identifier rubyid_response'>response</span>
429
+ <span class='kw'>when</span> <span class='const'>Array</span> <span class='kw'>then</span>
430
+ <span class='kw'>case</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
431
+ <span class='kw'>when</span> <span class='int'>3</span> <span class='kw'>then</span> <span class='id identifier rubyid_response'>response</span>
432
+ <span class='kw'>when</span> <span class='int'>2</span> <span class='kw'>then</span> <span class='const'>Renee</span><span class='op'>::</span><span class='const'>Core</span><span class='op'>::</span><span class='const'>Response</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='const'>HTTP_CODES</span><span class='lbracket'>[</span><span class='id identifier rubyid_response'>response</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_response'>response</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_finish'>finish</span>
433
+ <span class='kw'>else</span> <span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>I don't know how to render </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span>
434
+ <span class='kw'>end</span>
435
+ <span class='kw'>when</span> <span class='const'>String</span> <span class='kw'>then</span> <span class='const'>Renee</span><span class='op'>::</span><span class='const'>Core</span><span class='op'>::</span><span class='const'>Response</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_finish'>finish</span>
436
+ <span class='kw'>when</span> <span class='const'>Integer</span> <span class='kw'>then</span> <span class='const'>Renee</span><span class='op'>::</span><span class='const'>Core</span><span class='op'>::</span><span class='const'>Response</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Status code </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_response'>response</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_finish'>finish</span>
437
+ <span class='kw'>when</span> <span class='const'>Symbol</span> <span class='kw'>then</span> <span class='id identifier rubyid_interpret_response'>interpret_response</span><span class='lparen'>(</span><span class='const'>HTTP_CODES</span><span class='lbracket'>[</span><span class='id identifier rubyid_response'>response</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rparen'>)</span>
438
+ <span class='kw'>when</span> <span class='const'>Proc</span> <span class='kw'>then</span> <span class='id identifier rubyid_instance_eval'>instance_eval</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
439
+ <span class='kw'>else</span> <span class='id identifier rubyid_response'>response</span> <span class='comment'># pass through response
440
+ </span> <span class='kw'>end</span>
441
+ <span class='kw'>end</span></pre>
442
+ </td>
443
+ </tr>
444
+ </table>
445
+ </div>
446
+
447
+ <div class="method_details ">
448
+ <p class="signature " id="redirect-instance_method">
449
+
450
+ - (<tt>Object</tt>) <strong>redirect</strong>(path, code = 302)
451
+
452
+
453
+
454
+ </p><div class="docstring">
455
+ <div class="discussion">
456
+ <p>Returns a rack-based response for redirection.</p>
457
+
458
+
459
+ </div>
460
+ </div>
461
+ <div class="tags">
462
+
463
+ <div class="examples">
464
+ <h3>Examples:</h3>
465
+
466
+ <h4><div class='inline'>
467
+ </div></h4>
468
+ <pre class="example code"><span class='id identifier rubyid_r'>r</span> <span class='op'>=</span> <span class='const'>Renee</span><span class='period'>.</span><span class='id identifier rubyid_core'>core</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_get'>get</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_halt'>halt</span> <span class='id identifier rubyid_redirect'>redirect</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/index</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span> <span class='rbrace'>}</span>
469
+ <span class='id identifier rubyid_r'>r</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='const'>Rack</span><span class='op'>::</span><span class='const'>MockResponse</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='comment'># =&gt; [302, {&quot;Location&quot; =&gt; &quot;/index&quot;}, []]</span></pre>
470
+
471
+ </div>
472
+ <h3>Parameters:</h3>
473
+ <ul class="param">
474
+
475
+ <li>
476
+
477
+ <span class='name'>path</span>
478
+
479
+
480
+ <span class='type'>(<tt>String</tt>)</span>
481
+
482
+
483
+
484
+ &mdash;
485
+ <div class='inline'><p>The URL to redirect to.</p>
486
+ </div>
487
+
488
+ </li>
489
+
490
+ <li>
491
+
492
+ <span class='name'>code</span>
493
+
494
+
495
+ <span class='type'>(<tt>Integer</tt>)</span>
496
+
497
+
498
+ <em class="default">(defaults to: <tt>302</tt>)</em>
499
+
500
+
501
+ &mdash;
502
+ <div class='inline'><p>The HTTP code to use.</p>
503
+ </div>
504
+
505
+ </li>
506
+
507
+ </ul>
508
+
509
+
510
+ </div><table class="source_code">
511
+ <tr>
512
+ <td>
513
+ <pre class="lines">
514
+
515
+
516
+ 94
517
+ 95
518
+ 96
519
+ 97
520
+ 98</pre>
521
+ </td>
522
+ <td>
523
+ <pre class="code"><span class="info file"># File 'lib/renee/core/responding.rb', line 94</span>
524
+
525
+ <span class='kw'>def</span> <span class='id identifier rubyid_redirect'>redirect</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_code'>code</span> <span class='op'>=</span> <span class='int'>302</span><span class='rparen'>)</span>
526
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='op'>::</span><span class='const'>Rack</span><span class='op'>::</span><span class='const'>Response</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
527
+ <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_redirect'>redirect</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_code'>code</span><span class='rparen'>)</span>
528
+ <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_finish'>finish</span>
529
+ <span class='kw'>end</span></pre>
530
+ </td>
531
+ </tr>
532
+ </table>
533
+ </div>
534
+
535
+ <div class="method_details ">
536
+ <p class="signature " id="redirect!-instance_method">
537
+
538
+ - (<tt>Object</tt>) <strong>redirect!</strong>(path, code = 302)
539
+
540
+
541
+
542
+ </p><div class="docstring">
543
+ <div class="discussion">
544
+ <p>Halts with a rack-based response for redirection.</p>
545
+
546
+
547
+ </div>
548
+ </div>
549
+ <div class="tags">
550
+
551
+ <div class="examples">
552
+ <h3>Examples:</h3>
553
+
554
+ <h4><div class='inline'>
555
+ </div></h4>
556
+ <pre class="example code"><span class='id identifier rubyid_r'>r</span> <span class='op'>=</span> <span class='const'>Renee</span><span class='period'>.</span><span class='id identifier rubyid_core'>core</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_get'>get</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_redirect!'>redirect!</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/index</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span> <span class='rbrace'>}</span>
557
+ <span class='id identifier rubyid_r'>r</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='const'>Rack</span><span class='op'>::</span><span class='const'>MockResponse</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='comment'># =&gt; [302, {&quot;Location&quot; =&gt; &quot;/index&quot;}, []]</span></pre>
558
+
559
+ </div>
560
+ <h3>Parameters:</h3>
561
+ <ul class="param">
562
+
563
+ <li>
564
+
565
+ <span class='name'>path</span>
566
+
567
+
568
+ <span class='type'>(<tt>String</tt>)</span>
569
+
570
+
571
+
572
+ &mdash;
573
+ <div class='inline'><p>The URL to redirect to.</p>
574
+ </div>
575
+
576
+ </li>
577
+
578
+ <li>
579
+
580
+ <span class='name'>code</span>
581
+
582
+
583
+ <span class='type'>(<tt>Integer</tt>)</span>
584
+
585
+
586
+ <em class="default">(defaults to: <tt>302</tt>)</em>
587
+
588
+
589
+ &mdash;
590
+ <div class='inline'><p>The HTTP code to use.</p>
591
+ </div>
592
+
593
+ </li>
594
+
595
+ </ul>
596
+
597
+
598
+ <h3>See Also:</h3>
599
+ <ul class="see">
600
+
601
+ <li><span class='object_link'><a href="#redirect-instance_method" title="Renee::Core::Responding#redirect (method)">#redirect</a></span></li>
602
+
603
+ </ul>
604
+
605
+ </div><table class="source_code">
606
+ <tr>
607
+ <td>
608
+ <pre class="lines">
609
+
610
+
611
+ 107
612
+ 108
613
+ 109</pre>
614
+ </td>
615
+ <td>
616
+ <pre class="code"><span class="info file"># File 'lib/renee/core/responding.rb', line 107</span>
617
+
618
+ <span class='kw'>def</span> <span class='id identifier rubyid_redirect!'>redirect!</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_code'>code</span> <span class='op'>=</span> <span class='int'>302</span><span class='rparen'>)</span>
619
+ <span class='id identifier rubyid_halt'>halt</span> <span class='id identifier rubyid_redirect'>redirect</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_code'>code</span><span class='rparen'>)</span>
620
+ <span class='kw'>end</span></pre>
621
+ </td>
622
+ </tr>
623
+ </table>
624
+ </div>
625
+
626
+ <div class="method_details ">
627
+ <p class="signature " id="respond-instance_method">
628
+
629
+ - (<tt>Object</tt>) <strong>respond</strong>(body = [], status = 200, header = {}, &amp;blk)
630
+
631
+
632
+
633
+ </p><div class="docstring">
634
+ <div class="discussion">
635
+ <p>Creates a response by allowing the response header, body and status to be passed into the block.</p>
636
+
637
+
638
+ </div>
639
+ </div>
640
+ <div class="tags">
641
+
642
+ <div class="examples">
643
+ <h3>Examples:</h3>
644
+
645
+ <h4><div class='inline'>
646
+ </div></h4>
647
+ <pre class="example code"><span class='id identifier rubyid_respond'>respond</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_status'>status</span> <span class='int'>200</span><span class='semicolon'>;</span> <span class='id identifier rubyid_body'>body</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Yay!</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span>
648
+ <span class='id identifier rubyid_respond'>respond</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Hello</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='int'>200</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>foo</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>bar</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span></pre>
649
+
650
+ </div>
651
+ <h3>Parameters:</h3>
652
+ <ul class="param">
653
+
654
+ <li>
655
+
656
+ <span class='name'>body</span>
657
+
658
+
659
+ <span class='type'>(<tt>Array</tt>)</span>
660
+
661
+
662
+ <em class="default">(defaults to: <tt>[]</tt>)</em>
663
+
664
+
665
+ &mdash;
666
+ <div class='inline'><p>The contents to return.</p>
667
+ </div>
668
+
669
+ </li>
670
+
671
+ <li>
672
+
673
+ <span class='name'>status</span>
674
+
675
+
676
+ <span class='type'>(<tt>Integer</tt>)</span>
677
+
678
+
679
+ <em class="default">(defaults to: <tt>200</tt>)</em>
680
+
681
+
682
+ &mdash;
683
+ <div class='inline'><p>The status code to return.</p>
684
+ </div>
685
+
686
+ </li>
687
+
688
+ <li>
689
+
690
+ <span class='name'>header</span>
691
+
692
+
693
+ <span class='type'>(<tt>Hash</tt>)</span>
694
+
695
+
696
+ <em class="default">(defaults to: <tt>{}</tt>)</em>
697
+
698
+
699
+ &mdash;
700
+ <div class='inline'><p>The headers to return.</p>
701
+ </div>
702
+
703
+ </li>
704
+
705
+ <li>
706
+
707
+ <span class='name'>&amp;blk</span>
708
+
709
+
710
+ <span class='type'>(<tt>Proc</tt>)</span>
711
+
712
+
713
+
714
+ &mdash;
715
+ <div class='inline'><p>The response options to specify</p>
716
+ </div>
717
+
718
+ </li>
719
+
720
+ </ul>
721
+
722
+
723
+ </div><table class="source_code">
724
+ <tr>
725
+ <td>
726
+ <pre class="lines">
727
+
728
+
729
+ 44
730
+ 45
731
+ 46
732
+ 47
733
+ 48</pre>
734
+ </td>
735
+ <td>
736
+ <pre class="code"><span class="info file"># File 'lib/renee/core/responding.rb', line 44</span>
737
+
738
+ <span class='kw'>def</span> <span class='id identifier rubyid_respond'>respond</span><span class='lparen'>(</span><span class='id identifier rubyid_body'>body</span><span class='op'>=</span><span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_status'>status</span><span class='op'>=</span><span class='int'>200</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_blk'>blk</span><span class='rparen'>)</span>
739
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='const'>Renee</span><span class='op'>::</span><span class='const'>Core</span><span class='op'>::</span><span class='const'>Response</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_body'>body</span><span class='comma'>,</span> <span class='id identifier rubyid_status'>status</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span>
740
+ <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_instance_eval'>instance_eval</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_blk'>blk</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
741
+ <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_finish'>finish</span>
742
+ <span class='kw'>end</span></pre>
743
+ </td>
744
+ </tr>
745
+ </table>
746
+ </div>
747
+
748
+ <div class="method_details ">
749
+ <p class="signature " id="respond!-instance_method">
750
+
751
+ - (<tt>Object</tt>) <strong>respond!</strong>(*args, &amp;blk)
752
+
753
+
754
+
755
+ </p><div class="docstring">
756
+ <div class="discussion">
757
+ <p>Creates a response by allowing the response header, body and status to be passed into the block.</p>
758
+
759
+
760
+ </div>
761
+ </div>
762
+ <div class="tags">
763
+
764
+ <div class="examples">
765
+ <h3>Examples:</h3>
766
+
767
+ <h4><div class='inline'>
768
+ </div></h4>
769
+ <pre class="example code"><span class='id identifier rubyid_respond!'>respond!</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_status'>status</span> <span class='int'>200</span><span class='semicolon'>;</span> <span class='id identifier rubyid_body'>body</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Yay!</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span></pre>
770
+
771
+ </div>
772
+ <h3>Parameters:</h3>
773
+ <ul class="param">
774
+
775
+ <li>
776
+
777
+ <span class='name'>body</span>
778
+
779
+
780
+ <span class='type'>(<tt>Array</tt>)</span>
781
+
782
+
783
+
784
+ &mdash;
785
+ <div class='inline'><p>The contents to return.</p>
786
+ </div>
787
+
788
+ </li>
789
+
790
+ <li>
791
+
792
+ <span class='name'>status</span>
793
+
794
+
795
+ <span class='type'>(<tt>Integer</tt>)</span>
796
+
797
+
798
+
799
+ &mdash;
800
+ <div class='inline'><p>The status code to return.</p>
801
+ </div>
802
+
803
+ </li>
804
+
805
+ <li>
806
+
807
+ <span class='name'>header</span>
808
+
809
+
810
+ <span class='type'>(<tt>Hash</tt>)</span>
811
+
812
+
813
+
814
+ &mdash;
815
+ <div class='inline'><p>The headers to return.</p>
816
+ </div>
817
+
818
+ </li>
819
+
820
+ <li>
821
+
822
+ <span class='name'>&amp;blk</span>
823
+
824
+
825
+ <span class='type'>(<tt>Proc</tt>)</span>
826
+
827
+
828
+
829
+ &mdash;
830
+ <div class='inline'><p>The response options to specify</p>
831
+ </div>
832
+
833
+ </li>
834
+
835
+ </ul>
836
+
837
+
838
+ <h3>See Also:</h3>
839
+ <ul class="see">
840
+
841
+ <li><span class='object_link'><a href="#respond-instance_method" title="Renee::Core::Responding#respond (method)">#respond</a></span></li>
842
+
843
+ </ul>
844
+
845
+ </div><table class="source_code">
846
+ <tr>
847
+ <td>
848
+ <pre class="lines">
849
+
850
+
851
+ 58
852
+ 59
853
+ 60</pre>
854
+ </td>
855
+ <td>
856
+ <pre class="code"><span class="info file"># File 'lib/renee/core/responding.rb', line 58</span>
857
+
858
+ <span class='kw'>def</span> <span class='id identifier rubyid_respond!'>respond!</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_blk'>blk</span><span class='rparen'>)</span>
859
+ <span class='id identifier rubyid_halt'>halt</span> <span class='id identifier rubyid_respond'>respond</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_blk'>blk</span><span class='rparen'>)</span>
860
+ <span class='kw'>end</span></pre>
861
+ </td>
862
+ </tr>
863
+ </table>
864
+ </div>
865
+
866
+ </div>
867
+
868
+ </div>
869
+
870
+ <div id="footer">
871
+ Generated on Mon Jan 23 11:10:31 2012 by
872
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
873
+ 0.7.4 (ruby-1.9.2).
874
+ </div>
875
+
876
+ </body>
877
+ </html>