35#include <BESXDModule.h>
38#include <BESDapNames.h>
39#include <BESResponseNames.h>
40#include <BESResponseHandlerList.h>
41#include <BESRequestHandlerList.h>
43#include <BESDapService.h>
45#include <BESTransmitter.h>
46#include <BESReturnManager.h>
47#include <BESTransmitterNames.h>
49#include "BESXDNames.h"
50#include "BESXDResponseHandler.h"
51#include "BESXDRequestHandler.h"
52#include "BESXDTransmit.h"
54void BESXDModule::initialize(
const string &modname)
56 BESDEBUG(
"xd",
"Initializing OPeNDAP XD module " << modname << endl);
58 BESRequestHandler *handler =
new BESXDRequestHandler(modname);
59 BESRequestHandlerList::TheList()->add_handler(modname, handler);
61 BESResponseHandlerList::TheList()->add_handler(XD_RESPONSE, BESXDResponseHandler::XDResponseBuilder);
65 BESTransmitter *t = BESReturnManager::TheManager()->find_transmitter(DAP_FORMAT);
67 t->add_method(XD_TRANSMITTER, BESXDTransmit::send_basic_ascii);
71 BESDEBUG(
"xd",
"Done Initializing OPeNDAP XD module " << modname << endl);
74void BESXDModule::terminate(
const string &modname)
76 BESDEBUG(
"xd",
"Cleaning OPeNDAP XD module " << modname << endl);
78 BESRequestHandler *rh = BESRequestHandlerList::TheList()->remove_handler(modname);
82 BESResponseHandlerList::TheList()->remove_handler(XD_RESPONSE);
84 BESTransmitter *t = BESReturnManager::TheManager()->find_transmitter(DAP_FORMAT);
86 t->remove_method(XD_TRANSMITTER);
88 t = BESReturnManager::TheManager()->find_transmitter(DAP_FORMAT);
90 t->remove_method(XD_TRANSMITTER);
92 BESDEBUG(
"xd",
"Done Cleaning OPeNDAP XD module " << modname << endl);
103 strm << BESIndent::LMarg <<
"BESXDModule::dump - (" << (
void *)
this <<
")" << endl;
static void add_to_dap_service(const std::string &cmd, const std::string &desc)
static function to add commands to the dap service
static void Register(const std::string &flagName)
register the specified debug flag
virtual void dump(std::ostream &strm) const
dumps information about this object