#include <BESDefineCommand.h>
Inheritance diagram for BESDefineCommand:
Public Member Functions | |
BESDefineCommand (const string &cmd) | |
virtual | ~BESDefineCommand () |
virtual string | parse_options (BESTokenizer &tokens, BESDataHandlerInterface &dhi) |
virtual BESResponseHandler * | parse_request (BESTokenizer &tokens, BESDataHandlerInterface &dhi) |
parses the request to build a definition that can be used in other requests, such as get commands. | |
virtual void | dump (ostream &strm) const |
dumps information about this object | |
Static Public Member Functions | |
static void | add_command (const string &cmd_str, BESCommand *cmd) |
static bool | del_command (const string &cmd_str) |
static BESCommand * | find_command (const string &cmd_str) |
Static Public Attributes | |
static BESCommand * | TermCommand = new BESTermCommand( "term" ) |
Protected Attributes | |
string | _cmd |
BESDefineCommand::BESDefineCommand | ( | const string & | cmd | ) | [inline] |
virtual BESDefineCommand::~BESDefineCommand | ( | ) | [inline, virtual] |
void BESCommand::add_command | ( | const string & | cmd_str, | |
BESCommand * | cmd | |||
) | [static, inherited] |
bool BESCommand::del_command | ( | const string & | cmd_str | ) | [static, inherited] |
void BESDefineCommand::dump | ( | ostream & | strm | ) | const [virtual] |
dumps information about this object
Displays the pointer value of this instance
strm | C++ i/o stream to dump the information to |
Reimplemented from BESCommand.
BESCommand * BESCommand::find_command | ( | const string & | cmd_str | ) | [static, inherited] |
string BESDefineCommand::parse_options | ( | BESTokenizer & | tokens, | |
BESDataHandlerInterface & | dhi | |||
) | [virtual] |
Reimplemented from BESCommand.
BESResponseHandler * BESDefineCommand::parse_request | ( | BESTokenizer & | tokenizer, | |
BESDataHandlerInterface & | dhi | |||
) | [virtual] |
parses the request to build a definition that can be used in other requests, such as get commands.
A request looks like:
define <def_name> as <container_list>
[where <container_x>.constraint="<constraint>"]
[,<container_x>.attributes="<attrs>"]
[aggregate by "<aggregation_command>"];
where container_list is a list of containers representing points of data, such as a file. For each container in the container_list the user can specify a constraint and a list of attributes. You need not specify a constraint for a given container or a list of attributes. If just specifying a constraint then leave out the attributes. If just specifying a list of attributes then leave out the constraint. For example:
define d1 as container_1,container_2
where container_1.constraint="constraint1"
,container_2.constraint="constraint2"
,container_2.attributes="attr1,attr2";
tokenizer | holds on to the list of tokens to be parsed | |
dhi | structure that holds request and response information |
BESParserException | if this method is called, as the request string should have already been parsed. |
Implements BESCommand.
string BESCommand::_cmd [protected, inherited] |
BESCommand * BESCommand::TermCommand = new BESTermCommand( "term" ) [static, inherited] |