36 #include "BESDapModule.h"
38 #include "BESDapRequestHandler.h"
39 #include "BESRequestHandlerList.h"
41 #include "BESDapNames.h"
43 #include "BESResponseHandlerList.h"
45 #include "BESDASResponseHandler.h"
46 #include "BESDDSResponseHandler.h"
47 #include "BESDataResponseHandler.h"
48 #include "BESDDXResponseHandler.h"
49 #include "BESDataDDXResponseHandler.h"
50 #include "BESDMRResponseHandler.h"
51 #include "BESDap4ResponseHandler.h"
54 #include "BESCatalogResponseHandler.h"
57 #include "BESServiceRegistry.h"
61 #include "BESDapNullAggregationServer.h"
63 #include "BESAggFactory.h"
66 #include "BESDapTransmit.h"
67 #include "BESTransmitter.h"
68 #include "BESReturnManager.h"
69 #include "BESTransmitterNames.h"
72 #include "BESInternalFatalError.h"
73 #include "BESDapError.h"
75 #include "DapFunctionUtils.h"
76 #include "ServerFunctionsList.h"
77 #include "ShowPathInfoResponseHandler.h"
80 void BESDapModule::initialize(
const string &modname)
82 BESDEBUG(
"dap",
"Initializing DAP Modules:" << endl);
85 BESResponseHandlerList::TheList()->
add_handler(DAS_RESPONSE, BESDASResponseHandler::DASResponseBuilder);
86 BESResponseHandlerList::TheList()->
add_handler( DDS_RESPONSE, BESDDSResponseHandler::DDSResponseBuilder );
87 BESResponseHandlerList::TheList()->
add_handler(DDX_RESPONSE, BESDDXResponseHandler::DDXResponseBuilder);
88 BESResponseHandlerList::TheList()->
add_handler(DATA_RESPONSE, BESDataResponseHandler::DataResponseBuilder);
89 BESResponseHandlerList::TheList()->
add_handler(DATADDX_RESPONSE, BESDataDDXResponseHandler::DataDDXResponseBuilder);
90 BESResponseHandlerList::TheList()->
add_handler(DMR_RESPONSE, BESDMRResponseHandler::DMRResponseBuilder);
91 BESResponseHandlerList::TheList()->
add_handler(DAP4DATA_RESPONSE, BESDap4ResponseHandler::Dap4ResponseBuilder);
94 BESDEBUG(
"dap",
" adding " << CATALOG_RESPONSE <<
" response handler" << endl);
95 BESResponseHandlerList::TheList()->
add_handler(CATALOG_RESPONSE, BESCatalogResponseHandler::CatalogResponseBuilder);
99 BESDEBUG(
"dap",
"Adding " << OPENDAP_SERVICE <<
" services:" << endl);
102 registry->
add_to_service(OPENDAP_SERVICE, DAS_SERVICE, DAS_DESCRIPT, DAP2_FORMAT);
103 registry->
add_to_service(OPENDAP_SERVICE, DDS_SERVICE, DDS_DESCRIPT, DAP2_FORMAT);
104 registry->
add_to_service(OPENDAP_SERVICE, DDX_SERVICE, DDX_DESCRIPT, DAP2_FORMAT);
105 registry->
add_to_service(OPENDAP_SERVICE, DATA_SERVICE, DATA_DESCRIPT, DAP2_FORMAT);
106 registry->
add_to_service(OPENDAP_SERVICE, DATADDX_SERVICE, DATADDX_DESCRIPT, DAP2_FORMAT);
108 registry->
add_to_service(OPENDAP_SERVICE, DMR_SERVICE, DMR_DESCRIPT, DAP2_FORMAT);
109 registry->
add_to_service(OPENDAP_SERVICE, DAP4DATA_SERVICE, DAP4DATA_DESCRIPT, DAP2_FORMAT);
111 BESDEBUG(
"dap",
"Initializing DAP Basic Transmitters:" << endl);
112 BESReturnManager::TheManager()->add_transmitter(DAP2_FORMAT,
new BESDapTransmit());
115 BESDEBUG(
"dap",
" adding DAP Utility Function 'wrapitup'()" << endl);
117 libdap::ServerFunctionsList::TheList()->add_function(wiu);
119 BESDEBUG(
"dap",
" adding " << SHOW_PATH_INFO_RESPONSE <<
" response handler" << endl ) ;
120 BESResponseHandlerList::TheList()->
add_handler( SHOW_PATH_INFO_RESPONSE, ShowPathInfoResponseHandler::ShowPathInfoResponseBuilder ) ;
122 BESDEBUG(
"dap",
" adding dap debug context" << endl);
125 BESDEBUG(
"dap",
"Done Initializing DAP Modules:" << endl);
128 void BESDapModule::terminate(
const string &modname)
130 BESDEBUG(
"dap",
"Removing DAP Modules:" << endl);
136 BESResponseHandlerList::TheList()->
remove_handler(DATADDX_RESPONSE);
138 BESResponseHandlerList::TheList()->
remove_handler(CATALOG_RESPONSE);
141 BESResponseHandlerList::TheList()->
remove_handler(DAP4DATA_RESPONSE);
144 BESResponseHandlerList::TheList()->
remove_handler(CATALOG_RESPONSE);
147 BESDEBUG(
"dap",
" removing " << OPENDAP_SERVICE <<
" services" << endl);
148 BESServiceRegistry::TheRegistry()->
remove_service(OPENDAP_SERVICE);
150 BESDEBUG(
"dap",
" removing dap Request Handler " << modname << endl);
154 BESReturnManager::TheManager()->del_transmitter(DAP2_FORMAT);
157 BESDEBUG(
"dap",
"Done Removing DAP Modules:" << endl);
168 strm << BESIndent::LMarg <<
"BESDapModule::dump - (" << (
void *)
this <<
")" << endl;