33 #ifndef A_BESXMLCommand_h 34 #define A_BESXMLCommand_h 1 42 #include <libxml/encoding.h> 45 #include "BESDataHandlerInterface.h" 53 static map<string, p_xmlcmd_builder> cmd_list;
54 typedef map<string, p_xmlcmd_builder>::iterator cmd_iter;
96 virtual void dump(ostream &strm)
const;
98 static void add_command(
const string &cmd_str, p_xmlcmd_builder cmd);
100 static p_xmlcmd_builder
find_command(
const string &cmd_str);
103 #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 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?
virtual void dump(ostream &strm) const
dumps information about this object
static p_xmlcmd_builder find_command(const string &cmd_str)
Find the BESXMLCommand creation function with the given name.