Babble::Transport - Transport abstraction layer for Babble
This module implements a layer that is transport agnostic. That is, one can pass a file, an HTTP URL or the like to this module, and it will delegate the job to an appropriate sub-module. Very useful for fetching feeds, as with Babble::Transport, the feed can be either remote or local, and can be fetched from anywhere Babble::Transport supports, and when one writes new DataSources, the code is reusable.
However, this should not be used outside of Babble::DataSource classes.
Return the contents of a given location, either fetched afresh, or from the cach (if any).
This method takes the following parameters:
The location to fetch the document from.
When specified as an array reference, the freshly fetched document will be filtered through each function referenced herein. These functions should take only one argument: a scalar reference. And they should operate on that, in-place.
When this flag is set, only the cache will be used as a source, and the original location will not be checked.
In order to use caching, this method needs access to a Babble::Cache object. This is done via a Babble object, which should be passed in this parameter, as a reference.
When one does not want caching, it can be omitted.
Gergely Nagy, email@example.com
Bugs should be reported at http://bugs.bonehunter.rulez.org/babble.