OPeNDAP Hyrax Back End Server (BES) Updated for version 3.8.3
|
List of all registered aggregation handlers for this server. More...
#include <BESAggFactory.h>
Public Types | |
typedef map< string, p_agg_handler > ::const_iterator | Handler_citer |
typedef map< string, p_agg_handler >::iterator | Handler_iter |
Public Member Functions | |
virtual bool | add_handler (string handler_name, p_agg_handler handler_method) |
add an aggregation handler to the list | |
virtual void | dump (ostream &strm) const |
dumps information about this object | |
virtual BESAggregationServer * | find_handler (string handler_name) |
returns the aggregation handler with the given name in the list | |
virtual string | get_handler_names () |
returns the list of all agg handlers currently registered with this server. | |
virtual bool | remove_handler (string handler_name) |
removes a response handler from the list | |
virtual | ~BESAggFactory (void) |
Static Public Member Functions | |
static BESAggFactory * | TheFactory () |
Protected Member Functions | |
BESAggFactory (void) |
List of all registered aggregation handlers for this server.
A BESAggFactory allows the developer to add or remove aggregation handlers from the list of handlers available for this server.
Definition at line 55 of file BESAggFactory.h.
typedef map< string, p_agg_handler >::const_iterator BESAggFactory::Handler_citer |
Definition at line 66 of file BESAggFactory.h.
typedef map< string, p_agg_handler >::iterator BESAggFactory::Handler_iter |
Definition at line 67 of file BESAggFactory.h.
BESAggFactory::BESAggFactory | ( | void | ) | [inline, protected] |
Definition at line 62 of file BESAggFactory.h.
Referenced by TheFactory().
virtual BESAggFactory::~BESAggFactory | ( | void | ) | [inline, virtual] |
Definition at line 64 of file BESAggFactory.h.
bool BESAggFactory::add_handler | ( | string | handler_name, |
p_agg_handler | handler_method | ||
) | [virtual] |
add an aggregation handler to the list
This method actually adds to the list a method that knows how to build an aggregation handler.
handler_name | name of the handler to add to the list |
handler_method | method that knows how to build the named agg handler |
Definition at line 48 of file BESAggFactory.cc.
void BESAggFactory::dump | ( | ostream & | strm | ) | const [virtual] |
dumps information about this object
Displays the pointer value of this instance along with the name of all registered aggrecation servers
strm | C++ i/o stream to dump the information to |
Implements BESObj.
Definition at line 143 of file BESAggFactory.cc.
References BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().
BESAggregationServer * BESAggFactory::find_handler | ( | string | handler_name | ) | [virtual] |
returns the aggregation handler with the given name in 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 agg handler built with the build method is returned. If the handler build method does not exist in the list then NULL is returned.
handler_name | name of the handler to build and return |
Definition at line 96 of file BESAggFactory.cc.
Referenced by BESInterface::invoke_aggregation(), and BESBasicInterface::invoke_aggregation().
string BESAggFactory::get_handler_names | ( | ) | [virtual] |
returns the list of all agg handlers currently registered with this server.
Builds a comma separated list of agg handlers registered with this server.
Definition at line 120 of file BESAggFactory.cc.
bool BESAggFactory::remove_handler | ( | string | handler_name | ) | [virtual] |
removes a response handler from the list
The method that knows how to build the specified agg handler is removed from the list.
handler_name | name of the handler build method to remove from the list |
Definition at line 71 of file BESAggFactory.cc.
BESAggFactory * BESAggFactory::TheFactory | ( | ) | [static] |
Definition at line 167 of file BESAggFactory.cc.
References BESAggFactory().
Referenced by BESInterface::invoke_aggregation(), and BESBasicInterface::invoke_aggregation().