33#ifndef I_BESRequestHandlerList_h
34#define I_BESRequestHandlerList_h 1
43#include "BESDataHandlerInterface.h"
46#include "BESRequestHandler.h"
74 mutable std::recursive_mutex d_cache_lock_mutex;
76 static void initialize_instance();
77 static void delete_instance();
79 std::map<std::string, BESRequestHandler *> _handler_list;
85 typedef std::map<std::string, BESRequestHandler *>::const_iterator Handler_citer;
86 typedef std::map<std::string, BESRequestHandler *>::iterator Handler_iter;
104 virtual void dump(std::ostream &strm)
const;
Structure storing information used by the BES to handle the request.
top level BES object to house generic methods
The list of registered request handlers for this server; a singleton.
virtual void execute_all(BESDataHandlerInterface &dhi)
for all of the registered request handlers, execute the given request
virtual std::string get_handler_names()
Returns a comma separated string of request handlers registered with the server.
virtual void dump(std::ostream &strm) const
dumps information about this object
virtual bool add_handler(const std::string &handler_name, BESRequestHandler *handler)
add a request handler to the list of registered handlers for this server
virtual BESRequestHandler * remove_handler(const std::string &handler_name)
remove and return the specified request handler
virtual Handler_citer get_last_handler()
return a constant iterator pointing to the end of the list
virtual void execute_current(BESDataHandlerInterface &dhi)
Execute a single method for the current container that will fill in the response object rather than i...
virtual void execute_each(BESDataHandlerInterface &dhi)
for each container in the given data handler interface, execute the given request
virtual Handler_citer get_first_handler()
return an iterator pointing to the first request handler in the list
virtual BESRequestHandler * find_handler(const std::string &handler_name)
find and return the specified request handler
Represents a specific data type request handler.