OPENDAP_RESPONSEResponseHandler Class Reference

#include <ResponseHandler.h>

Inheritance diagram for OPENDAP_RESPONSEResponseHandler:

Inheritance graph
[legend]
Collaboration diagram for OPENDAP_RESPONSEResponseHandler:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 OPENDAP_RESPONSEResponseHandler (string name)
virtual ~OPENDAP_RESPONSEResponseHandler (void)
virtual void execute (BESDataHandlerInterface &dhi)
 knows how to build a requested response object
virtual void transmit (BESTransmitter *transmitter, BESDataHandlerInterface &dhi)
 transmit the respobse object built by the execute command using the specified transmitter object
virtual void dump (ostream &strm) const
 dumps information about this object
virtual BESResponseObjectget_response_object ()
 return the current response object
virtual BESResponseObjectset_response_object (BESResponseObject *o)
 replaces the current response object with the specified one, returning the current response object
virtual const string & get_name () const
 return the name of this response object

Static Public Member Functions

static BESResponseHandlerOPENDAP_RESPONSEResponseBuilder (string handler_name)

Protected Attributes

string _response_name
BESResponseObject_response

Constructor & Destructor Documentation

OPENDAP_RESPONSEResponseHandler::OPENDAP_RESPONSEResponseHandler string  name  ) 
 

OPENDAP_RESPONSEResponseHandler::~OPENDAP_RESPONSEResponseHandler void   )  [virtual]
 


Member Function Documentation

void OPENDAP_RESPONSEResponseHandler::dump ostream &  strm  )  const [virtual]
 

dumps information about this object

Displays the pointer value of this instance along with the name of this response handler and, if present, dumps the response object itself.

Parameters:
strm C++ i/o stream to dump the information to

Reimplemented from BESResponseHandler.

void OPENDAP_RESPONSEResponseHandler::execute BESDataHandlerInterface dhi  )  [virtual]
 

knows how to build a requested response object

Derived instances of this abstract base class know how to create a specific response object and what objects (including itself) to pass that response object to for it to be filled in.

Parameters:
dhi structure that holds request and response information
Exceptions:
BESHandlerException if there is a problem building the response object
BESResponseException upon fatal error building the response object
See also:
_BESDataHandlerInterface

BESResponseObject

Implements BESResponseHandler.

virtual const string& BESResponseHandler::get_name  )  const [inline, virtual, inherited]
 

return the name of this response object

This name is used to determine which response handler can handle a requested responose, such as das, dds, ddx, tab, info, version, help, etc...

Returns:
response name

BESResponseObject * BESResponseHandler::get_response_object  )  [virtual, inherited]
 

return the current response object

Returns the current response object, null if one has not yet been created. The response handler maintains ownership of the response object.

Returns:
current response object
See also:
BESResponseObject

BESResponseHandler * OPENDAP_RESPONSEResponseHandler::OPENDAP_RESPONSEResponseBuilder string  handler_name  )  [static]
 

BESResponseObject * BESResponseHandler::set_response_object BESResponseObject o  )  [virtual, inherited]
 

replaces the current response object with the specified one, returning the current response object

This method is used to replace the response object with a new one, for example if during aggregation a new response object is built from the current response object.

The caller of set_response_object now owns the returned response object. The new response object is now owned by the response object.

Parameters:
o new response object used to replace the current one
Returns:
the response object being replaced
See also:
BESResponseObject

void OPENDAP_RESPONSEResponseHandler::transmit BESTransmitter transmitter,
BESDataHandlerInterface dhi
[virtual]
 

transmit the respobse object built by the execute command using the specified transmitter object

Parameters:
transmitter object that knows how to transmit specific basic types
dhi structure that holds the request and response information
Exceptions:
BESTransmitException if problem transmitting the response obj
See also:
BESResponseObject

BESTransmitter

_BESDataHandlerInterface

BESTransmitException

Implements BESResponseHandler.


Member Data Documentation

BESResponseObject* BESResponseHandler::_response [protected, inherited]
 

string BESResponseHandler::_response_name [protected, inherited]
 


The documentation for this class was generated from the following files:
Generated on Tue Feb 13 11:16:50 2007 for OPeNDAP Back End Server (BES) by  doxygen 1.4.6