Update of /cvsroot/http-webtest/HTTP-WebTest/lib/HTTP/WebTest
In directory usw-pr-cvs1:/tmp/cvs-serv6718
Added Files:
Request.pm
Log Message:
Added (unfinished)
--- NEW FILE: Request.pm ---
# $Id: Request.pm,v 1.1 2002/07/04 22:39:17 m_ilya Exp $
package HTTP::WebTest::Request;
=head1 NAME
HTTP::WebTest::Request - HTTP request objects
=head1 SYNOPSIS
use HTTP::WebTest::Request;
$request = HTTP::WebTest::Request->new;
my $uri = $request->uri;
$request->base_uri($base_uri);
my $base_uri = $request->base_uri;
my @params = @{$request->params};
$request->params([@params]);
=head1 DESCRIPTION
This class is a subclass of L<HTTP::Request|HTTP::Request> class. It
extends it with continence methods that allow to set or get CGI query
params for HTTP request in uniform way independent of HTTP request
method.
Each URI in GET requests may consist of two portions: URI of
document/resource/etc and CGI query string. In
L<HTTP::Request|HTTP::Request> method C<uri> doesn't separate them and
operates on them as on single entity. In C<HTTP::WebTest::Request>
method C<uri> is not allowed to modify HTTP request URI. Instead of
it methods C<base_uri> and C<params> should be used to change or get
these parts independently.
For POST requests method C<base_uri> acts simular to C<uri>. On the
other hand C<params> set content of HTTP request in case of POST
requests.
CGI request parameters are defined in the way similar to CGI request
parameters defenition in
L<HTTP::Request::Common|HTTP::Request::Common>. It is an array of
pairs
( name1 => value1, name2 => value2, ..., nameN => valueN )
If any value is passed as an array reference it is treated as file
upload. See L<HTTP::Request::Common|HTTP::Request::Common> for more
details.
By default GET type of HTTP request is assumed. But if CGI request
parameters have data for file upload then POST type of HTTP request is
assumed.
=head1 CLASS METHODS
=cut
use strict;
use base qw(HTTP::Request);
=head2 base_uri($optional_uri)
Can set non CGI query portion of request URI if C<$optional_uri> is
passed.
=head3 Returns
Non CGI query portion of request URI.
=cut
sub base_uri {
}
=head2 uri
Method C<uri> is redefined and it is not allowed to be used as setter
anymore.
=head3 Returns
Whole URI.
=cut
sub uri {
}
=head2 params($optional_params)
Can set CGI request parameters for this HTTP request object if an
array reference C<$optional_params> is passed.
=head3 Returns
An reference to an array that contains CGI request parameters.
=cut
sub params {
}
=head1 COPYRIGHT
Copyright (c) 2001-2002 Ilya Martynov. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
=head1 SEE ALSO
L<HTTP::WebTest|HTTP::WebTest>
L<HTTP::WebTest::API|HTTP::WebTest::API>
L<HTTP::Request|HTTP::Request>
L<HTTP::Request::Common|HTTP::Request::Common>
=cut
1;
|