libdap++  Updated for version 3.14.0
libdap::PipeResponse Class Reference

Encapsulate a response. This class provides special treatment for 'stream pipes.' It arranges to close them using pclose() instead of fclose(). More...

#include <PipeResponse.h>

Inheritance diagram for libdap::PipeResponse:
Inheritance graph
Collaboration diagram for libdap::PipeResponse:
Collaboration graph

Public Member Functions

virtual FILE * get_stream () const
 
 PipeResponse (FILE *s)
 Initialize with a stream returned by popen(). More...
 
virtual void set_stream (FILE *s)
 
virtual ~PipeResponse ()
 
getters
virtual int get_status () const
 
virtual std::istream * get_cpp_stream () const
 
virtual ObjectType get_type () const
 
virtual std::string get_version () const
 
virtual std::string get_protocol () const
 
setters
virtual void set_status (int s)
 
virtual void set_cpp_stream (std::istream *s)
 
virtual void set_type (ObjectType o)
 
virtual void set_version (const std::string &v)
 
virtual void set_protocol (const std::string &p)
 

Detailed Description

Definition at line 47 of file PipeResponse.h.

Constructor & Destructor Documentation

libdap::PipeResponse::PipeResponse ( FILE *  s)
inline

Create an instance initialized to a stream returned by popen(). By default get_type() and get_version() return default values of unknown_type and "dods/0.0", respectively. Note that this class closes the stream.

Note
Since Unix provides no easy way to differentiate between a FILE* returned by fopen() or popen(), you're on your own here. Make sure you use the correct type of FILE Pointer.
See also
Response
Parameters
sPointer to a pipe stream returned by popen().

Definition at line 70 of file PipeResponse.h.

virtual libdap::PipeResponse::~PipeResponse ( )
inlinevirtual

Close the stream.

Definition at line 74 of file PipeResponse.h.

Member Function Documentation

virtual std::istream* libdap::Response::get_cpp_stream ( ) const
inlinevirtualinherited
virtual int libdap::Response::get_status ( ) const
inlinevirtualinherited

Definition at line 105 of file Response.h.

Referenced by libdap::HTTPConnect::fetch_url().

virtual FILE* libdap::PipeResponse::get_stream ( ) const
inlinevirtual

Reimplemented from libdap::Response.

Definition at line 80 of file PipeResponse.h.

virtual void libdap::Response::set_cpp_stream ( std::istream *  s)
inlinevirtualinherited
virtual void libdap::Response::set_protocol ( const std::string &  p)
inlinevirtualinherited

Definition at line 123 of file Response.h.

Referenced by libdap::HTTPConnect::fetch_url().

virtual void libdap::Response::set_status ( int  s)
inlinevirtualinherited

Definition at line 116 of file Response.h.

virtual void libdap::PipeResponse::set_stream ( FILE *  s)
inlinevirtual

Reimplemented from libdap::Response.

Definition at line 84 of file PipeResponse.h.

virtual void libdap::Response::set_type ( ObjectType  o)
inlinevirtualinherited
virtual void libdap::Response::set_version ( const std::string &  v)
inlinevirtualinherited

Definition at line 122 of file Response.h.

Referenced by libdap::HTTPConnect::fetch_url().


The documentation for this class was generated from the following file: