33 #ifndef A_BESXMLCommand_h 34 #define A_BESXMLCommand_h 1 42 #include <libxml/encoding.h> 54 static map< string, p_xmlcmd_builder > cmd_list ;
55 typedef map< string, p_xmlcmd_builder >::iterator cmd_iter ;
89 virtual void dump( ostream &strm )
const ;
97 #endif // A_BESXMLCommand_h BESXMLCommand(const BESDataHandlerInterface &base_dhi)
Creates a BESXMLCommand document given a base data handler interface object.
static bool del_command(const string &cmd_str)
Deletes the command called cmd_str from the list of possible commands.
static void add_command(const string &cmd_str, p_xmlcmd_builder cmd)
Add a command to the possible commands allowed by this BES.
virtual void dump(ostream &strm) const
dumps information about this object
BESXMLCommand *(* p_xmlcmd_builder)(const BESDataHandlerInterface &dhi)
BESDataHandlerInterface _dhi
virtual void parse_request(xmlNode *node)=0
Parse the XML request document begining at the given node.
virtual BESDataHandlerInterface & get_dhi()
Return the current BESDataHandlerInterface.
Base object for bes objects.
virtual void set_response()
The request has been parsed, use the command action name to set the response handler.
handler object that knows how to create a specific response object
virtual void prep_request()
Prepare any information needed to execute the request of this command.
Structure storing information used by the BES to handle the request.
virtual bool has_response()=0
Has a response handler been created given the request document?
static p_xmlcmd_builder find_command(const string &cmd_str)
Find the BESXMLCommand creation function with the given name.