NAME
    FirstGoodURL - determines first successful URL in list

SYNOPSIS
      use FirstGoodURL;
      use strict;
      
      my @URLs = (...);
      my $match;
      
      if ($match = FirstGoodURL->in(@URLs)) {
        print "good URL: $match\n";
      }
      else {
        print "no URL was alive\n";
      }
      
      if ($match = FirstGoodURL->with('image/png')->in(@URLs)) {
        print "PNG found at $match\n";
      }
      else {
        print "no PNG found\n";
      }
      
      if ($match = FirstGoodURL->with(200,204)->in(@URLs)) {
        print "Status: OK or No Content at $match\n";
      }
      else {
        print "no 200/204 found\n";
      }

DESCRIPTION
    This module uses the LWP suite to scan through a list of URLs.
    It determines the first URL that returns a specified status code
    (with defaults to `200'), and optionally, a specified Content-
    type.

Methods
    * `FirstGoodURL->in(...)'
        Scans a list of URLs for a specified response code, and
        possibly a requisite Content-type (see the `with' method
        below)

    * `FirstGoodURL->with(...)'
        Sets a Content-type and/or Status requisite value for future
        calls to `in'. It is destructive to the previous settings
        given, so you must send all settings at once.

        This is not backward compatible.

        The argument list can contain a list of Status response
        codes, and either a list of Content-type response values or
        a regex to match acceptable Content-type response values.
        These can appear in any order. The regex must be a compiled
        one (formed by using `qr//').

        This method returns the class name, so that you can daisy-
        chain calls for readability/snazziness:

          my $match = FirstGoodURL->with(qr/image/)->in(@URLs);

TODO
    Here is a listing of things that might be added to future
    versions.

    * Object support (`with' attributes per object)
AUTHOR
      Jeff "japhy" Pinyan
      CPAN ID: PINYAN
      japhy@pobox.com
      http://www.pobox.com/~japhy/

