37 #include "BESDefineResponseHandler.h" 38 #include "BESSilentInfo.h" 39 #include "BESDefine.h" 40 #include "BESDefinitionStorageList.h" 41 #include "BESDefinitionStorage.h" 42 #include "BESDataNames.h" 43 #include "BESSyntaxUserError.h" 44 #include "BESResponseNames.h" 46 BESDefineResponseHandler::BESDefineResponseHandler(
const string &name )
51 BESDefineResponseHandler::~BESDefineResponseHandler( )
84 dhi.action_name = DEFINE_RESPONSE_STR ;
88 string def_name = dhi.
data[DEF_NAME] ;
89 string store_name = dhi.
data[STORE_NAME] ;
90 if( store_name ==
"" )
91 store_name = PERSISTENCE_VOLATILE ;
105 dd->set_agg_cmd( dhi.
data[AGG_CMD] ) ;
106 dd->set_agg_handler( dhi.
data[AGG_HANDLER] ) ;
107 dhi.
data[AGG_CMD] =
"" ;
108 dhi.
data[AGG_HANDLER] =
"" ;
114 string err_str = (string)
"Uanble to add definition \"" + def_name
115 +
"\" to \"" + store_name
116 +
"\" store. Store does not exist" ;
146 info->
transmit( transmitter, dhi ) ;
159 strm << BESIndent::LMarg <<
"BESDefineResponseHandler::dump - (" 160 << (
void *)
this <<
")" << endl ;
161 BESIndent::Indent() ;
163 BESIndent::UnIndent() ;
167 BESDefineResponseHandler::DefineResponseBuilder(
const string &name )
silent informational response object
provides persistent storage for a specific view of different containers including contraints and aggr...
exception thrown if inernal error encountered
virtual void execute(BESDataHandlerInterface &dhi)
executes the command to create a new definition.
response handler that creates a definition given container names and optionally constraints and attri...
void next_container()
set the container pointer to the next * container in the list, null if at the end or no containers in...
virtual void transmit(BESTransmitter *transmitter, BESDataHandlerInterface &dhi)=0
transmit the informational object
virtual BESDefinitionStorage * find_persistence(const string &persist_name)
find the persistence store with the given name
error thrown if there is a user syntax error in the request or any other user error ...
handler object that knows how to create a specific response object
informational response object
virtual bool add_definition(const string &def_name, BESDefine *d)=0
adds a given definition to this storage
virtual bool del_definition(const string &def_name)=0
deletes a defintion with the given name
virtual void transmit(BESTransmitter *transmitter, BESDataHandlerInterface &dhi)
transmit the response object built by the execute command using the specified transmitter object ...
virtual void dump(ostream &strm) const
dumps information about this object
Structure storing information used by the BES to handle the request.
map< string, string > data
the map of string data that will be required for the current request.
virtual void dump(ostream &strm) const
dumps information about this object
void first_container()
set the container pointer to the first container in the containers list
BESContainer * container
pointer to current container in this interface