1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138
|
<html>
<head>
<link rel="stylesheet" type="text/css" href="dox.css" />
<title>libapreq2-2.04-dev: libapreq2: Table Classes</title>
</head>
<body>
<div id="page-header">
<p class="menu">
<a href="http://www.apache.org/">Apache Software Foundation</a> > <a href="http://httpd.apache.org">HTTP Server Project</a> >
<a href="http://httpd.apache.org/apreq/">Request Library Subproject</a></p>
<p class="apache">Apache HTTP Server Request Library</p>
<img alt="" src="feather.gif" /></div>
<!-- Generated by Doxygen 1.3.8 -->
<div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a></div>
<h1>Table Classes<br>
<small>
[<a class="el" href="group__apreq__xs.html">Perl</a>]</small>
</h1><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
</table>
<p><a name="__index__"></a></p>
<!-- INDEX BEGIN -->
<ul>
<li><a href="#name">NAME</a></li>
<li><a href="#synopsis">SYNOPSIS</a></li>
<li><a href="#description">DESCRIPTION</a></li>
<li><a href="#apache__request__table">Apache::Request::Table</a></li>
<li><a href="#apache__upload__table">Apache::Upload::Table</a></li>
<li><a href="#apache__cookie__table">Apache::Cookie::Table</a></li>
<li><a href="#see_also">SEE ALSO</a></li>
<li><a href="#copyright">COPYRIGHT</a></li>
</ul>
<!-- INDEX END -->
<hr />
<p>
</p>
<h1><a name="name">NAME</a></h1>
<p>Apache::*::Table - Table classes for Apache::Request, Apache::Upload, and Apache::Cookie.</p>
<p>
</p>
<hr />
<h1><a name="synopsis">SYNOPSIS</a></h1>
<pre>
my $table = Apache::Request::Table->new($r);
$table->{test} = 1;
$table->{foo} = "bar1";
$table->add(foo => "bar2");</pre>
<pre>
{
my $do_data = "";
$table->do( sub { $do_data .= "@_,"; 1 } );
ok $do_data eq "test 1,foo bar1,foo bar2,";
}</pre>
<p>
</p>
<hr />
<h1><a name="description">DESCRIPTION</a></h1>
<p>This manpage documents the Apache::*::Table classes provided by the
Apache::Request, Apache::Upload, and Apache::Cookie modules. Table
classes are all derived from APR::Table, however since the underlying
values they contain are not simple character arrays, the <code>merge</code>, <code>compress</code>,
and <code>overlap</code> methods from APR::Table are not implemented.</p>
<p>
</p>
<hr />
<h1><a name="apache__request__table">Apache::Request::Table</a></h1>
<p>These tables arise as parameter tables generated by the <code>args</code>, <code>body</code>, and
<code>param</code> methods of Apache::Request. Their values are representable
by orinary perl scalars, but unlike APR::Table, the '\0' character may
be safely embedded in a value without truncating it.</p>
<pre>
my $table = Apache::Request::Table->new($r);
my $value = "bar\0quux";
$table->{foo} = $value;</pre>
<p>
</p>
<hr />
<h1><a name="apache__upload__table">Apache::Upload::Table</a></h1>
<p>These tables arise from the <code>Apache::Request::upload</code> method (which is
provided by Apache::Upload). Their values are Apache::Upload objects.</p>
<pre>
my $upload = Apache::Upload->new($r, name => "foo", file => __FILE__);
my $table = Apache::Upload::Table->new($r);
$table->add($upload);
$upload = $table->{foo};</pre>
<p>
</p>
<hr />
<h1><a name="apache__cookie__table">Apache::Cookie::Table</a></h1>
<p>These tables arise from the <code>cookies</code> method of Apache::Cookie::Jar, and
their values are Apache::Cookie objects (or Apache::Cookie derived objects-
see the discussion of <code>VALUE_CLASS</code> in <a href="group__apreq__xs__cookie.html">the Apache::Cookie manpage</a>).</p>
<pre>
my $cookie = Apache::Cookie->new($r, name =>"foo", value => "bar");
my $table = Apache::Cookie::Table->new($r);
$table->{foo} = $cookie;
$cookie = $table->{foo};</pre>
<p>
</p>
<hr />
<h1><a name="see_also">SEE ALSO</a></h1>
<p><a href="group__apreq__xs__request.html">the Apache::Request manpage</a>, <a href="group__apreq__xs__cookie.html">the Apache::Cookie manpage</a>, <a href="group__apreq__xs__upload.html">the Apache::Upload manpage</a>
APR::Table(3)</p>
<p>
</p>
<hr />
<h1><a name="copyright">COPYRIGHT</a></h1>
<pre>
Copyright 2003-2004 The Apache Software Foundation</pre>
<pre>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at</pre>
<pre>
<a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a></pre>
<pre>
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.</pre>
<div id="footer">
<p class="apache">
Copyright © 2003-2004 <a href="http://www.apache.org">The Apache Software Foundation</a>.<br/>
See <a href="LICENSE.html">LICENSE</a>.</p>
<p class="menu">
<span style="color:#aaa">page generated by <a href="http://www.doxygen.org/"><code>doxygen</code></a>
version 1.3.8 on 30 Aug 2004</span>
</p>
</div>
</body>
</html>
|