hobix 0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/COPYING +18 -0
- data/README +18 -0
- data/Rakefile +96 -0
- data/bin/hobix +94 -0
- data/contrib/blosxom-to-hobix.rb +253 -0
- data/contrib/txp-to-hobix.rb +56 -0
- data/contrib/webrick-all-mine.rb +20 -0
- data/doc/CHANGELOG +285 -0
- data/doc/rdoc/classes/Hobix/API.html +382 -0
- data/doc/rdoc/classes/Hobix/Article.html +111 -0
- data/doc/rdoc/classes/Hobix/BaseContent.html +692 -0
- data/doc/rdoc/classes/Hobix/BaseEntry.html +218 -0
- data/doc/rdoc/classes/Hobix/BaseFacet.html +205 -0
- data/doc/rdoc/classes/Hobix/BaseOutput.html +122 -0
- data/doc/rdoc/classes/Hobix/BasePlugin.html +201 -0
- data/doc/rdoc/classes/Hobix/BaseProperties/ClassMethods.html +243 -0
- data/doc/rdoc/classes/Hobix/BaseProperties.html +218 -0
- data/doc/rdoc/classes/Hobix/BasePublish.html +157 -0
- data/doc/rdoc/classes/Hobix/BaseStorage.html +417 -0
- data/doc/rdoc/classes/Hobix/BixWik/Entry.html +196 -0
- data/doc/rdoc/classes/Hobix/BixWik/IndexEntry.html +170 -0
- data/doc/rdoc/classes/Hobix/BixWik/WikiRedCloth.html +111 -0
- data/doc/rdoc/classes/Hobix/BixWik.html +418 -0
- data/doc/rdoc/classes/Hobix/BixWikPlugin.html +158 -0
- data/doc/rdoc/classes/Hobix/CommandLine.html +1970 -0
- data/doc/rdoc/classes/Hobix/Comment.html +113 -0
- data/doc/rdoc/classes/Hobix/Config.html +212 -0
- data/doc/rdoc/classes/Hobix/DataMarsh.html +667 -0
- data/doc/rdoc/classes/Hobix/Entry.html +178 -0
- data/doc/rdoc/classes/Hobix/EntryEnum.html +162 -0
- data/doc/rdoc/classes/Hobix/Enumerable.html +170 -0
- data/doc/rdoc/classes/Hobix/Facets/WikiEdit.html +180 -0
- data/doc/rdoc/classes/Hobix/Facets.html +111 -0
- data/doc/rdoc/classes/Hobix/LinkList.html +182 -0
- data/doc/rdoc/classes/Hobix/Out/Quick.html +412 -0
- data/doc/rdoc/classes/Hobix/Out.html +119 -0
- data/doc/rdoc/classes/Hobix/Page.html +381 -0
- data/doc/rdoc/classes/Hobix/Trackback.html +113 -0
- data/doc/rdoc/classes/Hobix/UriStr.html +198 -0
- data/doc/rdoc/classes/Hobix/WebApp/QueryString.html +207 -0
- data/doc/rdoc/classes/Hobix/WebApp/QueryValidationFailure.html +111 -0
- data/doc/rdoc/classes/Hobix/WebApp.html +1383 -0
- data/doc/rdoc/classes/Hobix/Weblog/AuthorNotFound.html +111 -0
- data/doc/rdoc/classes/Hobix/Weblog.html +2082 -0
- data/doc/rdoc/classes/Hobix.html +399 -0
- data/doc/rdoc/classes/Kernel.html +139 -0
- data/doc/rdoc/classes/Regexp.html +154 -0
- data/doc/rdoc/classes/YAML/Omap.html +144 -0
- data/doc/rdoc/classes/YAML.html +111 -0
- data/doc/rdoc/created.rid +1 -0
- data/doc/rdoc/files/COPYING.html +129 -0
- data/doc/rdoc/files/README.html +131 -0
- data/doc/rdoc/files/doc/CHANGELOG.html +101 -0
- data/doc/rdoc/files/lib/hobix/api_rb.html +119 -0
- data/doc/rdoc/files/lib/hobix/article_rb.html +126 -0
- data/doc/rdoc/files/lib/hobix/base_rb.html +128 -0
- data/doc/rdoc/files/lib/hobix/bixwik_rb.html +126 -0
- data/doc/rdoc/files/lib/hobix/commandline_rb.html +140 -0
- data/doc/rdoc/files/lib/hobix/comments_rb.html +126 -0
- data/doc/rdoc/files/lib/hobix/config_rb.html +125 -0
- data/doc/rdoc/files/lib/hobix/datamarsh_rb.html +108 -0
- data/doc/rdoc/files/lib/hobix/entry_rb.html +118 -0
- data/doc/rdoc/files/lib/hobix/linklist_rb.html +127 -0
- data/doc/rdoc/files/lib/hobix/publisher_rb.html +126 -0
- data/doc/rdoc/files/lib/hobix/trackbacks_rb.html +128 -0
- data/doc/rdoc/files/lib/hobix/webapp_rb.html +127 -0
- data/doc/rdoc/files/lib/hobix/weblog_rb.html +135 -0
- data/doc/rdoc/files/lib/hobix_rb.html +127 -0
- data/doc/rdoc/fr_class_index.html +67 -0
- data/doc/rdoc/fr_file_index.html +44 -0
- data/doc/rdoc/fr_method_index.html +307 -0
- data/doc/rdoc/index.html +24 -0
- data/doc/rdoc/rdoc-style.css +208 -0
- data/git_hobix_update.php +13 -0
- data/lib/hobix/api.rb +91 -0
- data/lib/hobix/article.rb +22 -0
- data/lib/hobix/base.rb +480 -0
- data/lib/hobix/bixwik.rb +200 -0
- data/lib/hobix/commandline.rb +677 -0
- data/lib/hobix/comments.rb +98 -0
- data/lib/hobix/config.rb +39 -0
- data/lib/hobix/datamarsh.rb +110 -0
- data/lib/hobix/entry.rb +84 -0
- data/lib/hobix/facets/comments.rb +99 -0
- data/lib/hobix/facets/publisher.rb +314 -0
- data/lib/hobix/facets/trackbacks.rb +80 -0
- data/lib/hobix/linklist.rb +81 -0
- data/lib/hobix/out/atom.rb +101 -0
- data/lib/hobix/out/erb.rb +64 -0
- data/lib/hobix/out/okaynews.rb +55 -0
- data/lib/hobix/out/quick.rb +314 -0
- data/lib/hobix/out/rdf.rb +97 -0
- data/lib/hobix/out/redrum.rb +26 -0
- data/lib/hobix/out/rss.rb +128 -0
- data/lib/hobix/plugin/akismet.rb +196 -0
- data/lib/hobix/plugin/bloglines.rb +73 -0
- data/lib/hobix/plugin/calendar.rb +212 -0
- data/lib/hobix/plugin/flickr.rb +110 -0
- data/lib/hobix/plugin/recent_comments.rb +84 -0
- data/lib/hobix/plugin/sections.rb +91 -0
- data/lib/hobix/plugin/tags.rb +60 -0
- data/lib/hobix/publish/ping.rb +53 -0
- data/lib/hobix/publish/replicate.rb +283 -0
- data/lib/hobix/publisher.rb +18 -0
- data/lib/hobix/search/dictionary.rb +141 -0
- data/lib/hobix/search/porter_stemmer.rb +203 -0
- data/lib/hobix/search/simple.rb +209 -0
- data/lib/hobix/search/vector.rb +100 -0
- data/lib/hobix/storage/filesys.rb +408 -0
- data/lib/hobix/trackbacks.rb +93 -0
- data/lib/hobix/util/objedit.rb +193 -0
- data/lib/hobix/util/patcher.rb +155 -0
- data/lib/hobix/webapp/cli.rb +195 -0
- data/lib/hobix/webapp/htmlform.rb +107 -0
- data/lib/hobix/webapp/message.rb +177 -0
- data/lib/hobix/webapp/urigen.rb +141 -0
- data/lib/hobix/webapp/webrick-servlet.rb +90 -0
- data/lib/hobix/webapp.rb +723 -0
- data/lib/hobix/weblog.rb +893 -0
- data/lib/hobix.rb +230 -0
- data/share/default-blog/hobix.yaml +16 -0
- data/share/default-blog/htdocs/site.css +174 -0
- data/share/default-blog/skel/entry.html.quick +0 -0
- data/share/default-blog/skel/index.atom.atom +0 -0
- data/share/default-blog/skel/index.html.quick-summary +0 -0
- data/share/default-blog/skel/index.xml.rss +0 -0
- data/share/default-blog/skel/index.yaml.okaynews +0 -0
- data/share/default-blog/skel/monthly.html.quick-archive +0 -0
- data/share/default-blog/skel/section.html.quick-archive +0 -0
- data/share/default-blog/skel/yearly.html.quick-archive +0 -0
- data/share/default-blog-modes.yaml +7 -0
- data/share/default-blog.apache-cgi.patch +8 -0
- data/share/default-blog.apache-ssi.patch +38 -0
- data/share/default-blog.apache2-ssi.patch +3 -0
- data/share/default-blog.cgi.patch +8 -0
- data/share/default-blog.comments.patch +5 -0
- data/share/default-blog.prototype.patch +766 -0
- data/share/default-blog.publisher.patch +5 -0
- data/share/default-blog.wiki.patch +29 -0
- data/share/publisher/css/control.css +90 -0
- data/share/publisher/css/form.css +238 -0
- data/share/publisher/css/form.import.css +72 -0
- data/share/publisher/css/main-menu.css +134 -0
- data/share/publisher/i/hobix-emblazen-1.png +0 -0
- data/share/publisher/i/hobix-emblazen-2.png +0 -0
- data/share/publisher/i/hobix-emblazen-3.png +0 -0
- data/share/publisher/i/hobix-emblazen-4.png +0 -0
- data/share/publisher/i/hobix-emblazen-5.png +0 -0
- data/share/publisher/i/hobix-emblazen-6.png +0 -0
- data/share/publisher/i/hobix-emblazen-7.png +0 -0
- data/share/publisher/index.erb +66 -0
- data/share/publisher/js/controls.js +261 -0
- data/share/publisher/js/dragdrop.js +476 -0
- data/share/publisher/js/effects.js +570 -0
- data/share/publisher/js/prototype.js +1011 -0
- metadata +230 -0
|
@@ -0,0 +1,1383 @@
|
|
|
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
|
+
|
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
7
|
+
<head>
|
|
8
|
+
<title>Class: Hobix::WebApp</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
11
|
+
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
12
|
+
<script type="text/javascript">
|
|
13
|
+
// <![CDATA[
|
|
14
|
+
|
|
15
|
+
function popupCode( url ) {
|
|
16
|
+
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function toggleCode( id ) {
|
|
20
|
+
if ( document.getElementById )
|
|
21
|
+
elem = document.getElementById( id );
|
|
22
|
+
else if ( document.all )
|
|
23
|
+
elem = eval( "document.all." + id );
|
|
24
|
+
else
|
|
25
|
+
return false;
|
|
26
|
+
|
|
27
|
+
elemStyle = elem.style;
|
|
28
|
+
|
|
29
|
+
if ( elemStyle.display != "block" ) {
|
|
30
|
+
elemStyle.display = "block"
|
|
31
|
+
} else {
|
|
32
|
+
elemStyle.display = "none"
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Make codeblocks hidden by default
|
|
39
|
+
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
|
|
40
|
+
|
|
41
|
+
// ]]>
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
</head>
|
|
45
|
+
<body>
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
<div id="classHeader">
|
|
50
|
+
<table class="header-table">
|
|
51
|
+
<tr class="top-aligned-row">
|
|
52
|
+
<td><strong>Class</strong></td>
|
|
53
|
+
<td class="class-name-in-header">Hobix::WebApp</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../../files/lib/hobix/webapp_rb.html">
|
|
59
|
+
lib/hobix/webapp.rb
|
|
60
|
+
</a>
|
|
61
|
+
<br />
|
|
62
|
+
</td>
|
|
63
|
+
</tr>
|
|
64
|
+
|
|
65
|
+
<tr class="top-aligned-row">
|
|
66
|
+
<td><strong>Parent:</strong></td>
|
|
67
|
+
<td>
|
|
68
|
+
Object
|
|
69
|
+
</td>
|
|
70
|
+
</tr>
|
|
71
|
+
</table>
|
|
72
|
+
</div>
|
|
73
|
+
<!-- banner header -->
|
|
74
|
+
|
|
75
|
+
<div id="bodyContent">
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
<div id="contextContent">
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
</div>
|
|
84
|
+
|
|
85
|
+
<div id="method-list">
|
|
86
|
+
<h3 class="section-bar">Methods</h3>
|
|
87
|
+
|
|
88
|
+
<div class="name-list">
|
|
89
|
+
<a href="#M000138"><<</a>
|
|
90
|
+
<a href="#M000158">_GET</a>
|
|
91
|
+
<a href="#M000159">_POST</a>
|
|
92
|
+
<a href="#M000178">absuri</a>
|
|
93
|
+
<a href="#M000157">action_uri</a>
|
|
94
|
+
<a href="#M000161">add_header</a>
|
|
95
|
+
<a href="#M000174">check_last_modified</a>
|
|
96
|
+
<a href="#M000163">clear_header</a>
|
|
97
|
+
<a href="#M000168">content_type</a>
|
|
98
|
+
<a href="#M000167">content_type=</a>
|
|
99
|
+
<a href="#M000166">each_header</a>
|
|
100
|
+
<a href="#M000144">each_request_header</a>
|
|
101
|
+
<a href="#M000165">get_header</a>
|
|
102
|
+
<a href="#M000145">get_request_header</a>
|
|
103
|
+
<a href="#M000164">has_header?</a>
|
|
104
|
+
<a href="#M000177">make_absolute_uri</a>
|
|
105
|
+
<a href="#M000175">make_relative_uri</a>
|
|
106
|
+
<a href="#M000170">open_resource</a>
|
|
107
|
+
<a href="#M000151">path_info</a>
|
|
108
|
+
<a href="#M000139">print</a>
|
|
109
|
+
<a href="#M000140">printf</a>
|
|
110
|
+
<a href="#M000141">putc</a>
|
|
111
|
+
<a href="#M000142">puts</a>
|
|
112
|
+
<a href="#M000180">query_html_get_application_x_www_form_urlencoded</a>
|
|
113
|
+
<a href="#M000181">query_html_post_application_x_www_form_urlencoded</a>
|
|
114
|
+
<a href="#M000152">query_string</a>
|
|
115
|
+
<a href="#M000176">reluri</a>
|
|
116
|
+
<a href="#M000154">remote_addr</a>
|
|
117
|
+
<a href="#M000162">remove_header</a>
|
|
118
|
+
<a href="#M000147">request_body</a>
|
|
119
|
+
<a href="#M000155">request_content_type</a>
|
|
120
|
+
<a href="#M000146">request_method</a>
|
|
121
|
+
<a href="#M000156">request_uri</a>
|
|
122
|
+
<a href="#M000169">resource_path</a>
|
|
123
|
+
<a href="#M000150">script_name</a>
|
|
124
|
+
<a href="#M000172">send_not_found</a>
|
|
125
|
+
<a href="#M000171">send_resource</a>
|
|
126
|
+
<a href="#M000173">send_unauthorized</a>
|
|
127
|
+
<a href="#M000148">server_name</a>
|
|
128
|
+
<a href="#M000149">server_port</a>
|
|
129
|
+
<a href="#M000153">server_protocol</a>
|
|
130
|
+
<a href="#M000160">set_header</a>
|
|
131
|
+
<a href="#M000179">setup_redirection</a>
|
|
132
|
+
<a href="#M000143">write</a>
|
|
133
|
+
</div>
|
|
134
|
+
</div>
|
|
135
|
+
|
|
136
|
+
</div>
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
<!-- if includes -->
|
|
140
|
+
|
|
141
|
+
<div id="section">
|
|
142
|
+
|
|
143
|
+
<div id="class-list">
|
|
144
|
+
<h3 class="section-bar">Classes and Modules</h3>
|
|
145
|
+
|
|
146
|
+
Class <a href="WebApp/QueryString.html" class="link">Hobix::WebApp::QueryString</a><br />
|
|
147
|
+
Class <a href="WebApp/QueryValidationFailure.html" class="link">Hobix::WebApp::QueryValidationFailure</a><br />
|
|
148
|
+
|
|
149
|
+
</div>
|
|
150
|
+
|
|
151
|
+
<div id="constants-list">
|
|
152
|
+
<h3 class="section-bar">Constants</h3>
|
|
153
|
+
|
|
154
|
+
<div class="name-list">
|
|
155
|
+
<table summary="Constants">
|
|
156
|
+
<tr class="top-aligned-row context-row">
|
|
157
|
+
<td class="context-item-name">NameChar</td>
|
|
158
|
+
<td>=</td>
|
|
159
|
+
<td class="context-item-value">/[-A-Za-z0-9._:]/</td>
|
|
160
|
+
</tr>
|
|
161
|
+
<tr class="top-aligned-row context-row">
|
|
162
|
+
<td class="context-item-name">NameExp</td>
|
|
163
|
+
<td>=</td>
|
|
164
|
+
<td class="context-item-value">/[A-Za-z_:]#{NameChar}*/</td>
|
|
165
|
+
</tr>
|
|
166
|
+
<tr class="top-aligned-row context-row">
|
|
167
|
+
<td class="context-item-name">XmlVersionNum</td>
|
|
168
|
+
<td>=</td>
|
|
169
|
+
<td class="context-item-value">/[a-zA-Z0-9_.:-]+/</td>
|
|
170
|
+
</tr>
|
|
171
|
+
<tr class="top-aligned-row context-row">
|
|
172
|
+
<td class="context-item-name">XmlVersionInfo_C</td>
|
|
173
|
+
<td>=</td>
|
|
174
|
+
<td class="context-item-value">/\s+version\s*=\s*(?:'(#{XmlVersionNum})'|"(#{XmlVersionNum})")/</td>
|
|
175
|
+
</tr>
|
|
176
|
+
<tr class="top-aligned-row context-row">
|
|
177
|
+
<td class="context-item-name">XmlVersionInfo</td>
|
|
178
|
+
<td>=</td>
|
|
179
|
+
<td class="context-item-value">XmlVersionInfo_C.disable_capture</td>
|
|
180
|
+
</tr>
|
|
181
|
+
<tr class="top-aligned-row context-row">
|
|
182
|
+
<td class="context-item-name">XmlEncName</td>
|
|
183
|
+
<td>=</td>
|
|
184
|
+
<td class="context-item-value">/[A-Za-z][A-Za-z0-9._-]*/</td>
|
|
185
|
+
</tr>
|
|
186
|
+
<tr class="top-aligned-row context-row">
|
|
187
|
+
<td class="context-item-name">XmlEncodingDecl_C</td>
|
|
188
|
+
<td>=</td>
|
|
189
|
+
<td class="context-item-value">/\s+encoding\s*=\s*(?:"(#{XmlEncName})"|'(#{XmlEncName})')/</td>
|
|
190
|
+
</tr>
|
|
191
|
+
<tr class="top-aligned-row context-row">
|
|
192
|
+
<td class="context-item-name">XmlEncodingDecl</td>
|
|
193
|
+
<td>=</td>
|
|
194
|
+
<td class="context-item-value">XmlEncodingDecl_C.disable_capture</td>
|
|
195
|
+
</tr>
|
|
196
|
+
<tr class="top-aligned-row context-row">
|
|
197
|
+
<td class="context-item-name">XmlSDDecl_C</td>
|
|
198
|
+
<td>=</td>
|
|
199
|
+
<td class="context-item-value">/\s+standalone\s*=\s*(?:'(yes|no)'|"(yes|no)")/</td>
|
|
200
|
+
</tr>
|
|
201
|
+
<tr class="top-aligned-row context-row">
|
|
202
|
+
<td class="context-item-name">XmlSDDecl</td>
|
|
203
|
+
<td>=</td>
|
|
204
|
+
<td class="context-item-value">XmlSDDecl_C.disable_capture</td>
|
|
205
|
+
</tr>
|
|
206
|
+
<tr class="top-aligned-row context-row">
|
|
207
|
+
<td class="context-item-name">XmlDecl_C</td>
|
|
208
|
+
<td>=</td>
|
|
209
|
+
<td class="context-item-value">/<\?xml#{XmlVersionInfo_C}#{XmlEncodingDecl_C}?#{XmlSDDecl_C}?\s*\?>/</td>
|
|
210
|
+
</tr>
|
|
211
|
+
<tr class="top-aligned-row context-row">
|
|
212
|
+
<td class="context-item-name">XmlDecl</td>
|
|
213
|
+
<td>=</td>
|
|
214
|
+
<td class="context-item-value">/<\?xml#{XmlVersionInfo}#{XmlEncodingDecl}?#{XmlSDDecl}?\s*\?>/</td>
|
|
215
|
+
</tr>
|
|
216
|
+
<tr class="top-aligned-row context-row">
|
|
217
|
+
<td class="context-item-name">SystemLiteral_C</td>
|
|
218
|
+
<td>=</td>
|
|
219
|
+
<td class="context-item-value">/"([^"]*)"|'([^']*)'/</td>
|
|
220
|
+
</tr>
|
|
221
|
+
<tr class="top-aligned-row context-row">
|
|
222
|
+
<td class="context-item-name">PubidLiteral_C</td>
|
|
223
|
+
<td>=</td>
|
|
224
|
+
<td class="context-item-value">%r{"([\sa-zA-Z0-9\-'()+,./:=?;!*\#@$_%]*)"|'([\sa-zA-Z0-9\-()+,./:=?;!*\#@$_%]*)'}</td>
|
|
225
|
+
</tr>
|
|
226
|
+
<tr class="top-aligned-row context-row">
|
|
227
|
+
<td class="context-item-name">ExternalID_C</td>
|
|
228
|
+
<td>=</td>
|
|
229
|
+
<td class="context-item-value">/(?:SYSTEM|PUBLIC\s+#{PubidLiteral_C})(?:\s+#{SystemLiteral_C})?/</td>
|
|
230
|
+
</tr>
|
|
231
|
+
<tr class="top-aligned-row context-row">
|
|
232
|
+
<td class="context-item-name">DocType_C</td>
|
|
233
|
+
<td>=</td>
|
|
234
|
+
<td class="context-item-value">/<!DOCTYPE\s+(#{NameExp})(?:\s+#{ExternalID_C})?\s*(?:\[.*?\]\s*)?>/m</td>
|
|
235
|
+
</tr>
|
|
236
|
+
<tr class="top-aligned-row context-row">
|
|
237
|
+
<td class="context-item-name">DocType</td>
|
|
238
|
+
<td>=</td>
|
|
239
|
+
<td class="context-item-value">DocType_C.disable_capture</td>
|
|
240
|
+
</tr>
|
|
241
|
+
<tr class="top-aligned-row context-row">
|
|
242
|
+
<td class="context-item-name">WebAPPDevelopHost</td>
|
|
243
|
+
<td>=</td>
|
|
244
|
+
<td class="context-item-value">ENV['WEBAPP_DEVELOP_HOST']</td>
|
|
245
|
+
</tr>
|
|
246
|
+
</table>
|
|
247
|
+
</div>
|
|
248
|
+
</div>
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
<!-- if method_list -->
|
|
256
|
+
<div id="methods">
|
|
257
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
258
|
+
|
|
259
|
+
<div id="method-M000138" class="method-detail">
|
|
260
|
+
<a name="M000138"></a>
|
|
261
|
+
|
|
262
|
+
<div class="method-heading">
|
|
263
|
+
<a href="#M000138" class="method-signature">
|
|
264
|
+
<span class="method-name"><<</span><span class="method-args">(str)</span>
|
|
265
|
+
</a>
|
|
266
|
+
</div>
|
|
267
|
+
|
|
268
|
+
<div class="method-description">
|
|
269
|
+
<p><a class="source-toggle" href="#"
|
|
270
|
+
onclick="toggleCode('M000138-source');return false;">[Source]</a></p>
|
|
271
|
+
<div class="method-source-code" id="M000138-source">
|
|
272
|
+
<pre>
|
|
273
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 69</span>
|
|
274
|
+
69: <span class="ruby-keyword kw">def</span> <span class="ruby-operator"><<</span>(<span class="ruby-identifier">str</span>) <span class="ruby-ivar">@response_body</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">str</span> <span class="ruby-keyword kw">end</span>
|
|
275
|
+
</pre>
|
|
276
|
+
</div>
|
|
277
|
+
</div>
|
|
278
|
+
</div>
|
|
279
|
+
|
|
280
|
+
<div id="method-M000158" class="method-detail">
|
|
281
|
+
<a name="M000158"></a>
|
|
282
|
+
|
|
283
|
+
<div class="method-heading">
|
|
284
|
+
<a href="#M000158" class="method-signature">
|
|
285
|
+
<span class="method-name">_GET</span><span class="method-args">()</span>
|
|
286
|
+
</a>
|
|
287
|
+
</div>
|
|
288
|
+
|
|
289
|
+
<div class="method-description">
|
|
290
|
+
<p><a class="source-toggle" href="#"
|
|
291
|
+
onclick="toggleCode('M000158-source');return false;">[Source]</a></p>
|
|
292
|
+
<div class="method-source-code" id="M000158-source">
|
|
293
|
+
<pre>
|
|
294
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 94</span>
|
|
295
|
+
94: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_GET</span>()
|
|
296
|
+
95: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@_get_vars</span>
|
|
297
|
+
96: <span class="ruby-ivar">@_get_vars</span> = {}
|
|
298
|
+
97: <span class="ruby-identifier">query_html_get_application_x_www_form_urlencoded</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>, <span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
|
|
299
|
+
98: <span class="ruby-identifier">v</span>.<span class="ruby-identifier">gsub!</span>( <span class="ruby-regexp re">/\r\n/</span>, <span class="ruby-value str">"\n"</span> ) <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">defined?</span> <span class="ruby-identifier">v</span>.<span class="ruby-identifier">gsub!</span>
|
|
300
|
+
99: <span class="ruby-ivar">@_get_vars</span>[<span class="ruby-identifier">k</span>] = <span class="ruby-identifier">v</span>
|
|
301
|
+
100: <span class="ruby-keyword kw">end</span>
|
|
302
|
+
101: <span class="ruby-keyword kw">end</span>
|
|
303
|
+
102: <span class="ruby-ivar">@_get_vars</span>
|
|
304
|
+
103: <span class="ruby-keyword kw">end</span>
|
|
305
|
+
</pre>
|
|
306
|
+
</div>
|
|
307
|
+
</div>
|
|
308
|
+
</div>
|
|
309
|
+
|
|
310
|
+
<div id="method-M000159" class="method-detail">
|
|
311
|
+
<a name="M000159"></a>
|
|
312
|
+
|
|
313
|
+
<div class="method-heading">
|
|
314
|
+
<a href="#M000159" class="method-signature">
|
|
315
|
+
<span class="method-name">_POST</span><span class="method-args">()</span>
|
|
316
|
+
</a>
|
|
317
|
+
</div>
|
|
318
|
+
|
|
319
|
+
<div class="method-description">
|
|
320
|
+
<p><a class="source-toggle" href="#"
|
|
321
|
+
onclick="toggleCode('M000159-source');return false;">[Source]</a></p>
|
|
322
|
+
<div class="method-source-code" id="M000159-source">
|
|
323
|
+
<pre>
|
|
324
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 105</span>
|
|
325
|
+
105: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_POST</span>()
|
|
326
|
+
106: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@_post_vars</span>
|
|
327
|
+
107: <span class="ruby-ivar">@_post_vars</span> = {}
|
|
328
|
+
108: <span class="ruby-identifier">query_html_post_application_x_www_form_urlencoded</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>, <span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
|
|
329
|
+
109: <span class="ruby-identifier">v</span>.<span class="ruby-identifier">gsub!</span>( <span class="ruby-regexp re">/\r\n/</span>, <span class="ruby-value str">"\n"</span> ) <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">defined?</span> <span class="ruby-identifier">v</span>.<span class="ruby-identifier">gsub!</span>
|
|
330
|
+
110: <span class="ruby-ivar">@_post_vars</span>[<span class="ruby-identifier">k</span>] = <span class="ruby-identifier">v</span>
|
|
331
|
+
111: <span class="ruby-keyword kw">end</span>
|
|
332
|
+
112: <span class="ruby-keyword kw">end</span>
|
|
333
|
+
113: <span class="ruby-ivar">@_post_vars</span>
|
|
334
|
+
114: <span class="ruby-keyword kw">end</span>
|
|
335
|
+
</pre>
|
|
336
|
+
</div>
|
|
337
|
+
</div>
|
|
338
|
+
</div>
|
|
339
|
+
|
|
340
|
+
<div id="method-M000178" class="method-detail">
|
|
341
|
+
<a name="M000178"></a>
|
|
342
|
+
|
|
343
|
+
<div class="method-heading">
|
|
344
|
+
<span class="method-name">absuri</span><span class="method-args">(hash={})</span>
|
|
345
|
+
</div>
|
|
346
|
+
|
|
347
|
+
<div class="method-description">
|
|
348
|
+
<p>
|
|
349
|
+
Alias for <a href="WebApp.html#M000177">make_absolute_uri</a>
|
|
350
|
+
</p>
|
|
351
|
+
</div>
|
|
352
|
+
</div>
|
|
353
|
+
|
|
354
|
+
<div id="method-M000157" class="method-detail">
|
|
355
|
+
<a name="M000157"></a>
|
|
356
|
+
|
|
357
|
+
<div class="method-heading">
|
|
358
|
+
<a href="#M000157" class="method-signature">
|
|
359
|
+
<span class="method-name">action_uri</span><span class="method-args">()</span>
|
|
360
|
+
</a>
|
|
361
|
+
</div>
|
|
362
|
+
|
|
363
|
+
<div class="method-description">
|
|
364
|
+
<p><a class="source-toggle" href="#"
|
|
365
|
+
onclick="toggleCode('M000157-source');return false;">[Source]</a></p>
|
|
366
|
+
<div class="method-source-code" id="M000157-source">
|
|
367
|
+
<pre>
|
|
368
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 92</span>
|
|
369
|
+
92: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">action_uri</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">action_uri</span> <span class="ruby-keyword kw">end</span>
|
|
370
|
+
</pre>
|
|
371
|
+
</div>
|
|
372
|
+
</div>
|
|
373
|
+
</div>
|
|
374
|
+
|
|
375
|
+
<div id="method-M000161" class="method-detail">
|
|
376
|
+
<a name="M000161"></a>
|
|
377
|
+
|
|
378
|
+
<div class="method-heading">
|
|
379
|
+
<a href="#M000161" class="method-signature">
|
|
380
|
+
<span class="method-name">add_header</span><span class="method-args">(field_name, field_body)</span>
|
|
381
|
+
</a>
|
|
382
|
+
</div>
|
|
383
|
+
|
|
384
|
+
<div class="method-description">
|
|
385
|
+
<p><a class="source-toggle" href="#"
|
|
386
|
+
onclick="toggleCode('M000161-source');return false;">[Source]</a></p>
|
|
387
|
+
<div class="method-source-code" id="M000161-source">
|
|
388
|
+
<pre>
|
|
389
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 117</span>
|
|
390
|
+
117: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_header</span>(<span class="ruby-identifier">field_name</span>, <span class="ruby-identifier">field_body</span>) <span class="ruby-ivar">@response_header</span>.<span class="ruby-identifier">add</span>(<span class="ruby-identifier">field_name</span>, <span class="ruby-identifier">field_body</span>) <span class="ruby-keyword kw">end</span>
|
|
391
|
+
</pre>
|
|
392
|
+
</div>
|
|
393
|
+
</div>
|
|
394
|
+
</div>
|
|
395
|
+
|
|
396
|
+
<div id="method-M000174" class="method-detail">
|
|
397
|
+
<a name="M000174"></a>
|
|
398
|
+
|
|
399
|
+
<div class="method-heading">
|
|
400
|
+
<a href="#M000174" class="method-signature">
|
|
401
|
+
<span class="method-name">check_last_modified</span><span class="method-args">(last_modified) {|| ...}</span>
|
|
402
|
+
</a>
|
|
403
|
+
</div>
|
|
404
|
+
|
|
405
|
+
<div class="method-description">
|
|
406
|
+
<p><a class="source-toggle" href="#"
|
|
407
|
+
onclick="toggleCode('M000174-source');return false;">[Source]</a></p>
|
|
408
|
+
<div class="method-source-code" id="M000174-source">
|
|
409
|
+
<pre>
|
|
410
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 211</span>
|
|
411
|
+
211: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">check_last_modified</span>(<span class="ruby-identifier">last_modified</span>)
|
|
412
|
+
212: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ims</span> = <span class="ruby-ivar">@request_header</span>[<span class="ruby-value str">'If-Modified-Since'</span>] <span class="ruby-keyword kw">and</span>
|
|
413
|
+
213: ((<span class="ruby-identifier">ims</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">httpdate</span>(<span class="ruby-identifier">ims</span>)) <span class="ruby-keyword kw">rescue</span> <span class="ruby-keyword kw">nil</span>) <span class="ruby-keyword kw">and</span>
|
|
414
|
+
214: <span class="ruby-identifier">last_modified</span> <span class="ruby-operator"><=</span> <span class="ruby-identifier">ims</span>
|
|
415
|
+
215: <span class="ruby-ivar">@response</span>.<span class="ruby-identifier">status_line</span> = <span class="ruby-value str">'304 Not Modified'</span>
|
|
416
|
+
216: <span class="ruby-keyword kw">return</span>
|
|
417
|
+
217: <span class="ruby-keyword kw">end</span>
|
|
418
|
+
218: <span class="ruby-ivar">@response_header</span>.<span class="ruby-identifier">set</span> <span class="ruby-value str">'Last-Modified'</span>, <span class="ruby-identifier">last_modified</span>.<span class="ruby-identifier">httpdate</span>
|
|
419
|
+
219: <span class="ruby-keyword kw">yield</span>
|
|
420
|
+
220: <span class="ruby-keyword kw">end</span>
|
|
421
|
+
</pre>
|
|
422
|
+
</div>
|
|
423
|
+
</div>
|
|
424
|
+
</div>
|
|
425
|
+
|
|
426
|
+
<div id="method-M000163" class="method-detail">
|
|
427
|
+
<a name="M000163"></a>
|
|
428
|
+
|
|
429
|
+
<div class="method-heading">
|
|
430
|
+
<a href="#M000163" class="method-signature">
|
|
431
|
+
<span class="method-name">clear_header</span><span class="method-args">()</span>
|
|
432
|
+
</a>
|
|
433
|
+
</div>
|
|
434
|
+
|
|
435
|
+
<div class="method-description">
|
|
436
|
+
<p><a class="source-toggle" href="#"
|
|
437
|
+
onclick="toggleCode('M000163-source');return false;">[Source]</a></p>
|
|
438
|
+
<div class="method-source-code" id="M000163-source">
|
|
439
|
+
<pre>
|
|
440
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 119</span>
|
|
441
|
+
119: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">clear_header</span>() <span class="ruby-ivar">@response_header</span>.<span class="ruby-identifier">clear</span> <span class="ruby-keyword kw">end</span>
|
|
442
|
+
</pre>
|
|
443
|
+
</div>
|
|
444
|
+
</div>
|
|
445
|
+
</div>
|
|
446
|
+
|
|
447
|
+
<div id="method-M000168" class="method-detail">
|
|
448
|
+
<a name="M000168"></a>
|
|
449
|
+
|
|
450
|
+
<div class="method-heading">
|
|
451
|
+
<a href="#M000168" class="method-signature">
|
|
452
|
+
<span class="method-name">content_type</span><span class="method-args">()</span>
|
|
453
|
+
</a>
|
|
454
|
+
</div>
|
|
455
|
+
|
|
456
|
+
<div class="method-description">
|
|
457
|
+
<p><a class="source-toggle" href="#"
|
|
458
|
+
onclick="toggleCode('M000168-source');return false;">[Source]</a></p>
|
|
459
|
+
<div class="method-source-code" id="M000168-source">
|
|
460
|
+
<pre>
|
|
461
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 129</span>
|
|
462
|
+
129: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">content_type</span>
|
|
463
|
+
130: <span class="ruby-ivar">@response_header</span>[<span class="ruby-value str">'Content-Type'</span>]
|
|
464
|
+
131: <span class="ruby-keyword kw">end</span>
|
|
465
|
+
</pre>
|
|
466
|
+
</div>
|
|
467
|
+
</div>
|
|
468
|
+
</div>
|
|
469
|
+
|
|
470
|
+
<div id="method-M000167" class="method-detail">
|
|
471
|
+
<a name="M000167"></a>
|
|
472
|
+
|
|
473
|
+
<div class="method-heading">
|
|
474
|
+
<a href="#M000167" class="method-signature">
|
|
475
|
+
<span class="method-name">content_type=</span><span class="method-args">(media_type)</span>
|
|
476
|
+
</a>
|
|
477
|
+
</div>
|
|
478
|
+
|
|
479
|
+
<div class="method-description">
|
|
480
|
+
<p><a class="source-toggle" href="#"
|
|
481
|
+
onclick="toggleCode('M000167-source');return false;">[Source]</a></p>
|
|
482
|
+
<div class="method-source-code" id="M000167-source">
|
|
483
|
+
<pre>
|
|
484
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 126</span>
|
|
485
|
+
126: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">content_type=</span>(<span class="ruby-identifier">media_type</span>)
|
|
486
|
+
127: <span class="ruby-ivar">@response_header</span>.<span class="ruby-identifier">set</span> <span class="ruby-value str">'Content-Type'</span>, <span class="ruby-identifier">media_type</span>
|
|
487
|
+
128: <span class="ruby-keyword kw">end</span>
|
|
488
|
+
</pre>
|
|
489
|
+
</div>
|
|
490
|
+
</div>
|
|
491
|
+
</div>
|
|
492
|
+
|
|
493
|
+
<div id="method-M000166" class="method-detail">
|
|
494
|
+
<a name="M000166"></a>
|
|
495
|
+
|
|
496
|
+
<div class="method-heading">
|
|
497
|
+
<a href="#M000166" class="method-signature">
|
|
498
|
+
<span class="method-name">each_header</span><span class="method-args">() {|field_name, field_body| ...}</span>
|
|
499
|
+
</a>
|
|
500
|
+
</div>
|
|
501
|
+
|
|
502
|
+
<div class="method-description">
|
|
503
|
+
<p><a class="source-toggle" href="#"
|
|
504
|
+
onclick="toggleCode('M000166-source');return false;">[Source]</a></p>
|
|
505
|
+
<div class="method-source-code" id="M000166-source">
|
|
506
|
+
<pre>
|
|
507
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 122</span>
|
|
508
|
+
122: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">each_header</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>) <span class="ruby-comment cmt"># :yields: field_name, field_body</span>
|
|
509
|
+
123: <span class="ruby-ivar">@response_header</span>.<span class="ruby-identifier">each</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
|
510
|
+
124: <span class="ruby-keyword kw">end</span>
|
|
511
|
+
</pre>
|
|
512
|
+
</div>
|
|
513
|
+
</div>
|
|
514
|
+
</div>
|
|
515
|
+
|
|
516
|
+
<div id="method-M000144" class="method-detail">
|
|
517
|
+
<a name="M000144"></a>
|
|
518
|
+
|
|
519
|
+
<div class="method-heading">
|
|
520
|
+
<a href="#M000144" class="method-signature">
|
|
521
|
+
<span class="method-name">each_request_header</span><span class="method-args">() {|field_name, field_body| ...}</span>
|
|
522
|
+
</a>
|
|
523
|
+
</div>
|
|
524
|
+
|
|
525
|
+
<div class="method-description">
|
|
526
|
+
<p><a class="source-toggle" href="#"
|
|
527
|
+
onclick="toggleCode('M000144-source');return false;">[Source]</a></p>
|
|
528
|
+
<div class="method-source-code" id="M000144-source">
|
|
529
|
+
<pre>
|
|
530
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 76</span>
|
|
531
|
+
76: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">each_request_header</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>) <span class="ruby-comment cmt"># :yields: field_name, field_body</span>
|
|
532
|
+
77: <span class="ruby-ivar">@request_header</span>.<span class="ruby-identifier">each</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
|
533
|
+
78: <span class="ruby-keyword kw">end</span>
|
|
534
|
+
</pre>
|
|
535
|
+
</div>
|
|
536
|
+
</div>
|
|
537
|
+
</div>
|
|
538
|
+
|
|
539
|
+
<div id="method-M000165" class="method-detail">
|
|
540
|
+
<a name="M000165"></a>
|
|
541
|
+
|
|
542
|
+
<div class="method-heading">
|
|
543
|
+
<a href="#M000165" class="method-signature">
|
|
544
|
+
<span class="method-name">get_header</span><span class="method-args">(field_name)</span>
|
|
545
|
+
</a>
|
|
546
|
+
</div>
|
|
547
|
+
|
|
548
|
+
<div class="method-description">
|
|
549
|
+
<p><a class="source-toggle" href="#"
|
|
550
|
+
onclick="toggleCode('M000165-source');return false;">[Source]</a></p>
|
|
551
|
+
<div class="method-source-code" id="M000165-source">
|
|
552
|
+
<pre>
|
|
553
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 121</span>
|
|
554
|
+
121: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_header</span>(<span class="ruby-identifier">field_name</span>) <span class="ruby-ivar">@response_header</span>[<span class="ruby-identifier">field_name</span>] <span class="ruby-keyword kw">end</span>
|
|
555
|
+
</pre>
|
|
556
|
+
</div>
|
|
557
|
+
</div>
|
|
558
|
+
</div>
|
|
559
|
+
|
|
560
|
+
<div id="method-M000145" class="method-detail">
|
|
561
|
+
<a name="M000145"></a>
|
|
562
|
+
|
|
563
|
+
<div class="method-heading">
|
|
564
|
+
<a href="#M000145" class="method-signature">
|
|
565
|
+
<span class="method-name">get_request_header</span><span class="method-args">(field_name)</span>
|
|
566
|
+
</a>
|
|
567
|
+
</div>
|
|
568
|
+
|
|
569
|
+
<div class="method-description">
|
|
570
|
+
<p><a class="source-toggle" href="#"
|
|
571
|
+
onclick="toggleCode('M000145-source');return false;">[Source]</a></p>
|
|
572
|
+
<div class="method-source-code" id="M000145-source">
|
|
573
|
+
<pre>
|
|
574
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 79</span>
|
|
575
|
+
79: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_request_header</span>(<span class="ruby-identifier">field_name</span>) <span class="ruby-ivar">@request_header</span>[<span class="ruby-identifier">field_name</span>] <span class="ruby-keyword kw">end</span>
|
|
576
|
+
</pre>
|
|
577
|
+
</div>
|
|
578
|
+
</div>
|
|
579
|
+
</div>
|
|
580
|
+
|
|
581
|
+
<div id="method-M000164" class="method-detail">
|
|
582
|
+
<a name="M000164"></a>
|
|
583
|
+
|
|
584
|
+
<div class="method-heading">
|
|
585
|
+
<a href="#M000164" class="method-signature">
|
|
586
|
+
<span class="method-name">has_header?</span><span class="method-args">(field_name)</span>
|
|
587
|
+
</a>
|
|
588
|
+
</div>
|
|
589
|
+
|
|
590
|
+
<div class="method-description">
|
|
591
|
+
<p><a class="source-toggle" href="#"
|
|
592
|
+
onclick="toggleCode('M000164-source');return false;">[Source]</a></p>
|
|
593
|
+
<div class="method-source-code" id="M000164-source">
|
|
594
|
+
<pre>
|
|
595
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 120</span>
|
|
596
|
+
120: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">has_header?</span>(<span class="ruby-identifier">field_name</span>) <span class="ruby-ivar">@response_header</span>.<span class="ruby-identifier">has?</span>(<span class="ruby-identifier">field_name</span>) <span class="ruby-keyword kw">end</span>
|
|
597
|
+
</pre>
|
|
598
|
+
</div>
|
|
599
|
+
</div>
|
|
600
|
+
</div>
|
|
601
|
+
|
|
602
|
+
<div id="method-M000177" class="method-detail">
|
|
603
|
+
<a name="M000177"></a>
|
|
604
|
+
|
|
605
|
+
<div class="method-heading">
|
|
606
|
+
<a href="#M000177" class="method-signature">
|
|
607
|
+
<span class="method-name">make_absolute_uri(:script=>string, :path_info=>string, :query=>query, :fragment=>string) → URI<br />
|
|
608
|
+
</span>
|
|
609
|
+
</a>
|
|
610
|
+
</div>
|
|
611
|
+
|
|
612
|
+
<div class="method-description">
|
|
613
|
+
<p>
|
|
614
|
+
<a href="WebApp.html#M000177">make_absolute_uri</a> returns a absolute URI
|
|
615
|
+
which base URI is the URI of the web application is invoked.
|
|
616
|
+
</p>
|
|
617
|
+
<p>
|
|
618
|
+
The argument is same as <a
|
|
619
|
+
href="WebApp.html#M000175">make_relative_uri</a>.
|
|
620
|
+
</p>
|
|
621
|
+
<p><a class="source-toggle" href="#"
|
|
622
|
+
onclick="toggleCode('M000177-source');return false;">[Source]</a></p>
|
|
623
|
+
<div class="method-source-code" id="M000177-source">
|
|
624
|
+
<pre>
|
|
625
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 274</span>
|
|
626
|
+
274: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">make_absolute_uri</span>(<span class="ruby-identifier">hash</span>={})
|
|
627
|
+
275: <span class="ruby-ivar">@urigen</span>.<span class="ruby-identifier">make_absolute_uri</span>(<span class="ruby-identifier">hash</span>)
|
|
628
|
+
276: <span class="ruby-keyword kw">end</span>
|
|
629
|
+
</pre>
|
|
630
|
+
</div>
|
|
631
|
+
</div>
|
|
632
|
+
</div>
|
|
633
|
+
|
|
634
|
+
<div id="method-M000175" class="method-detail">
|
|
635
|
+
<a name="M000175"></a>
|
|
636
|
+
|
|
637
|
+
<div class="method-heading">
|
|
638
|
+
<a href="#M000175" class="method-signature">
|
|
639
|
+
<span class="method-name">reluri(:script=>string, :path_info=>string, :query=>query, :fragment=>string) → URI<br />
|
|
640
|
+
make_relative_uri(:script=>string, :path_info=>string, :query=>query, :fragment=>string) → URI<br />
|
|
641
|
+
</span>
|
|
642
|
+
</a>
|
|
643
|
+
</div>
|
|
644
|
+
|
|
645
|
+
<div class="method-description">
|
|
646
|
+
<pre>
|
|
647
|
+
make_relative_uri returns a relative URI which base URI is the URI the
|
|
648
|
+
web application is invoked.
|
|
649
|
+
|
|
650
|
+
The argument should be a hash which may have following components.
|
|
651
|
+
- :script specifies script_name relative from the directory containing
|
|
652
|
+
the web application script.
|
|
653
|
+
If it is not specified, the web application itself is assumed.
|
|
654
|
+
- :path_info specifies path_info component for calling web application.
|
|
655
|
+
It should begin with a slash.
|
|
656
|
+
If it is not specified, "" is assumed.
|
|
657
|
+
- :query specifies query a component.
|
|
658
|
+
It should be a Hash or a WebApp::QueryString.
|
|
659
|
+
- :fragment specifies a fragment identifier.
|
|
660
|
+
If it is not specified, a fragment identifier is not appended to
|
|
661
|
+
the result URL.
|
|
662
|
+
|
|
663
|
+
Since the method escapes the components properly,
|
|
664
|
+
you should specify them in unescaped form.
|
|
665
|
+
|
|
666
|
+
In the example follow, assume that the web application bar.cgi is invoked
|
|
667
|
+
as http://host/foo/bar.cgi/baz/qux.
|
|
668
|
+
|
|
669
|
+
webapp.reluri(:path_info=>"/hoge") => URI("../hoge")
|
|
670
|
+
webapp.reluri(:path_info=>"/baz/fuga") => URI("fuga")
|
|
671
|
+
webapp.reluri(:path_info=>"/baz/") => URI("./")
|
|
672
|
+
webapp.reluri(:path_info=>"/") => URI("../")
|
|
673
|
+
webapp.reluri() => URI("../../bar.cgi")
|
|
674
|
+
webapp.reluri(:script=>"funyo.cgi") => URI("../../funyo.cgi")
|
|
675
|
+
webapp.reluri(:script=>"punyo/gunyo.cgi") => URI("../../punyo/gunyo.cgi")
|
|
676
|
+
webapp.reluri(:script=>"../genyo.cgi") => URI("../../../genyo.cgi")
|
|
677
|
+
webapp.reluri(:fragment=>"sec1") => URI("../../bar.cgi#sec1")
|
|
678
|
+
</pre>
|
|
679
|
+
<p>
|
|
680
|
+
)
|
|
681
|
+
</p>
|
|
682
|
+
<pre>
|
|
683
|
+
webapp.reluri(:path_info=>"/h?#o/x y") => URI("../h%3F%23o/x%20y")
|
|
684
|
+
webapp.reluri(:script=>"ho%o.cgi") => URI("../../ho%25o.cgi")
|
|
685
|
+
webapp.reluri(:fragment=>"sp ce") => URI("../../bar.cgi#sp%20ce")
|
|
686
|
+
</pre>
|
|
687
|
+
<p><a class="source-toggle" href="#"
|
|
688
|
+
onclick="toggleCode('M000175-source');return false;">[Source]</a></p>
|
|
689
|
+
<div class="method-source-code" id="M000175-source">
|
|
690
|
+
<pre>
|
|
691
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 262</span>
|
|
692
|
+
262: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">make_relative_uri</span>(<span class="ruby-identifier">hash</span>={})
|
|
693
|
+
263: <span class="ruby-ivar">@urigen</span>.<span class="ruby-identifier">make_relative_uri</span>(<span class="ruby-identifier">hash</span>)
|
|
694
|
+
264: <span class="ruby-keyword kw">end</span>
|
|
695
|
+
</pre>
|
|
696
|
+
</div>
|
|
697
|
+
</div>
|
|
698
|
+
</div>
|
|
699
|
+
|
|
700
|
+
<div id="method-M000170" class="method-detail">
|
|
701
|
+
<a name="M000170"></a>
|
|
702
|
+
|
|
703
|
+
<div class="method-heading">
|
|
704
|
+
<a href="#M000170" class="method-signature">
|
|
705
|
+
<span class="method-name">open_resource(path)<br />
|
|
706
|
+
open_resource(path) {|io| ... }<br />
|
|
707
|
+
</span>
|
|
708
|
+
</a>
|
|
709
|
+
</div>
|
|
710
|
+
|
|
711
|
+
<div class="method-description">
|
|
712
|
+
<p>
|
|
713
|
+
opens <em>path</em> as relative from a web application directory.
|
|
714
|
+
</p>
|
|
715
|
+
<p><a class="source-toggle" href="#"
|
|
716
|
+
onclick="toggleCode('M000170-source');return false;">[Source]</a></p>
|
|
717
|
+
<div class="method-source-code" id="M000170-source">
|
|
718
|
+
<pre>
|
|
719
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 157</span>
|
|
720
|
+
157: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">open_resource</span>(<span class="ruby-identifier">path</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
|
721
|
+
158: <span class="ruby-identifier">resource_path</span>(<span class="ruby-identifier">path</span>).<span class="ruby-identifier">open</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
|
722
|
+
159: <span class="ruby-keyword kw">end</span>
|
|
723
|
+
</pre>
|
|
724
|
+
</div>
|
|
725
|
+
</div>
|
|
726
|
+
</div>
|
|
727
|
+
|
|
728
|
+
<div id="method-M000151" class="method-detail">
|
|
729
|
+
<a name="M000151"></a>
|
|
730
|
+
|
|
731
|
+
<div class="method-heading">
|
|
732
|
+
<a href="#M000151" class="method-signature">
|
|
733
|
+
<span class="method-name">path_info</span><span class="method-args">()</span>
|
|
734
|
+
</a>
|
|
735
|
+
</div>
|
|
736
|
+
|
|
737
|
+
<div class="method-description">
|
|
738
|
+
<p><a class="source-toggle" href="#"
|
|
739
|
+
onclick="toggleCode('M000151-source');return false;">[Source]</a></p>
|
|
740
|
+
<div class="method-source-code" id="M000151-source">
|
|
741
|
+
<pre>
|
|
742
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 86</span>
|
|
743
|
+
86: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">path_info</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">path_info</span> <span class="ruby-keyword kw">end</span>
|
|
744
|
+
</pre>
|
|
745
|
+
</div>
|
|
746
|
+
</div>
|
|
747
|
+
</div>
|
|
748
|
+
|
|
749
|
+
<div id="method-M000139" class="method-detail">
|
|
750
|
+
<a name="M000139"></a>
|
|
751
|
+
|
|
752
|
+
<div class="method-heading">
|
|
753
|
+
<a href="#M000139" class="method-signature">
|
|
754
|
+
<span class="method-name">print</span><span class="method-args">(*strs)</span>
|
|
755
|
+
</a>
|
|
756
|
+
</div>
|
|
757
|
+
|
|
758
|
+
<div class="method-description">
|
|
759
|
+
<p><a class="source-toggle" href="#"
|
|
760
|
+
onclick="toggleCode('M000139-source');return false;">[Source]</a></p>
|
|
761
|
+
<div class="method-source-code" id="M000139-source">
|
|
762
|
+
<pre>
|
|
763
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 70</span>
|
|
764
|
+
70: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">print</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">strs</span>) <span class="ruby-ivar">@response_body</span>.<span class="ruby-identifier">print</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">strs</span>) <span class="ruby-keyword kw">end</span>
|
|
765
|
+
</pre>
|
|
766
|
+
</div>
|
|
767
|
+
</div>
|
|
768
|
+
</div>
|
|
769
|
+
|
|
770
|
+
<div id="method-M000140" class="method-detail">
|
|
771
|
+
<a name="M000140"></a>
|
|
772
|
+
|
|
773
|
+
<div class="method-heading">
|
|
774
|
+
<a href="#M000140" class="method-signature">
|
|
775
|
+
<span class="method-name">printf</span><span class="method-args">(fmt, *args)</span>
|
|
776
|
+
</a>
|
|
777
|
+
</div>
|
|
778
|
+
|
|
779
|
+
<div class="method-description">
|
|
780
|
+
<p><a class="source-toggle" href="#"
|
|
781
|
+
onclick="toggleCode('M000140-source');return false;">[Source]</a></p>
|
|
782
|
+
<div class="method-source-code" id="M000140-source">
|
|
783
|
+
<pre>
|
|
784
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 71</span>
|
|
785
|
+
71: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">printf</span>(<span class="ruby-identifier">fmt</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>) <span class="ruby-ivar">@response_body</span>.<span class="ruby-identifier">printf</span>(<span class="ruby-identifier">fmt</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>) <span class="ruby-keyword kw">end</span>
|
|
786
|
+
</pre>
|
|
787
|
+
</div>
|
|
788
|
+
</div>
|
|
789
|
+
</div>
|
|
790
|
+
|
|
791
|
+
<div id="method-M000141" class="method-detail">
|
|
792
|
+
<a name="M000141"></a>
|
|
793
|
+
|
|
794
|
+
<div class="method-heading">
|
|
795
|
+
<a href="#M000141" class="method-signature">
|
|
796
|
+
<span class="method-name">putc</span><span class="method-args">(ch)</span>
|
|
797
|
+
</a>
|
|
798
|
+
</div>
|
|
799
|
+
|
|
800
|
+
<div class="method-description">
|
|
801
|
+
<p><a class="source-toggle" href="#"
|
|
802
|
+
onclick="toggleCode('M000141-source');return false;">[Source]</a></p>
|
|
803
|
+
<div class="method-source-code" id="M000141-source">
|
|
804
|
+
<pre>
|
|
805
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 72</span>
|
|
806
|
+
72: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">putc</span>(<span class="ruby-identifier">ch</span>) <span class="ruby-ivar">@response_body</span>.<span class="ruby-identifier">putc</span> <span class="ruby-identifier">ch</span> <span class="ruby-keyword kw">end</span>
|
|
807
|
+
</pre>
|
|
808
|
+
</div>
|
|
809
|
+
</div>
|
|
810
|
+
</div>
|
|
811
|
+
|
|
812
|
+
<div id="method-M000142" class="method-detail">
|
|
813
|
+
<a name="M000142"></a>
|
|
814
|
+
|
|
815
|
+
<div class="method-heading">
|
|
816
|
+
<a href="#M000142" class="method-signature">
|
|
817
|
+
<span class="method-name">puts</span><span class="method-args">(*strs)</span>
|
|
818
|
+
</a>
|
|
819
|
+
</div>
|
|
820
|
+
|
|
821
|
+
<div class="method-description">
|
|
822
|
+
<p><a class="source-toggle" href="#"
|
|
823
|
+
onclick="toggleCode('M000142-source');return false;">[Source]</a></p>
|
|
824
|
+
<div class="method-source-code" id="M000142-source">
|
|
825
|
+
<pre>
|
|
826
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 73</span>
|
|
827
|
+
73: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">puts</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">strs</span>) <span class="ruby-ivar">@response_body</span>.<span class="ruby-identifier">puts</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">strs</span>) <span class="ruby-keyword kw">end</span>
|
|
828
|
+
</pre>
|
|
829
|
+
</div>
|
|
830
|
+
</div>
|
|
831
|
+
</div>
|
|
832
|
+
|
|
833
|
+
<div id="method-M000180" class="method-detail">
|
|
834
|
+
<a name="M000180"></a>
|
|
835
|
+
|
|
836
|
+
<div class="method-heading">
|
|
837
|
+
<a href="#M000180" class="method-signature">
|
|
838
|
+
<span class="method-name">query_html_get_application_x_www_form_urlencoded</span><span class="method-args">()</span>
|
|
839
|
+
</a>
|
|
840
|
+
</div>
|
|
841
|
+
|
|
842
|
+
<div class="method-description">
|
|
843
|
+
<p><a class="source-toggle" href="#"
|
|
844
|
+
onclick="toggleCode('M000180-source');return false;">[Source]</a></p>
|
|
845
|
+
<div class="method-source-code" id="M000180-source">
|
|
846
|
+
<pre>
|
|
847
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 366</span>
|
|
848
|
+
366: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">query_html_get_application_x_www_form_urlencoded</span>
|
|
849
|
+
367: <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">query_string</span>.<span class="ruby-identifier">decode_as_application_x_www_form_urlencoded</span>
|
|
850
|
+
368: <span class="ruby-keyword kw">end</span>
|
|
851
|
+
</pre>
|
|
852
|
+
</div>
|
|
853
|
+
</div>
|
|
854
|
+
</div>
|
|
855
|
+
|
|
856
|
+
<div id="method-M000181" class="method-detail">
|
|
857
|
+
<a name="M000181"></a>
|
|
858
|
+
|
|
859
|
+
<div class="method-heading">
|
|
860
|
+
<a href="#M000181" class="method-signature">
|
|
861
|
+
<span class="method-name">query_html_post_application_x_www_form_urlencoded</span><span class="method-args">()</span>
|
|
862
|
+
</a>
|
|
863
|
+
</div>
|
|
864
|
+
|
|
865
|
+
<div class="method-description">
|
|
866
|
+
<p><a class="source-toggle" href="#"
|
|
867
|
+
onclick="toggleCode('M000181-source');return false;">[Source]</a></p>
|
|
868
|
+
<div class="method-source-code" id="M000181-source">
|
|
869
|
+
<pre>
|
|
870
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 370</span>
|
|
871
|
+
370: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">query_html_post_application_x_www_form_urlencoded</span>
|
|
872
|
+
371: <span class="ruby-keyword kw">if</span> <span class="ruby-regexp re">/\Apost\z/i</span> <span class="ruby-operator">=~</span> <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">request_method</span> <span class="ruby-comment cmt"># xxx: should not check?</span>
|
|
873
|
+
372: <span class="ruby-identifier">q</span> = <span class="ruby-constant">QueryString</span>.<span class="ruby-identifier">primitive_new_for_raw_query_string</span>(<span class="ruby-ivar">@request</span>.<span class="ruby-identifier">body_object</span>.<span class="ruby-identifier">read</span>)
|
|
874
|
+
373: <span class="ruby-keyword kw">if</span> <span class="ruby-regexp re">%r|\Amultipart/form-data.*boundary=\"?([^\";,]+)\"?|n</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">request_content_type</span>)
|
|
875
|
+
374: <span class="ruby-identifier">boundary</span> = <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">dup</span>
|
|
876
|
+
375: <span class="ruby-identifier">q</span>.<span class="ruby-identifier">decode_as_multipart_form_data</span> <span class="ruby-identifier">boundary</span>
|
|
877
|
+
376: <span class="ruby-keyword kw">else</span>
|
|
878
|
+
377: <span class="ruby-identifier">q</span>.<span class="ruby-identifier">decode_as_application_x_www_form_urlencoded</span>
|
|
879
|
+
378: <span class="ruby-keyword kw">end</span>
|
|
880
|
+
379: <span class="ruby-keyword kw">else</span>
|
|
881
|
+
380: <span class="ruby-comment cmt"># xxx: warning?</span>
|
|
882
|
+
381: <span class="ruby-constant">HTMLFormQuery</span>.<span class="ruby-identifier">new</span>
|
|
883
|
+
382: <span class="ruby-keyword kw">end</span>
|
|
884
|
+
383: <span class="ruby-keyword kw">end</span>
|
|
885
|
+
</pre>
|
|
886
|
+
</div>
|
|
887
|
+
</div>
|
|
888
|
+
</div>
|
|
889
|
+
|
|
890
|
+
<div id="method-M000152" class="method-detail">
|
|
891
|
+
<a name="M000152"></a>
|
|
892
|
+
|
|
893
|
+
<div class="method-heading">
|
|
894
|
+
<a href="#M000152" class="method-signature">
|
|
895
|
+
<span class="method-name">query_string</span><span class="method-args">()</span>
|
|
896
|
+
</a>
|
|
897
|
+
</div>
|
|
898
|
+
|
|
899
|
+
<div class="method-description">
|
|
900
|
+
<p><a class="source-toggle" href="#"
|
|
901
|
+
onclick="toggleCode('M000152-source');return false;">[Source]</a></p>
|
|
902
|
+
<div class="method-source-code" id="M000152-source">
|
|
903
|
+
<pre>
|
|
904
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 87</span>
|
|
905
|
+
87: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">query_string</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">query_string</span> <span class="ruby-keyword kw">end</span>
|
|
906
|
+
</pre>
|
|
907
|
+
</div>
|
|
908
|
+
</div>
|
|
909
|
+
</div>
|
|
910
|
+
|
|
911
|
+
<div id="method-M000176" class="method-detail">
|
|
912
|
+
<a name="M000176"></a>
|
|
913
|
+
|
|
914
|
+
<div class="method-heading">
|
|
915
|
+
<span class="method-name">reluri</span><span class="method-args">(hash={})</span>
|
|
916
|
+
</div>
|
|
917
|
+
|
|
918
|
+
<div class="method-description">
|
|
919
|
+
<p>
|
|
920
|
+
Alias for <a href="WebApp.html#M000175">make_relative_uri</a>
|
|
921
|
+
</p>
|
|
922
|
+
</div>
|
|
923
|
+
</div>
|
|
924
|
+
|
|
925
|
+
<div id="method-M000154" class="method-detail">
|
|
926
|
+
<a name="M000154"></a>
|
|
927
|
+
|
|
928
|
+
<div class="method-heading">
|
|
929
|
+
<a href="#M000154" class="method-signature">
|
|
930
|
+
<span class="method-name">remote_addr</span><span class="method-args">()</span>
|
|
931
|
+
</a>
|
|
932
|
+
</div>
|
|
933
|
+
|
|
934
|
+
<div class="method-description">
|
|
935
|
+
<p><a class="source-toggle" href="#"
|
|
936
|
+
onclick="toggleCode('M000154-source');return false;">[Source]</a></p>
|
|
937
|
+
<div class="method-source-code" id="M000154-source">
|
|
938
|
+
<pre>
|
|
939
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 89</span>
|
|
940
|
+
89: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remote_addr</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">remote_addr</span> <span class="ruby-keyword kw">end</span>
|
|
941
|
+
</pre>
|
|
942
|
+
</div>
|
|
943
|
+
</div>
|
|
944
|
+
</div>
|
|
945
|
+
|
|
946
|
+
<div id="method-M000162" class="method-detail">
|
|
947
|
+
<a name="M000162"></a>
|
|
948
|
+
|
|
949
|
+
<div class="method-heading">
|
|
950
|
+
<a href="#M000162" class="method-signature">
|
|
951
|
+
<span class="method-name">remove_header</span><span class="method-args">(field_name)</span>
|
|
952
|
+
</a>
|
|
953
|
+
</div>
|
|
954
|
+
|
|
955
|
+
<div class="method-description">
|
|
956
|
+
<p><a class="source-toggle" href="#"
|
|
957
|
+
onclick="toggleCode('M000162-source');return false;">[Source]</a></p>
|
|
958
|
+
<div class="method-source-code" id="M000162-source">
|
|
959
|
+
<pre>
|
|
960
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 118</span>
|
|
961
|
+
118: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove_header</span>(<span class="ruby-identifier">field_name</span>) <span class="ruby-ivar">@response_header</span>.<span class="ruby-identifier">remove</span>(<span class="ruby-identifier">field_name</span>) <span class="ruby-keyword kw">end</span>
|
|
962
|
+
</pre>
|
|
963
|
+
</div>
|
|
964
|
+
</div>
|
|
965
|
+
</div>
|
|
966
|
+
|
|
967
|
+
<div id="method-M000147" class="method-detail">
|
|
968
|
+
<a name="M000147"></a>
|
|
969
|
+
|
|
970
|
+
<div class="method-heading">
|
|
971
|
+
<a href="#M000147" class="method-signature">
|
|
972
|
+
<span class="method-name">request_body</span><span class="method-args">()</span>
|
|
973
|
+
</a>
|
|
974
|
+
</div>
|
|
975
|
+
|
|
976
|
+
<div class="method-description">
|
|
977
|
+
<p><a class="source-toggle" href="#"
|
|
978
|
+
onclick="toggleCode('M000147-source');return false;">[Source]</a></p>
|
|
979
|
+
<div class="method-source-code" id="M000147-source">
|
|
980
|
+
<pre>
|
|
981
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 82</span>
|
|
982
|
+
82: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">request_body</span>() <span class="ruby-ivar">@request_body</span>.<span class="ruby-identifier">string</span> <span class="ruby-keyword kw">end</span>
|
|
983
|
+
</pre>
|
|
984
|
+
</div>
|
|
985
|
+
</div>
|
|
986
|
+
</div>
|
|
987
|
+
|
|
988
|
+
<div id="method-M000155" class="method-detail">
|
|
989
|
+
<a name="M000155"></a>
|
|
990
|
+
|
|
991
|
+
<div class="method-heading">
|
|
992
|
+
<a href="#M000155" class="method-signature">
|
|
993
|
+
<span class="method-name">request_content_type</span><span class="method-args">()</span>
|
|
994
|
+
</a>
|
|
995
|
+
</div>
|
|
996
|
+
|
|
997
|
+
<div class="method-description">
|
|
998
|
+
<p><a class="source-toggle" href="#"
|
|
999
|
+
onclick="toggleCode('M000155-source');return false;">[Source]</a></p>
|
|
1000
|
+
<div class="method-source-code" id="M000155-source">
|
|
1001
|
+
<pre>
|
|
1002
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 90</span>
|
|
1003
|
+
90: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">request_content_type</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">content_type</span> <span class="ruby-keyword kw">end</span>
|
|
1004
|
+
</pre>
|
|
1005
|
+
</div>
|
|
1006
|
+
</div>
|
|
1007
|
+
</div>
|
|
1008
|
+
|
|
1009
|
+
<div id="method-M000146" class="method-detail">
|
|
1010
|
+
<a name="M000146"></a>
|
|
1011
|
+
|
|
1012
|
+
<div class="method-heading">
|
|
1013
|
+
<a href="#M000146" class="method-signature">
|
|
1014
|
+
<span class="method-name">request_method</span><span class="method-args">()</span>
|
|
1015
|
+
</a>
|
|
1016
|
+
</div>
|
|
1017
|
+
|
|
1018
|
+
<div class="method-description">
|
|
1019
|
+
<p><a class="source-toggle" href="#"
|
|
1020
|
+
onclick="toggleCode('M000146-source');return false;">[Source]</a></p>
|
|
1021
|
+
<div class="method-source-code" id="M000146-source">
|
|
1022
|
+
<pre>
|
|
1023
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 81</span>
|
|
1024
|
+
81: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">request_method</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">request_method</span> <span class="ruby-keyword kw">end</span>
|
|
1025
|
+
</pre>
|
|
1026
|
+
</div>
|
|
1027
|
+
</div>
|
|
1028
|
+
</div>
|
|
1029
|
+
|
|
1030
|
+
<div id="method-M000156" class="method-detail">
|
|
1031
|
+
<a name="M000156"></a>
|
|
1032
|
+
|
|
1033
|
+
<div class="method-heading">
|
|
1034
|
+
<a href="#M000156" class="method-signature">
|
|
1035
|
+
<span class="method-name">request_uri</span><span class="method-args">()</span>
|
|
1036
|
+
</a>
|
|
1037
|
+
</div>
|
|
1038
|
+
|
|
1039
|
+
<div class="method-description">
|
|
1040
|
+
<p><a class="source-toggle" href="#"
|
|
1041
|
+
onclick="toggleCode('M000156-source');return false;">[Source]</a></p>
|
|
1042
|
+
<div class="method-source-code" id="M000156-source">
|
|
1043
|
+
<pre>
|
|
1044
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 91</span>
|
|
1045
|
+
91: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">request_uri</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">request_uri</span> <span class="ruby-keyword kw">end</span>
|
|
1046
|
+
</pre>
|
|
1047
|
+
</div>
|
|
1048
|
+
</div>
|
|
1049
|
+
</div>
|
|
1050
|
+
|
|
1051
|
+
<div id="method-M000169" class="method-detail">
|
|
1052
|
+
<a name="M000169"></a>
|
|
1053
|
+
|
|
1054
|
+
<div class="method-heading">
|
|
1055
|
+
<a href="#M000169" class="method-signature">
|
|
1056
|
+
<span class="method-name">resource_path</span><span class="method-args">(arg)</span>
|
|
1057
|
+
</a>
|
|
1058
|
+
</div>
|
|
1059
|
+
|
|
1060
|
+
<div class="method-description">
|
|
1061
|
+
<p>
|
|
1062
|
+
returns a Pathname object. <em>path</em> is interpreted as a relative path
|
|
1063
|
+
from the directory which a web application exists.
|
|
1064
|
+
</p>
|
|
1065
|
+
<p>
|
|
1066
|
+
If /home/user/public_html/foo/bar.cgi is a web application which <a
|
|
1067
|
+
href="WebApp.html">WebApp</a> {} calls,
|
|
1068
|
+
webapp.resource_path("baz") returns a pathname points to
|
|
1069
|
+
/home/user/public_html/foo/baz.
|
|
1070
|
+
</p>
|
|
1071
|
+
<p>
|
|
1072
|
+
<em>path</em> must not have ".." component and must not be
|
|
1073
|
+
absolute. Otherwise ArgumentError is raised.
|
|
1074
|
+
</p>
|
|
1075
|
+
<p><a class="source-toggle" href="#"
|
|
1076
|
+
onclick="toggleCode('M000169-source');return false;">[Source]</a></p>
|
|
1077
|
+
<div class="method-source-code" id="M000169-source">
|
|
1078
|
+
<pre>
|
|
1079
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 143</span>
|
|
1080
|
+
143: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">resource_path</span>(<span class="ruby-identifier">arg</span>)
|
|
1081
|
+
144: <span class="ruby-identifier">path</span> = <span class="ruby-constant">Pathname</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">arg</span>)
|
|
1082
|
+
145: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"absolute path: #{arg.inspect}"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">path</span>.<span class="ruby-identifier">relative?</span>
|
|
1083
|
+
146: <span class="ruby-identifier">path</span>.<span class="ruby-identifier">each_filename</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
|
|
1084
|
+
147: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"path contains .. : #{arg.inspect}"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">f</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'..'</span>
|
|
1085
|
+
148: }
|
|
1086
|
+
149: <span class="ruby-ivar">@manager</span>.<span class="ruby-identifier">resource_basedir</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">path</span>
|
|
1087
|
+
150: <span class="ruby-keyword kw">end</span>
|
|
1088
|
+
</pre>
|
|
1089
|
+
</div>
|
|
1090
|
+
</div>
|
|
1091
|
+
</div>
|
|
1092
|
+
|
|
1093
|
+
<div id="method-M000150" class="method-detail">
|
|
1094
|
+
<a name="M000150"></a>
|
|
1095
|
+
|
|
1096
|
+
<div class="method-heading">
|
|
1097
|
+
<a href="#M000150" class="method-signature">
|
|
1098
|
+
<span class="method-name">script_name</span><span class="method-args">()</span>
|
|
1099
|
+
</a>
|
|
1100
|
+
</div>
|
|
1101
|
+
|
|
1102
|
+
<div class="method-description">
|
|
1103
|
+
<p><a class="source-toggle" href="#"
|
|
1104
|
+
onclick="toggleCode('M000150-source');return false;">[Source]</a></p>
|
|
1105
|
+
<div class="method-source-code" id="M000150-source">
|
|
1106
|
+
<pre>
|
|
1107
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 85</span>
|
|
1108
|
+
85: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">script_name</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">script_name</span> <span class="ruby-keyword kw">end</span>
|
|
1109
|
+
</pre>
|
|
1110
|
+
</div>
|
|
1111
|
+
</div>
|
|
1112
|
+
</div>
|
|
1113
|
+
|
|
1114
|
+
<div id="method-M000172" class="method-detail">
|
|
1115
|
+
<a name="M000172"></a>
|
|
1116
|
+
|
|
1117
|
+
<div class="method-heading">
|
|
1118
|
+
<a href="#M000172" class="method-signature">
|
|
1119
|
+
<span class="method-name">send_not_found</span><span class="method-args">(msg)</span>
|
|
1120
|
+
</a>
|
|
1121
|
+
</div>
|
|
1122
|
+
|
|
1123
|
+
<div class="method-description">
|
|
1124
|
+
<p><a class="source-toggle" href="#"
|
|
1125
|
+
onclick="toggleCode('M000172-source');return false;">[Source]</a></p>
|
|
1126
|
+
<div class="method-source-code" id="M000172-source">
|
|
1127
|
+
<pre>
|
|
1128
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 181</span>
|
|
1129
|
+
181: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_not_found</span>(<span class="ruby-identifier">msg</span>)
|
|
1130
|
+
182: <span class="ruby-ivar">@response</span>.<span class="ruby-identifier">status_line</span> = <span class="ruby-value str">'404 Not Found'</span>
|
|
1131
|
+
183: <span class="ruby-ivar">@response_body</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"<html>\n <head><title>404 Not Found</title></head>\n <body>\n <h1>404 Not Found</h1>\n <p>\#{msg}</p>\n <hr />\n <small><a href=\"http://hobix.com/\">hobix</a> \#{ Hobix::VERSION } / <a href=\"http://docs.hobix.com\">docs</a> / <a href=\"http://let.us.all.hobix.com\">wiki</a> / <a href=\"http://google.com/search?q=hobix+\#{ URI.escape action_uri }\">search google for this action</a></small>\n </body>\n</html>\n"</span>
|
|
1132
|
+
184: <span class="ruby-keyword kw">end</span>
|
|
1133
|
+
</pre>
|
|
1134
|
+
</div>
|
|
1135
|
+
</div>
|
|
1136
|
+
</div>
|
|
1137
|
+
|
|
1138
|
+
<div id="method-M000171" class="method-detail">
|
|
1139
|
+
<a name="M000171"></a>
|
|
1140
|
+
|
|
1141
|
+
<div class="method-heading">
|
|
1142
|
+
<a href="#M000171" class="method-signature">
|
|
1143
|
+
<span class="method-name">send_resource(path)<br />
|
|
1144
|
+
</span>
|
|
1145
|
+
</a>
|
|
1146
|
+
</div>
|
|
1147
|
+
|
|
1148
|
+
<div class="method-description">
|
|
1149
|
+
<p>
|
|
1150
|
+
send the resource indicated by <em>path</em>. Last-Modified: and
|
|
1151
|
+
If-Modified-Since: header is supported.
|
|
1152
|
+
</p>
|
|
1153
|
+
<p><a class="source-toggle" href="#"
|
|
1154
|
+
onclick="toggleCode('M000171-source');return false;">[Source]</a></p>
|
|
1155
|
+
<div class="method-source-code" id="M000171-source">
|
|
1156
|
+
<pre>
|
|
1157
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 166</span>
|
|
1158
|
+
166: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_resource</span>(<span class="ruby-identifier">path</span>)
|
|
1159
|
+
167: <span class="ruby-identifier">path</span> = <span class="ruby-identifier">resource_path</span>(<span class="ruby-identifier">path</span>)
|
|
1160
|
+
168: <span class="ruby-keyword kw">begin</span>
|
|
1161
|
+
169: <span class="ruby-identifier">mtime</span> = <span class="ruby-identifier">path</span>.<span class="ruby-identifier">mtime</span>
|
|
1162
|
+
170: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Errno</span><span class="ruby-operator">::</span><span class="ruby-constant">ENOENT</span>
|
|
1163
|
+
171: <span class="ruby-identifier">send_not_found</span> <span class="ruby-node">"Resource not found: #{path}"</span>
|
|
1164
|
+
172: <span class="ruby-keyword kw">return</span>
|
|
1165
|
+
173: <span class="ruby-keyword kw">end</span>
|
|
1166
|
+
174: <span class="ruby-identifier">check_last_modified</span>(<span class="ruby-identifier">path</span>.<span class="ruby-identifier">mtime</span>) {
|
|
1167
|
+
175: <span class="ruby-identifier">path</span>.<span class="ruby-identifier">open</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
|
|
1168
|
+
176: <span class="ruby-ivar">@response_body</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">read</span>
|
|
1169
|
+
177: }
|
|
1170
|
+
178: }
|
|
1171
|
+
179: <span class="ruby-keyword kw">end</span>
|
|
1172
|
+
</pre>
|
|
1173
|
+
</div>
|
|
1174
|
+
</div>
|
|
1175
|
+
</div>
|
|
1176
|
+
|
|
1177
|
+
<div id="method-M000173" class="method-detail">
|
|
1178
|
+
<a name="M000173"></a>
|
|
1179
|
+
|
|
1180
|
+
<div class="method-heading">
|
|
1181
|
+
<a href="#M000173" class="method-signature">
|
|
1182
|
+
<span class="method-name">send_unauthorized</span><span class="method-args">()</span>
|
|
1183
|
+
</a>
|
|
1184
|
+
</div>
|
|
1185
|
+
|
|
1186
|
+
<div class="method-description">
|
|
1187
|
+
<p><a class="source-toggle" href="#"
|
|
1188
|
+
onclick="toggleCode('M000173-source');return false;">[Source]</a></p>
|
|
1189
|
+
<div class="method-source-code" id="M000173-source">
|
|
1190
|
+
<pre>
|
|
1191
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 197</span>
|
|
1192
|
+
197: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_unauthorized</span>
|
|
1193
|
+
198: <span class="ruby-ivar">@response</span>.<span class="ruby-identifier">status_line</span> = <span class="ruby-value str">'401 Unauthorized'</span>
|
|
1194
|
+
199: <span class="ruby-ivar">@response_body</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"<html>\n <head><title>401 Unauthorized</title></head>\n <body>\n <h1>401 Authorized</h1>\n <p>You lack decent credentials to enter herein.</p>\n </body>\n</html>\n"</span>
|
|
1195
|
+
200: <span class="ruby-keyword kw">end</span>
|
|
1196
|
+
</pre>
|
|
1197
|
+
</div>
|
|
1198
|
+
</div>
|
|
1199
|
+
</div>
|
|
1200
|
+
|
|
1201
|
+
<div id="method-M000148" class="method-detail">
|
|
1202
|
+
<a name="M000148"></a>
|
|
1203
|
+
|
|
1204
|
+
<div class="method-heading">
|
|
1205
|
+
<a href="#M000148" class="method-signature">
|
|
1206
|
+
<span class="method-name">server_name</span><span class="method-args">()</span>
|
|
1207
|
+
</a>
|
|
1208
|
+
</div>
|
|
1209
|
+
|
|
1210
|
+
<div class="method-description">
|
|
1211
|
+
<p><a class="source-toggle" href="#"
|
|
1212
|
+
onclick="toggleCode('M000148-source');return false;">[Source]</a></p>
|
|
1213
|
+
<div class="method-source-code" id="M000148-source">
|
|
1214
|
+
<pre>
|
|
1215
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 83</span>
|
|
1216
|
+
83: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">server_name</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">server_name</span> <span class="ruby-keyword kw">end</span>
|
|
1217
|
+
</pre>
|
|
1218
|
+
</div>
|
|
1219
|
+
</div>
|
|
1220
|
+
</div>
|
|
1221
|
+
|
|
1222
|
+
<div id="method-M000149" class="method-detail">
|
|
1223
|
+
<a name="M000149"></a>
|
|
1224
|
+
|
|
1225
|
+
<div class="method-heading">
|
|
1226
|
+
<a href="#M000149" class="method-signature">
|
|
1227
|
+
<span class="method-name">server_port</span><span class="method-args">()</span>
|
|
1228
|
+
</a>
|
|
1229
|
+
</div>
|
|
1230
|
+
|
|
1231
|
+
<div class="method-description">
|
|
1232
|
+
<p><a class="source-toggle" href="#"
|
|
1233
|
+
onclick="toggleCode('M000149-source');return false;">[Source]</a></p>
|
|
1234
|
+
<div class="method-source-code" id="M000149-source">
|
|
1235
|
+
<pre>
|
|
1236
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 84</span>
|
|
1237
|
+
84: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">server_port</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">server_port</span> <span class="ruby-keyword kw">end</span>
|
|
1238
|
+
</pre>
|
|
1239
|
+
</div>
|
|
1240
|
+
</div>
|
|
1241
|
+
</div>
|
|
1242
|
+
|
|
1243
|
+
<div id="method-M000153" class="method-detail">
|
|
1244
|
+
<a name="M000153"></a>
|
|
1245
|
+
|
|
1246
|
+
<div class="method-heading">
|
|
1247
|
+
<a href="#M000153" class="method-signature">
|
|
1248
|
+
<span class="method-name">server_protocol</span><span class="method-args">()</span>
|
|
1249
|
+
</a>
|
|
1250
|
+
</div>
|
|
1251
|
+
|
|
1252
|
+
<div class="method-description">
|
|
1253
|
+
<p><a class="source-toggle" href="#"
|
|
1254
|
+
onclick="toggleCode('M000153-source');return false;">[Source]</a></p>
|
|
1255
|
+
<div class="method-source-code" id="M000153-source">
|
|
1256
|
+
<pre>
|
|
1257
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 88</span>
|
|
1258
|
+
88: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">server_protocol</span>() <span class="ruby-ivar">@request</span>.<span class="ruby-identifier">server_protocol</span> <span class="ruby-keyword kw">end</span>
|
|
1259
|
+
</pre>
|
|
1260
|
+
</div>
|
|
1261
|
+
</div>
|
|
1262
|
+
</div>
|
|
1263
|
+
|
|
1264
|
+
<div id="method-M000160" class="method-detail">
|
|
1265
|
+
<a name="M000160"></a>
|
|
1266
|
+
|
|
1267
|
+
<div class="method-heading">
|
|
1268
|
+
<a href="#M000160" class="method-signature">
|
|
1269
|
+
<span class="method-name">set_header</span><span class="method-args">(field_name, field_body)</span>
|
|
1270
|
+
</a>
|
|
1271
|
+
</div>
|
|
1272
|
+
|
|
1273
|
+
<div class="method-description">
|
|
1274
|
+
<p><a class="source-toggle" href="#"
|
|
1275
|
+
onclick="toggleCode('M000160-source');return false;">[Source]</a></p>
|
|
1276
|
+
<div class="method-source-code" id="M000160-source">
|
|
1277
|
+
<pre>
|
|
1278
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 116</span>
|
|
1279
|
+
116: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_header</span>(<span class="ruby-identifier">field_name</span>, <span class="ruby-identifier">field_body</span>) <span class="ruby-ivar">@response_header</span>.<span class="ruby-identifier">set</span>(<span class="ruby-identifier">field_name</span>, <span class="ruby-identifier">field_body</span>) <span class="ruby-keyword kw">end</span>
|
|
1280
|
+
</pre>
|
|
1281
|
+
</div>
|
|
1282
|
+
</div>
|
|
1283
|
+
</div>
|
|
1284
|
+
|
|
1285
|
+
<div id="method-M000179" class="method-detail">
|
|
1286
|
+
<a name="M000179"></a>
|
|
1287
|
+
|
|
1288
|
+
<div class="method-heading">
|
|
1289
|
+
<a href="#M000179" class="method-signature">
|
|
1290
|
+
<span class="method-name">setup_redirection</span><span class="method-args">(status, uri)</span>
|
|
1291
|
+
</a>
|
|
1292
|
+
</div>
|
|
1293
|
+
|
|
1294
|
+
<div class="method-description">
|
|
1295
|
+
<p>
|
|
1296
|
+
setup_redirect makes a status line and a Location header appropriate as
|
|
1297
|
+
redirection.
|
|
1298
|
+
</p>
|
|
1299
|
+
<p>
|
|
1300
|
+
<em>status</em> specifies the status line. It should be a Fixnum 3xx or
|
|
1301
|
+
String ‘3xx …’.
|
|
1302
|
+
</p>
|
|
1303
|
+
<p>
|
|
1304
|
+
<em>uri</em> specifies the Location header body. It should be a URI, String
|
|
1305
|
+
or Hash. If a Hash is given, <a
|
|
1306
|
+
href="WebApp.html#M000177">make_absolute_uri</a> is called to convert to
|
|
1307
|
+
URI. If given URI is relative, it is converted as absolute URI.
|
|
1308
|
+
</p>
|
|
1309
|
+
<p><a class="source-toggle" href="#"
|
|
1310
|
+
onclick="toggleCode('M000179-source');return false;">[Source]</a></p>
|
|
1311
|
+
<div class="method-source-code" id="M000179-source">
|
|
1312
|
+
<pre>
|
|
1313
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 334</span>
|
|
1314
|
+
334: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setup_redirection</span>(<span class="ruby-identifier">status</span>, <span class="ruby-identifier">uri</span>)
|
|
1315
|
+
335: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">status</span>
|
|
1316
|
+
336: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">Fixnum</span>
|
|
1317
|
+
337: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">status</span> <span class="ruby-operator"><</span> <span class="ruby-value">300</span> <span class="ruby-operator">||</span> <span class="ruby-value">400</span> <span class="ruby-operator"><=</span> <span class="ruby-identifier">status</span>
|
|
1318
|
+
338: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"unexpected status: #{status.inspect}"</span>
|
|
1319
|
+
339: <span class="ruby-keyword kw">end</span>
|
|
1320
|
+
340: <span class="ruby-identifier">status</span> = <span class="ruby-node">"#{status} #{StatusMessage[status]}"</span>
|
|
1321
|
+
341: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">String</span>
|
|
1322
|
+
342: <span class="ruby-keyword kw">unless</span> <span class="ruby-regexp re">/\A3\d\d(\z| )/</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">status</span>
|
|
1323
|
+
343: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"unexpected status: #{status.inspect}"</span>
|
|
1324
|
+
344: <span class="ruby-keyword kw">end</span>
|
|
1325
|
+
345: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">status</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">3</span>
|
|
1326
|
+
346: <span class="ruby-identifier">status</span> = <span class="ruby-node">"#{status} #{StatusMessage[status.to_i]}"</span>
|
|
1327
|
+
347: <span class="ruby-keyword kw">end</span>
|
|
1328
|
+
348: <span class="ruby-keyword kw">else</span>
|
|
1329
|
+
349: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"unexpected status: #{status.inspect}"</span>
|
|
1330
|
+
350: <span class="ruby-keyword kw">end</span>
|
|
1331
|
+
351: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">uri</span>
|
|
1332
|
+
352: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">URI</span>
|
|
1333
|
+
353: <span class="ruby-identifier">uri</span> = <span class="ruby-ivar">@urigen</span>.<span class="ruby-identifier">base_uri</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">uri</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">relative?</span>
|
|
1334
|
+
354: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">String</span>
|
|
1335
|
+
355: <span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">uri</span>)
|
|
1336
|
+
356: <span class="ruby-identifier">uri</span> = <span class="ruby-ivar">@urigen</span>.<span class="ruby-identifier">base_uri</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">uri</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">relative?</span>
|
|
1337
|
+
357: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">Hash</span>
|
|
1338
|
+
358: <span class="ruby-identifier">uri</span> = <span class="ruby-identifier">make_absolute_uri</span>(<span class="ruby-identifier">uri</span>)
|
|
1339
|
+
359: <span class="ruby-keyword kw">else</span>
|
|
1340
|
+
360: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"unexpected uri: #{uri.inspect}"</span>
|
|
1341
|
+
361: <span class="ruby-keyword kw">end</span>
|
|
1342
|
+
362: <span class="ruby-ivar">@response</span>.<span class="ruby-identifier">status_line</span> = <span class="ruby-identifier">status</span>
|
|
1343
|
+
363: <span class="ruby-ivar">@response_header</span>.<span class="ruby-identifier">set</span> <span class="ruby-value str">'Location'</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>
|
|
1344
|
+
364: <span class="ruby-keyword kw">end</span>
|
|
1345
|
+
</pre>
|
|
1346
|
+
</div>
|
|
1347
|
+
</div>
|
|
1348
|
+
</div>
|
|
1349
|
+
|
|
1350
|
+
<div id="method-M000143" class="method-detail">
|
|
1351
|
+
<a name="M000143"></a>
|
|
1352
|
+
|
|
1353
|
+
<div class="method-heading">
|
|
1354
|
+
<a href="#M000143" class="method-signature">
|
|
1355
|
+
<span class="method-name">write</span><span class="method-args">(str)</span>
|
|
1356
|
+
</a>
|
|
1357
|
+
</div>
|
|
1358
|
+
|
|
1359
|
+
<div class="method-description">
|
|
1360
|
+
<p><a class="source-toggle" href="#"
|
|
1361
|
+
onclick="toggleCode('M000143-source');return false;">[Source]</a></p>
|
|
1362
|
+
<div class="method-source-code" id="M000143-source">
|
|
1363
|
+
<pre>
|
|
1364
|
+
<span class="ruby-comment cmt"># File lib/hobix/webapp.rb, line 74</span>
|
|
1365
|
+
74: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">write</span>(<span class="ruby-identifier">str</span>) <span class="ruby-ivar">@response_body</span>.<span class="ruby-identifier">write</span> <span class="ruby-identifier">str</span> <span class="ruby-keyword kw">end</span>
|
|
1366
|
+
</pre>
|
|
1367
|
+
</div>
|
|
1368
|
+
</div>
|
|
1369
|
+
</div>
|
|
1370
|
+
|
|
1371
|
+
|
|
1372
|
+
</div>
|
|
1373
|
+
|
|
1374
|
+
|
|
1375
|
+
</div>
|
|
1376
|
+
|
|
1377
|
+
|
|
1378
|
+
<div id="validator-badges">
|
|
1379
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
1380
|
+
</div>
|
|
1381
|
+
|
|
1382
|
+
</body>
|
|
1383
|
+
</html>
|