|
OPeNDAP Hyrax Back End Server (BES)
Updated for version 3.8.3
|
#include <DapRequestHandler.h>


Public Types | |
| typedef map< string, p_request_handler >::const_iterator | Handler_citer |
| typedef map< string, p_request_handler >::iterator | Handler_iter |
Public Member Functions | |
| 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 More... | |
| DapRequestHandler (const string &name) | |
| virtual void | dump (ostream &strm) const |
| dumps information about this object More... | |
| virtual p_request_handler | find_handler (const string &handler_name) |
| find the method that can handle the specified response object type More... | |
| virtual string | get_handler_names () |
| return a comma separated list of response object types handled by this request handler More... | |
| virtual const string & | get_name () const |
| virtual bool | remove_handler (const string &handler_name) |
| remove the specified handler method from this request handler More... | |
| virtual | ~DapRequestHandler (void) |
Static Public Member Functions | |
| static bool | dap_build_dap4data (BESDataHandlerInterface &dhi) |
| static bool | dap_build_das (BESDataHandlerInterface &dhi) |
| This method will look at the extension on the input file and assume that if it's .das, that file should be read and used to build the DAS object. More... | |
| static bool | dap_build_data (BESDataHandlerInterface &dhi) |
| static bool | dap_build_dds (BESDataHandlerInterface &dhi) |
| static bool | dap_build_dmr (BESDataHandlerInterface &dhi) |
| Given a request for the DMR response, look at the data source and parse it's DMR/XML information. More... | |
| static bool | dap_build_help (BESDataHandlerInterface &dhi) |
| static bool | dap_build_vers (BESDataHandlerInterface &dhi) |
Definition at line 35 of file DapRequestHandler.h.
|
inherited |
Definition at line 83 of file BESRequestHandler.h.
|
inherited |
Definition at line 84 of file BESRequestHandler.h.
| DapRequestHandler::DapRequestHandler | ( | const string & | name | ) |
Definition at line 100 of file DapRequestHandler.cc.
References BESRequestHandler::add_handler(), DAP4DATA_RESPONSE, dap_build_dap4data(), dap_build_das(), dap_build_data(), dap_build_dds(), dap_build_dmr(), dap_build_help(), dap_build_vers(), DAS_RESPONSE, DATA_RESPONSE, DDS_RESPONSE, DMR_RESPONSE, HELP_RESPONSE, and VERS_RESPONSE.

|
inlinevirtual |
Definition at line 49 of file DapRequestHandler.h.
|
virtualinherited |
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.
| 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 |
Definition at line 51 of file BESRequestHandler.cc.
References BESRequestHandler::find_handler().
Referenced by BESAsciiRequestHandler::BESAsciiRequestHandler(), BESDapRequestHandler::BESDapRequestHandler(), BESUsageRequestHandler::BESUsageRequestHandler(), BESWWWRequestHandler::BESWWWRequestHandler(), BESXDRequestHandler::BESXDRequestHandler(), CSVRequestHandler::CSVRequestHandler(), DapRequestHandler(), FFRequestHandler::FFRequestHandler(), FitsRequestHandler::FitsRequestHandler(), FoJsonRequestHandler::FoJsonRequestHandler(), FONcRequestHandler::FONcRequestHandler(), FONgRequestHandler::FONgRequestHandler(), GatewayRequestHandler::GatewayRequestHandler(), GDALRequestHandler::GDALRequestHandler(), HDF4RequestHandler::HDF4RequestHandler(), HDF5RequestHandler::HDF5RequestHandler(), ncml_module::NCMLRequestHandler::NCMLRequestHandler(), NCRequestHandler::NCRequestHandler(), and W10nJsonRequestHandler::W10nJsonRequestHandler().

|
static |
Definition at line 303 of file DapRequestHandler.cc.
References BESContainer::access(), BESDEBUG, BESDataHandlerInterface::container, BESDMRResponse::get_dmr(), BESDapResponse::get_explicit_containers(), BESResponseHandler::get_response_object(), module, BESDataHandlerInterface::response_handler, BESDapResponse::set_dap4_constraint(), and BESDapResponse::set_dap4_function().
Referenced by DapRequestHandler().

|
static |
This method will look at the extension on the input file and assume that if it's .das, that file should be read and used to build the DAS object.
If it's .data or .dods, then the ancillary das file will be used.
| dhi |
Definition at line 353 of file DapRequestHandler.cc.
References BESContainer::access(), BESDASResponse::clear_container(), BESDataHandlerInterface::container, BESDASResponse::get_das(), BESResponseHandler::get_response_object(), BESContainer::get_symbolic_name(), BESDataHandlerInterface::response_handler, and BESDASResponse::set_container().
Referenced by DapRequestHandler().

|
static |
Definition at line 427 of file DapRequestHandler.cc.
References BESContainer::access(), BESDEBUG, BESDataDDSResponse::clear_container(), BESDataHandlerInterface::container, BESDataDDSResponse::get_dds(), BESDapResponse::get_explicit_containers(), BESResponseHandler::get_response_object(), BESContainer::get_symbolic_name(), module, BESDataHandlerInterface::response_handler, BESDapResponse::set_constraint(), and BESDataDDSResponse::set_container().
Referenced by DapRequestHandler().

|
static |
Definition at line 393 of file DapRequestHandler.cc.
References BESContainer::access(), BESDEBUG, BESDDSResponse::clear_container(), BESDataHandlerInterface::container, BESDDSResponse::get_dds(), BESDapResponse::get_explicit_containers(), BESResponseHandler::get_response_object(), BESContainer::get_symbolic_name(), module, BESDataHandlerInterface::response_handler, BESDapResponse::set_constraint(), and BESDDSResponse::set_container().
Referenced by DapRequestHandler().

|
static |
Given a request for the DMR response, look at the data source and parse it's DMR/XML information.
If the data source is a .dmr or .xml file, assume that's all the data source contains and that the plain DMR parser can be used. If the data source is a .dap file, assume it is a DAP4 data response that has been dumped to a file, sans MIME headers. Use the code in libdap::Connect to read the DMR.
| dhi |
Definition at line 265 of file DapRequestHandler.cc.
References BESContainer::access(), BESDEBUG, BESDataHandlerInterface::container, BESDMRResponse::get_dmr(), BESDapResponse::get_explicit_containers(), BESResponseHandler::get_response_object(), module, BESDataHandlerInterface::response_handler, BESDapResponse::set_dap4_constraint(), and BESDapResponse::set_dap4_function().
Referenced by DapRequestHandler().

|
static |
Definition at line 469 of file DapRequestHandler.cc.
References BESInfo::begin_tag(), DAPREADER_PACKAGE, DAPREADER_VERSION, BESInfo::end_tag(), BESResponseHandler::get_response_object(), BESUtil::implode(), module, BESDataHandlerInterface::response_handler, BESServiceRegistry::services_handled(), and BESServiceRegistry::TheRegistry().
Referenced by DapRequestHandler().

|
static |
Definition at line 461 of file DapRequestHandler.cc.
References BESVersionInfo::add_module(), DAPREADER_PACKAGE, DAPREADER_VERSION, BESResponseHandler::get_response_object(), and BESDataHandlerInterface::response_handler.
Referenced by DapRequestHandler().

|
virtual |
dumps information about this object
Displays the pointer value of this instance, the name of the request handler, and the names of all registered handler functions
| strm | C++ i/o stream to dump the information to |
Reimplemented from BESRequestHandler.
Definition at line 491 of file DapRequestHandler.cc.
References BESRequestHandler::dump(), BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().

|
virtualinherited |
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.
| handler_name | name of the method that can fill in the response object type |
Definition at line 93 of file BESRequestHandler.cc.
Referenced by BESRequestHandler::add_handler(), BESRequestHandlerList::execute_all(), and BESRequestHandlerList::execute_current().
|
virtualinherited |
return a comma separated list of response object types handled by this request handler
Definition at line 112 of file BESRequestHandler.cc.
|
inlinevirtualinherited |
Definition at line 86 of file BESRequestHandler.h.
|
virtualinherited |
remove the specified handler method from this request handler
| handler_name | name of the method to be removed, same as the name of the response object |
Definition at line 70 of file BESRequestHandler.cc.