BESKeysResponseHandler Class Reference

response handler that returns the list of keys defined in the BES initialization file. More...

#include <BESKeysResponseHandler.h>

Inheritance diagram for BESKeysResponseHandler:

Inheritance graph
[legend]
Collaboration diagram for BESKeysResponseHandler:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 BESKeysResponseHandler (string name)
virtual ~BESKeysResponseHandler (void)
virtual void execute (BESDataHandlerInterface &dhi)
 executes the command 'show keys;' by returning the list of all key/value pairs defined in the BES initialization file.
virtual void transmit (BESTransmitter *transmitter, BESDataHandlerInterface &dhi)
 transmit the response 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 BESResponseHandlerKeysResponseBuilder (string handler_name)

Protected Attributes

string _response_name
BESResponseObject_response

Detailed Description

response handler that returns the list of keys defined in the BES initialization file.

A request 'show keys;' will be handled by this response handler. It returns the list of all key/value pairs currently defined in the BES initialization file and transmits the response as an informational response.

See also:
BESResponseObject

BESContainer

BESTransmitter

Definition at line 49 of file BESKeysResponseHandler.h.


Constructor & Destructor Documentation

BESKeysResponseHandler::BESKeysResponseHandler ( string  name  ) 

Definition at line 39 of file BESKeysResponseHandler.cc.

Referenced by KeysResponseBuilder().

BESKeysResponseHandler::~BESKeysResponseHandler ( void   )  [virtual]

Definition at line 44 of file BESKeysResponseHandler.cc.


Member Function Documentation

void BESKeysResponseHandler::execute ( BESDataHandlerInterface dhi  )  [virtual]

executes the command 'show keys;' by returning the list of all key/value pairs defined in the BES initialization file.

This response handler knows how to retrieve the list of keys retrieved from the BES initialization file and stored in TheBESKeys. A BESInfo informational response object is built to hold all of the key/value pairs.

The information is returned, one key per line, like:

key: "&lt;key_name&gt;", value: "&lt;key_value&gt"

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

BESInfo

TheBESKeys

Implements BESResponseHandler.

Definition at line 69 of file BESKeysResponseHandler.cc.

References BESResponseHandler::_response, _BESDataHandlerInterface::action_name, BESInfo::add_tag(), BESInfo::begin_response(), BESInfo::begin_tag(), BESInfoList::build_info(), BESInfo::end_response(), BESInfo::end_tag(), BESKeys::keys_begin(), BESKeys::keys_end(), KEYS_RESPONSE_STR, TheBESKeys::TheKeys(), and BESInfoList::TheList().

Here is the call graph for this function:

void BESKeysResponseHandler::transmit ( BESTransmitter transmitter,
BESDataHandlerInterface dhi 
) [virtual]

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

If a response object was built then transmit it as text 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
See also:
BESInfo

BESTransmitter

_BESDataHandlerInterface

Implements BESResponseHandler.

Definition at line 103 of file BESKeysResponseHandler.cc.

References BESResponseHandler::_response, and BESInfo::transmit().

Here is the call graph for this function:

void BESKeysResponseHandler::dump ( ostream &  strm  )  const [virtual]

dumps information about this object

Displays the pointer value of this instance

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

Reimplemented from BESResponseHandler.

Definition at line 120 of file BESKeysResponseHandler.cc.

References BESResponseHandler::dump(), BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().

Here is the call graph for this function:

BESResponseHandler * BESKeysResponseHandler::KeysResponseBuilder ( string  handler_name  )  [static]

Definition at line 130 of file BESKeysResponseHandler.cc.

References BESKeysResponseHandler().

Referenced by BESDefaultModule::initialize().

Here is the call graph for this function:

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

Definition at line 53 of file BESResponseHandler.cc.

References BESResponseHandler::_response.

Referenced by TestRequestHandler::cdf_build_help(), BESDapRequestHandler::dap_build_help(), BESDapRequestHandler::dap_build_version(), OPENDAP_CLASSRequestHandler::OPENDAP_TYPE_build_help(), and OPENDAP_CLASSRequestHandler::OPENDAP_TYPE_build_vers().

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

Definition at line 59 of file BESResponseHandler.cc.

References BESResponseHandler::_response.

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

Definition at line 156 of file BESResponseHandler.h.

References BESResponseHandler::_response_name.

Referenced by resplistT::run().


Member Data Documentation

string BESResponseHandler::_response_name [protected, inherited]

Definition at line 84 of file BESResponseHandler.h.

Referenced by BESResponseHandler::dump(), BESDDXResponseHandler::execute(), and BESResponseHandler::get_name().

BESResponseObject* BESResponseHandler::_response [protected, inherited]

Definition at line 85 of file BESResponseHandler.h.

Referenced by BESResponseHandler::dump(), OPENDAP_RESPONSEResponseHandler::execute(), BESVersionResponseHandler::execute(), BESStreamResponseHandler::execute(), BESStatusResponseHandler::execute(), BESShowDefsResponseHandler::execute(), BESShowContextResponseHandler::execute(), BESShowContainersResponseHandler::execute(), BESSetContextResponseHandler::execute(), BESSetContainerResponseHandler::execute(), BESProcIdResponseHandler::execute(), execute(), BESHelpResponseHandler::execute(), BESDelDefsResponseHandler::execute(), BESDelDefResponseHandler::execute(), BESDelContainersResponseHandler::execute(), BESDelContainerResponseHandler::execute(), BESDefineResponseHandler::execute(), BESDDXResponseHandler::execute(), BESDDSResponseHandler::execute(), BESDataResponseHandler::execute(), BESDASResponseHandler::execute(), BESCatalogResponseHandler::execute(), BESResponseHandler::get_response_object(), BESResponseHandler::set_response_object(), OPENDAP_RESPONSEResponseHandler::transmit(), BESVersionResponseHandler::transmit(), BESStatusResponseHandler::transmit(), BESShowDefsResponseHandler::transmit(), BESShowContextResponseHandler::transmit(), BESShowContainersResponseHandler::transmit(), BESSetContextResponseHandler::transmit(), BESSetContainerResponseHandler::transmit(), BESProcIdResponseHandler::transmit(), transmit(), BESHelpResponseHandler::transmit(), BESDelDefsResponseHandler::transmit(), BESDelDefResponseHandler::transmit(), BESDelContainersResponseHandler::transmit(), BESDelContainerResponseHandler::transmit(), BESDefineResponseHandler::transmit(), BESDDXResponseHandler::transmit(), BESDDSResponseHandler::transmit(), BESDataResponseHandler::transmit(), BESDASResponseHandler::transmit(), BESCatalogResponseHandler::transmit(), and BESResponseHandler::~BESResponseHandler().


The documentation for this class was generated from the following files:
Generated on Wed Aug 29 03:24:01 2007 for OPeNDAP Back End Server (BES) by  doxygen 1.5.2