BESDapRequestHandler Class Reference

#include <BESDapRequestHandler.h>

Inheritance diagram for BESDapRequestHandler:

Inheritance graph
[legend]
Collaboration diagram for BESDapRequestHandler:

Collaboration graph
[legend]

List of all members.

Public Types

typedef map< string,
p_request_handler >
::const_iterator 
Handler_citer
typedef map< string,
p_request_handler >::iterator 
Handler_iter

Public Member Functions

 BESDapRequestHandler (const string &name)
virtual ~BESDapRequestHandler (void)
virtual void dump (ostream &strm) const
 dumps information about this object
virtual const string & get_name () const
virtual bool add_handler (const string &handler_name, p_request_handler handler_method)
 add a handler method to the request handler that knows how to fill in a specific response object
virtual bool remove_handler (const string &handler_name)
 remove the specified handler method from this request handler
virtual p_request_handler find_handler (const string &handler_name)
 find the method that can handle the specified response object type
virtual string get_handler_names ()
 return a comma separated list of response object types handled by this request handler

Static Public Member Functions

static bool dap_build_help (BESDataHandlerInterface &dhi)
static bool dap_build_version (BESDataHandlerInterface &dhi)


Detailed Description

Definition at line 39 of file BESDapRequestHandler.h.


Member Typedef Documentation

typedef map< string, p_request_handler >::const_iterator BESRequestHandler::Handler_citer [inherited]

Definition at line 82 of file BESRequestHandler.h.

typedef map< string, p_request_handler >::iterator BESRequestHandler::Handler_iter [inherited]

Definition at line 83 of file BESRequestHandler.h.


Constructor & Destructor Documentation

BESDapRequestHandler::BESDapRequestHandler ( const string &  name  ) 

Definition at line 41 of file BESDapRequestHandler.cc.

References BESRequestHandler::add_handler(), dap_build_help(), dap_build_version(), HELP_RESPONSE, and VERS_RESPONSE.

Here is the call graph for this function:

BESDapRequestHandler::~BESDapRequestHandler ( void   )  [virtual]

Definition at line 48 of file BESDapRequestHandler.cc.


Member Function Documentation

void BESDapRequestHandler::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 BESRequestHandler.

Definition at line 83 of file BESDapRequestHandler.cc.

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

Here is the call graph for this function:

bool BESDapRequestHandler::dap_build_help ( BESDataHandlerInterface dhi  )  [static]

Definition at line 53 of file BESDapRequestHandler.cc.

References BESInfo::add_data_from_file(), BESInfo::begin_tag(), BESInfo::end_tag(), BESResponseHandler::get_response_object(), and _BESDataHandlerInterface::response_handler.

Referenced by BESDapRequestHandler().

Here is the call graph for this function:

bool BESDapRequestHandler::dap_build_version ( BESDataHandlerInterface dhi  )  [static]

Definition at line 64 of file BESDapRequestHandler.cc.

References BESVersionInfo::add_tag(), BESVersionInfo::begin_tag(), BESVersionInfo::end_tag(), BESResponseHandler::get_response_object(), and _BESDataHandlerInterface::response_handler.

Referenced by BESDapRequestHandler().

Here is the call graph for this function:

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

Definition at line 85 of file BESRequestHandler.h.

Referenced by reqlistT::run().

bool BESRequestHandler::add_handler ( const string &  handler_name,
p_request_handler  handler_method 
) [virtual, inherited]

add a handler method to the request handler that knows how to fill in a specific response object

Add a handler method for a specific response object to the request handler. The handler method takes a reference to a BESDataHandlerInterface and returns bool, true if the response object is filled in successfully by the method, false otherwise.

Parameters:
handler_name name of the response object this method can fill in
handler_method a function pointer to the method that can fill in the specified response object
Returns:
true if the handler is added, false if it already exists
See also:
BESResponseObject

BESResponseNames

Definition at line 51 of file BESRequestHandler.cc.

References BESRequestHandler::find_handler().

Referenced by BESDapRequestHandler(), OPENDAP_CLASSRequestHandler::OPENDAP_CLASSRequestHandler(), TestRequestHandler::test(), and TestRequestHandler::TestRequestHandler().

Here is the call graph for this function:

bool BESRequestHandler::remove_handler ( const string &  handler_name  )  [virtual, inherited]

remove the specified handler method from this request handler

Parameters:
handler_name name of the method to be removed, same as the name of the response object
Returns:
true if successfully removed, false if not found
See also:
BESResponseNames

Definition at line 70 of file BESRequestHandler.cc.

Referenced by TestRequestHandler::test().

p_request_handler BESRequestHandler::find_handler ( const string &  handler_name  )  [virtual, inherited]

find the method that can handle the specified response object type

Find the method that can handle the specified response object type. The response object type is the same as the handler name.

Parameters:
handler_name name of the method that can fill in the response object type
Returns:
the method that can fill in the specified response object type
See also:
BESResponseObject

BESResponseNames

Definition at line 93 of file BESRequestHandler.cc.

Referenced by BESRequestHandler::add_handler(), BESRequestHandlerList::execute_all(), BESRequestHandlerList::execute_current(), and TestRequestHandler::test().

string BESRequestHandler::get_handler_names (  )  [virtual, inherited]

return a comma separated list of response object types handled by this request handler

Returns:
the comma separated list of response object types
See also:
BESResponseObject

BESResponseNames

Definition at line 112 of file BESRequestHandler.cc.


The documentation for this class was generated from the following files:
Generated on Wed Jan 2 06:03:34 2008 for OPeNDAP Back End Server (BES) by  doxygen 1.5.4