| WWW-OpenSearch documentation | Contained in the WWW-OpenSearch distribution. |
WWW::OpenSearch::Request - Encapsulate an opensearch request
Copyright 2005-2010 by Tatsuhiko Miyagawa and Brian Cassidy
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| WWW-OpenSearch documentation | Contained in the WWW-OpenSearch distribution. |
package WWW::OpenSearch::Request; use strict; use warnings; use base qw( HTTP::Request Class::Accessor::Fast ); use HTTP::Request::Common (); __PACKAGE__->mk_accessors( qw( opensearch_url opensearch_params ) );
sub new { my ( $class, $os_url, $params ) = @_; my ( $uri, $post ) = $os_url->prepare_query( $params ); my $self; if ( lc $os_url->method eq 'post' ) { $self = HTTP::Request::Common::POST( $uri, $post ); bless $self, $class; } else { $self = $class->SUPER::new( $os_url->method => $uri ); } $self->opensearch_url( $os_url ); $self->opensearch_params( $params ); return $self; } sub clone { my $self = shift; my $clone = bless $self->SUPER::clone, ref( $self ); $clone->opensearch_url( $self->opensearch_url ); $clone->opensearch_params( $self->opensearch_params ); return $clone; } 1;