Brian Cassidy > WWW-OpenSearch-0.16 > WWW::OpenSearch::Response

Download:
WWW-OpenSearch-0.16.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
View/Report Bugs
Source   Latest Release: WWW-OpenSearch-0.17

NAME ^

WWW::OpenSearch::Response - Encapsulate a response received from an A9 OpenSearch compatible engine

SYNOPSIS ^

    use WWW::OpenSearch;
    
    my $url = "http://bulkfeeds.net/opensearch.xml";
    my $engine = WWW::OpenSearch->new($url);
    
    # Retrieve page 4 of search results for "iPod"
    my $response = $engine->search("iPod",{ startPage => 4 });
    for my $item (@{$response->feed->items}) {
        print $item->{description};
    }
    
    # Retrieve page 3 of results
    $response = $response->previous_page;
    
    # Retrieve page 5 of results
    $response = $response->next_page;

DESCRIPTION ^

WWW::OpenSearch::Response is a module designed to encapsulate a response received from an A9 OpenSearch compatible engine. See http://opensearch.a9.com/spec/1.1/response/ for details.

CONSTRUCTOR ^

new( $response )

Constructs a new instance of WWW::OpenSearch::Response from the WWWW::OpenSearch:Response returned by the search request.

METHODS ^

parse_response( )

Parses the content of the HTTP response using XML::Feed. If successful, parse_feed( ) is also called.

parse_feed( )

Parses the XML::Feed originally parsed from the HTTP response content. Sets the pager object appropriately.

previous_page( ) / next_page( )

Performs another search on the parent object, returning a WWW::OpenSearch::Response instance containing the previous/next page of results. If the current response includes a <link rel="previous/next" href="..." /> tag, the page will simply be the parsed content of the URL specified by the tag's href attribute. However, if the current response does not include the appropriate link, a new query is constructed using the startPage or startIndex query arguments.

_get_link( $type )

Gets the href attribute of the first link whose rel attribute is equal to $type.

ACCESSORS ^

feed( )

pager( )

AUTHOR ^

COPYRIGHT AND LICENSE ^

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.

syntax highlighting: