bes Updated for version 3.20.13
BESResponseHandlerList Class Reference

List of all registered response handlers for this server. More...

#include <BESResponseHandlerList.h>

Collaboration diagram for BESResponseHandlerList:
Collaboration graph

Public Types

typedef std::map< std::string, p_response_handler >::const_iterator Handler_citer
 
typedef std::map< std::string, p_response_handler >::iterator Handler_iter
 

Public Member Functions

virtual bool add_handler (const std::string &handler, p_response_handler handler_method)
 add a response handler to the list
 
virtual void dump (std::ostream &strm) const
 dumps information about this object
 
virtual BESResponseHandlerfind_handler (const std::string &handler)
 returns the response handler with the given name from the list
 
virtual std::string get_handler_names ()
 returns the comma separated list of all response handlers currently registered with this server.
 
virtual bool remove_handler (const std::string &handler)
 removes a response handler from the list
 

Static Public Member Functions

static BESResponseHandlerListTheList ()
 

Friends

class resplistT
 

Detailed Description

List of all registered response handlers for this server.

A BESResponseHandlerList allows the developer to add or remove named response handlers from the list of handlers available for this server. For example, when the request 'get das for d1;' a response handler named "das" is looked up in the response handler list. Another example, 'show help;' would look up a response handler named "show".

What is actually added to the list are functions that instantiate the named response handler, not the response handler themselves.

See also
BESResponseHandler
BESResponseObject

Definition at line 60 of file BESResponseHandlerList.h.

Member Typedef Documentation

◆ Handler_citer

typedef std::map<std::string,p_response_handler>::const_iterator BESResponseHandlerList::Handler_citer

Definition at line 76 of file BESResponseHandlerList.h.

◆ Handler_iter

typedef std::map<std::string,p_response_handler>::iterator BESResponseHandlerList::Handler_iter

Definition at line 77 of file BESResponseHandlerList.h.

Constructor & Destructor Documentation

◆ BESResponseHandlerList()

BESResponseHandlerList::BESResponseHandlerList ( )

Definition at line 49 of file BESResponseHandlerList.cc.

◆ ~BESResponseHandlerList()

BESResponseHandlerList::~BESResponseHandlerList ( )
virtual

Definition at line 51 of file BESResponseHandlerList.cc.

Member Function Documentation

◆ add_handler()

bool BESResponseHandlerList::add_handler ( const std::string &  handler,
p_response_handler  handler_method 
)
virtual

add a response handler to the list

This method actually adds to the list a method that knows how to build a response handler. For each request that comes in, the response name (such as das or help or define) is looked up in this list and the method is used to build a new response handler.

Parameters
handler_namename of the handler to add to the list
handler_methodmethod that knows how to build the named response handler
Returns
true if successfully added, false if it already exists
See also
BESResponseHandler
BESResponseObject

Definition at line 67 of file BESResponseHandlerList.cc.

◆ dump()

void BESResponseHandlerList::dump ( std::ostream &  strm) const
virtual

dumps information about this object

Displays the pointer value of this instance along with the names of the registered response handlers.

Parameters
strmC++ i/o stream to dump the information to

Implements BESObj.

Definition at line 156 of file BESResponseHandlerList.cc.

◆ find_handler()

BESResponseHandler * BESResponseHandlerList::find_handler ( const std::string &  handler)
virtual

returns the response handler with the given name from the list

This method looks up the build method with the given name in the list. If it is found then the build method is invoked with the given handler name and the response handler built with the build method is returned. If the handler build method does not exist in the list then NULL is returned.

Parameters
handler_namename of the handler to build and return
Returns
a BESResponseHandler using the specified build method, or NULL if it doesn't exist in the list.
See also
BESResponseHandler

Definition at line 113 of file BESResponseHandlerList.cc.

◆ get_handler_names()

string BESResponseHandlerList::get_handler_names ( )
virtual

returns the comma separated list of all response handlers currently registered with this server.

Builds a comma separated list of response handlers registered with this server and returns it to the caller.

Returns
comma separated list of response handler names

Definition at line 134 of file BESResponseHandlerList.cc.

◆ remove_handler()

bool BESResponseHandlerList::remove_handler ( const std::string &  handler)
virtual

removes a response handler from the list

The method that knows how to build the specified response handler is removed from the list.

Parameters
handler_namename of the handler build method to remove from the list
Returns
true if successfully removed, false if it doesn't exist in the list
See also
BESResponseHandler

Definition at line 88 of file BESResponseHandlerList.cc.

◆ TheList()

BESResponseHandlerList * BESResponseHandlerList::TheList ( )
static

Definition at line 179 of file BESResponseHandlerList.cc.

Friends And Related Function Documentation

◆ resplistT

friend class resplistT
friend

Definition at line 70 of file BESResponseHandlerList.h.


The documentation for this class was generated from the following files: