code::SchemeReader Class Reference
[Reader]

Inheritance diagram for code::SchemeReader:

code::Reader code::LBReader code::LocalReader code::ORPGReader code::RshReader code::RSSReader code::WebReader code::WebReaderCurlImpl List of all members.

Detailed Description

Abstract Base Class for Readers that handle specific URL schemes such as http, ftp or rssd.

You only need this if you're implementing a new Reader.


Public Member Functions

virtual ~SchemeReader ()
virtual int open (const URL &url)=0
virtual int read (Buffer &buf, long offset=0, size_t max_size=0)=0

Static Public Member Functions

static int read (const URL &url, Buffer &buffer, long offset=0, size_t max_len=0)
 Convenience function to read `url' into `buf'.
static int read (const URL &url, std::string &s, long offset=0, size_t max_len=0)
 Identical to read(const URL&,Buffer&,long,size_t) except it takes a string instead of a buffer.
static int readRaw (const URL &url, Buffer &b, long offset=0, size_t max_len=0)
 Identical to read() except except it doesn't uncompress files.
static SmartPtr< XML::DocumentreadXMLDocument (const URL &url)
 Returns an XML::Document created by passing the contents of `url' to XML::Parser::parse().
static SmartPtr< ReadergetReader (const URL &url)
 Returns a handle to a reader for the given URL.
static void introduceWDSSIIReaders ()


Constructor & Destructor Documentation

virtual code::SchemeReader::~SchemeReader (  )  [inline, virtual]


Member Function Documentation

static SmartPtr<Reader> code::Reader::getReader ( const URL url  )  [static, inherited]

Returns a handle to a reader for the given URL.

This is useful when you want to make iterative calls to read() or LineReader::readLine().

static void code::Reader::introduceWDSSIIReaders (  )  [static, inherited]

virtual int code::SchemeReader::open ( const URL url  )  [pure virtual]

Implemented in code::RshReader, code::LBReader, code::ORPGReader, code::RSSReader, code::LocalReader, code::WebReader, and code::WebReaderCurlImpl.

virtual int code::Reader::read ( Buffer buf,
long  offset = 0,
size_t  max_size = 0 
) [pure virtual, inherited]

See also:
static int read (URL, Buffer, offset, long, size_t);

Implemented in code::RshReader, code::LBReader, code::ORPGReader, code::RSSReader, code::InMemoryReader, code::LocalReader, code::WebReader, and code::WebReaderCurlImpl.

static int code::Reader::read ( const URL url,
std::string &  s,
long  offset = 0,
size_t  max_len = 0 
) [static, inherited]

Identical to read(const URL&,Buffer&,long,size_t) except it takes a string instead of a buffer.

static int code::Reader::read ( const URL url,
Buffer buffer,
long  offset = 0,
size_t  max_len = 0 
) [static, inherited]

Convenience function to read `url' into `buf'.

Handles remote, local, compressed, and uncompressed files transparently.

Parameters:
url the data source.
buffer where source's contents will be stored.
offset number of bytes to skip before read() begins storing.
max_len if nonzero, maximum number of bytes to store in buf.
Returns:
the number of bytes read, or a negative number on error.

static int code::Reader::readRaw ( const URL url,
Buffer b,
long  offset = 0,
size_t  max_len = 0 
) [static, inherited]

Identical to read() except except it doesn't uncompress files.

This is useful when mirroring compressed files to avoid decompress / recompress steps.

static SmartPtr<XML::Document> code::Reader::readXMLDocument ( const URL url  )  [static, inherited]

Returns an XML::Document created by passing the contents of `url' to XML::Parser::parse().


Generated on Fri May 4 13:40:13 2012 for WDSS-IIw2 by  doxygen 1.4.7