00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #include <iostream>
00034
00035 using std::endl ;
00036
00037 #include "BESDefaultModule.h"
00038
00039 #include "BESResponseNames.h"
00040 #include "BESResponseHandlerList.h"
00041
00042 #include "BESHelpResponseHandler.h"
00043 #include "BESProcIdResponseHandler.h"
00044 #include "BESVersionResponseHandler.h"
00045 #include "BESKeysResponseHandler.h"
00046 #include "BESStatusResponseHandler.h"
00047 #include "BESStreamResponseHandler.h"
00048
00049 #include "BESSetContainerResponseHandler.h"
00050 #include "BESShowContainersResponseHandler.h"
00051 #include "BESDelContainerResponseHandler.h"
00052 #include "BESDelContainersResponseHandler.h"
00053 #include "BESContainerStorageList.h"
00054 #include "BESContainerStorageVolatile.h"
00055
00056 #include "BESDefineResponseHandler.h"
00057 #include "BESShowDefsResponseHandler.h"
00058 #include "BESDelDefResponseHandler.h"
00059 #include "BESDelDefsResponseHandler.h"
00060 #include "BESDefinitionStorageList.h"
00061 #include "BESDefinitionStorageVolatile.h"
00062
00063 #include "BESSetContextResponseHandler.h"
00064 #include "BESShowContextResponseHandler.h"
00065
00066 #include "BESTransmitterNames.h"
00067 #include "BESReturnManager.h"
00068 #include "BESBasicTransmitter.h"
00069 #include "BESBasicHttpTransmitter.h"
00070
00071 #include "BESDebug.h"
00072
00073 #include "BESTextInfo.h"
00074 #include "BESHTMLInfo.h"
00075 #include "BESXMLInfo.h"
00076 #include "BESInfoList.h"
00077 #include "BESInfoNames.h"
00078
00079 int
00080 BESDefaultModule::initialize(int, char**)
00081 {
00082 BESDEBUG( "bes", "Initializing default modules:" << endl )
00083
00084 BESDEBUG( "bes", " adding " << HELP_RESPONSE << " response handler" << endl )
00085 BESResponseHandlerList::TheList()->add_handler( HELP_RESPONSE, BESHelpResponseHandler::HelpResponseBuilder ) ;
00086
00087 BESDEBUG( "bes", " adding " << PROCESS_RESPONSE << " response handler" << endl )
00088 BESResponseHandlerList::TheList()->add_handler( PROCESS_RESPONSE, BESProcIdResponseHandler::ProcIdResponseBuilder ) ;
00089
00090 BESDEBUG( "bes", " adding " << KEYS_RESPONSE << " response handler" << endl )
00091 BESResponseHandlerList::TheList()->add_handler( KEYS_RESPONSE, BESKeysResponseHandler::KeysResponseBuilder ) ;
00092
00093 BESDEBUG( "bes", " adding " << VERS_RESPONSE << " response handler" << endl )
00094 BESResponseHandlerList::TheList()->add_handler( VERS_RESPONSE, BESVersionResponseHandler::VersionResponseBuilder ) ;
00095
00096 BESDEBUG( "bes", " adding " << STATUS_RESPONSE << " response handler" << endl )
00097 BESResponseHandlerList::TheList()->add_handler( STATUS_RESPONSE, BESStatusResponseHandler::StatusResponseBuilder ) ;
00098
00099 BESDEBUG( "bes", " adding " << STREAM_RESPONSE << " response handler" << endl )
00100 BESResponseHandlerList::TheList()->add_handler( STREAM_RESPONSE, BESStreamResponseHandler::BESStreamResponseBuilder ) ;
00101
00102 BESDEBUG( "bes", " adding " << SETCONTAINER << " response handler" << endl )
00103 BESResponseHandlerList::TheList()->add_handler( SETCONTAINER, BESSetContainerResponseHandler::SetContainerResponseBuilder ) ;
00104
00105 BESDEBUG( "bes", " adding " << SHOWCONTAINERS_RESPONSE << " response handler"
00106 << endl )
00107 BESResponseHandlerList::TheList()->add_handler( SHOWCONTAINERS_RESPONSE, BESShowContainersResponseHandler::ShowContainersResponseBuilder ) ;
00108
00109 BESDEBUG( "bes", " adding " << DELETE_CONTAINER << " response handler" << endl )
00110 BESResponseHandlerList::TheList()->add_handler( DELETE_CONTAINER, BESDelContainerResponseHandler::DelContainerResponseBuilder ) ;
00111
00112 BESDEBUG( "bes", " adding " << DELETE_CONTAINERS << " response handler" << endl)
00113 BESResponseHandlerList::TheList()->add_handler( DELETE_CONTAINERS, BESDelContainersResponseHandler::DelContainersResponseBuilder ) ;
00114
00115 BESDEBUG( "bes", " adding " << PERSISTENCE_VOLATILE << " container persistence"
00116 << endl )
00117 BESContainerStorageList::TheList()->add_persistence( new BESContainerStorageVolatile( PERSISTENCE_VOLATILE ) ) ;
00118
00119 BESDEBUG( "bes", " adding " << DEFINE_RESPONSE << " response handler" << endl )
00120 BESResponseHandlerList::TheList()->add_handler( DEFINE_RESPONSE, BESDefineResponseHandler::DefineResponseBuilder ) ;
00121
00122 BESDEBUG( "bes", " adding " << SHOWDEFS_RESPONSE << " response handler" << endl)
00123 BESResponseHandlerList::TheList()->add_handler( SHOWDEFS_RESPONSE, BESShowDefsResponseHandler::ShowDefsResponseBuilder ) ;
00124
00125 BESDEBUG( "bes", " adding " << DELETE_DEFINITION << " response handler" << endl)
00126 BESResponseHandlerList::TheList()->add_handler( DELETE_DEFINITION, BESDelDefResponseHandler::DelDefResponseBuilder ) ;
00127
00128 BESDEBUG( "bes", " adding " << DELETE_DEFINITIONS << " response handler"
00129 << endl )
00130 BESResponseHandlerList::TheList()->add_handler( DELETE_DEFINITIONS, BESDelDefsResponseHandler::DelDefsResponseBuilder ) ;
00131
00132 BESDEBUG( "bes", " adding " << PERSISTENCE_VOLATILE << " definition persistence"
00133 << endl )
00134 BESDefinitionStorageList::TheList()->add_persistence( new BESDefinitionStorageVolatile( PERSISTENCE_VOLATILE ) ) ;
00135
00136 BESDEBUG( "bes", " adding " << SET_CONTEXT << " response handler" << endl)
00137 BESResponseHandlerList::TheList()->add_handler( SET_CONTEXT, BESSetContextResponseHandler::SetContextResponseBuilder ) ;
00138
00139 BESDEBUG( "bes", " adding " << SHOW_CONTEXT << " response handler" << endl)
00140 BESResponseHandlerList::TheList()->add_handler( SHOW_CONTEXT, BESShowContextResponseHandler::ShowContextResponseBuilder ) ;
00141
00142 BESDEBUG( "bes", " adding " << BASIC_TRANSMITTER << " transmitter" << endl )
00143 BESReturnManager::TheManager()->add_transmitter( BASIC_TRANSMITTER, new BESBasicTransmitter ) ;
00144
00145 BESDEBUG( "bes", " adding " << HTTP_TRANSMITTER << " transmitter" << endl )
00146 BESReturnManager::TheManager()->add_transmitter( HTTP_TRANSMITTER, new BESBasicHttpTransmitter ) ;
00147
00148 BESDEBUG( "bes", " adding " << BES_TEXT_INFO << " info builder" << endl )
00149 BESInfoList::TheList()->add_info_builder( BES_TEXT_INFO,
00150 BESTextInfo::BuildTextInfo ) ;
00151
00152 BESDEBUG( "bes", " adding " << BES_HTML_INFO << " info builder" << endl )
00153 BESInfoList::TheList()->add_info_builder( BES_HTML_INFO,
00154 BESHTMLInfo::BuildHTMLInfo ) ;
00155
00156 BESDEBUG( "bes", " adding " << BES_XML_INFO << " info builder" << endl )
00157 BESInfoList::TheList()->add_info_builder( BES_XML_INFO,
00158 BESXMLInfo::BuildXMLInfo ) ;
00159
00160 BESDEBUG( "bes", " adding bes debug context" << endl )
00161 BESDebug::Register( "bes" ) ;
00162
00163 BESDEBUG( "bes", "Done Initializing default modules:" << endl )
00164
00165 return 0 ;
00166 }
00167
00168 int
00169 BESDefaultModule::terminate(void)
00170 {
00171 BESDEBUG( "bes", "Removing default modules" << endl )
00172
00173 BESResponseHandlerList::TheList()->remove_handler( HELP_RESPONSE ) ;
00174 BESResponseHandlerList::TheList()->remove_handler( VERS_RESPONSE ) ;
00175 BESResponseHandlerList::TheList()->remove_handler( PROCESS_RESPONSE ) ;
00176 BESResponseHandlerList::TheList()->remove_handler( KEYS_RESPONSE ) ;
00177 BESResponseHandlerList::TheList()->remove_handler( STATUS_RESPONSE ) ;
00178
00179 BESResponseHandlerList::TheList()->remove_handler( SETCONTAINER ) ;
00180 BESResponseHandlerList::TheList()->remove_handler( SHOWCONTAINERS_RESPONSE ) ;
00181 BESResponseHandlerList::TheList()->remove_handler( DELETE_CONTAINER ) ;
00182 BESResponseHandlerList::TheList()->remove_handler( DELETE_CONTAINERS ) ;
00183 BESContainerStorageList::TheList()->del_persistence( PERSISTENCE_VOLATILE ) ;
00184
00185 BESResponseHandlerList::TheList()->remove_handler( DEFINE_RESPONSE ) ;
00186 BESResponseHandlerList::TheList()->remove_handler( SHOWDEFS_RESPONSE ) ;
00187 BESResponseHandlerList::TheList()->remove_handler( DELETE_DEFINITION ) ;
00188 BESResponseHandlerList::TheList()->remove_handler( DELETE_DEFINITIONS ) ;
00189 BESDefinitionStorageList::TheList()->del_persistence( PERSISTENCE_VOLATILE ) ;
00190
00191 BESResponseHandlerList::TheList()->remove_handler( SET_CONTEXT ) ;
00192 BESResponseHandlerList::TheList()->remove_handler( SHOW_CONTEXT ) ;
00193
00194 BESReturnManager::TheManager()->del_transmitter( BASIC_TRANSMITTER ) ;
00195 BESReturnManager::TheManager()->del_transmitter( HTTP_TRANSMITTER ) ;
00196
00197 BESDEBUG( "bes", "Done Removing default modules" << endl )
00198
00199 return 0 ;
00200 }
00201