OPeNDAP Hyrax Back End Server (BES)
Updated for version 3.8.3
|
#include <BESXMLGetCommand.h>
Public Member Functions | |
BESXMLGetCommand (const BESDataHandlerInterface &base_dhi) | |
virtual void | dump (ostream &strm) const |
dumps information about this object More... | |
virtual BESDataHandlerInterface & | get_dhi () |
returns the BESDataHandlerInterface of either a sub command, if one exists, or this command's More... | |
virtual bool | has_response () |
Has a response handler been created given the request document? More... | |
virtual void | parse_request (xmlNode *node) |
parse a get command. More... | |
virtual void | prep_request () |
Prepare any information needed to execute the request of this get command. More... | |
virtual | ~BESXMLGetCommand () |
Static Public Member Functions | |
static void | add_command (const string &cmd_str, p_xmlcmd_builder cmd) |
Add a command to the possible commands allowed by this BES. More... | |
static BESXMLCommand * | CommandBuilder (const BESDataHandlerInterface &base_dhi) |
static bool | del_command (const string &cmd_str) |
Deletes the command called cmd_str from the list of possible commands. More... | |
static p_xmlcmd_builder | find_command (const string &cmd_str) |
Find the BESXMLCommand creation function with the given name. More... | |
Protected Member Functions | |
virtual void | parse_basic_get (xmlNode *node, const string &name, const string &type, const string &value, map< string, string > &props) |
virtual void | set_response () |
The request has been parsed, use the command action name to set the response handler. More... | |
Protected Attributes | |
BESDataHandlerInterface | _dhi |
string | _str_cmd |
Definition at line 39 of file BESXMLGetCommand.h.
BESXMLGetCommand::BESXMLGetCommand | ( | const BESDataHandlerInterface & | base_dhi) |
Definition at line 45 of file BESXMLGetCommand.cc.
Referenced by CommandBuilder().
|
inlinevirtual |
Definition at line 53 of file BESXMLGetCommand.h.
|
staticinherited |
Add a command to the possible commands allowed by this BES.
This adds a function to parse a specific BES command within the BES request document using the given name. If a command element is found with the name cmd_str, then the XMLCommand object is created using the passed cmd object.
cmd_str | The name of the command |
cmd | The function to call to create the BESXMLCommand object |
Definition at line 85 of file BESXMLCommand.cc.
Referenced by BESXMLDefaultCommands::initialize(), and BESXMLDapCommandModule::initialize().
|
static |
Definition at line 223 of file BESXMLGetCommand.cc.
References BESXMLGetCommand().
Referenced by BESXMLDefaultCommands::initialize().
|
staticinherited |
Deletes the command called cmd_str from the list of possible commands.
cmd_str | The name of the command to remove from the list |
Definition at line 96 of file BESXMLCommand.cc.
Referenced by BESXMLDefaultCommands::terminate(), and BESXMLDapCommandModule::terminate().
|
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 BESXMLCommand.
Reimplemented in BESXMLGetDataDDXCommand.
Definition at line 213 of file BESXMLGetCommand.cc.
References BESXMLCommand::dump(), BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().
|
staticinherited |
Find the BESXMLCommand creation function with the given name.
cmd_str | The name of the command creation function to find |
Definition at line 113 of file BESXMLCommand.cc.
Referenced by BESXMLInterface::build_data_request_plan(), and parse_request().
|
virtual |
returns the BESDataHandlerInterface of either a sub command, if one exists, or this command's
Reimplemented from BESXMLCommand.
Definition at line 148 of file BESXMLGetCommand.cc.
References BESXMLCommand::_dhi, and BESXMLCommand::get_dhi().
|
inlinevirtual |
Has a response handler been created given the request document?
Implements BESXMLCommand.
Definition at line 58 of file BESXMLGetCommand.h.
|
protectedvirtual |
Definition at line 107 of file BESXMLGetCommand.cc.
References BESXMLCommand::_dhi, BESXMLCommand::_str_cmd, BESDataHandlerInterface::action, BESDEBUG, DAP2_FORMAT, BESDataHandlerInterface::data, BESUtil::lowercase(), and RETURN_CMD.
Referenced by BESXMLGetDataDDXCommand::parse_request(), and parse_request().
|
virtual |
parse a get command.
<get type="dds" definition="d" returnAs="name" />
node | xml2 element node pointer |
Implements BESXMLCommand.
Reimplemented in BESXMLGetDataDDXCommand.
Definition at line 57 of file BESXMLGetCommand.cc.
References BESXMLCommand::_dhi, BESXMLCommand::_str_cmd, BESXMLCommand::find_command(), GET_RESPONSE, BESXMLUtils::GetNodeInfo(), parse_basic_get(), BESXMLCommand::parse_request(), and BESXMLCommand::set_response().
|
virtual |
Prepare any information needed to execute the request of this get command.
This function is used to prepare the information needed to execute the get request. It finds the definition specified in the element and prepares all of the containers within that definition.
Reimplemented from BESXMLCommand.
Reimplemented in BESXMLGetDataDDXCommand.
Definition at line 163 of file BESXMLGetCommand.cc.
References BESXMLCommand::_dhi, AGG_CMD, AGG_HANDLER, BESDataHandlerInterface::containers, BESDataHandlerInterface::data, BESDefine::end_container(), BESDefinitionStorageList::find_persistence(), BESDefine::first_container(), BESDefine::get_agg_cmd(), BESDefine::get_agg_handler(), BESDefinitionStorageList::look_for(), BESDefinitionStorage::look_for(), BESXMLCommand::prep_request(), and BESDefinitionStorageList::TheList().
Referenced by BESXMLGetDataDDXCommand::prep_request().
|
protectedvirtualinherited |
The request has been parsed, use the command action name to set the response handler.
Definition at line 57 of file BESXMLCommand.cc.
References BESXMLCommand::_dhi, BESXMLCommand::_str_cmd, BESDataHandlerInterface::action, BESDataHandlerInterface::data, DATA_REQUEST, BESResponseHandlerList::find_handler(), REQUEST_FROM, BESDataHandlerInterface::response_handler, SERVER_PID, BESResponseHandlerList::TheList(), and BESLog::TheLog().
Referenced by BESXMLCatalogCommand::parse_request(), BESXMLShowErrorCommand::parse_request(), BESXMLSetContextCommand::parse_request(), BESXMLDeleteDefinitionsCommand::parse_request(), BESXMLDeleteContainerCommand::parse_request(), BESXMLDeleteContainersCommand::parse_request(), BESXMLDeleteDefinitionCommand::parse_request(), BESXMLSetContainerCommand::parse_request(), BESXMLShowCommand::parse_request(), BESXMLGetDataDDXCommand::parse_request(), parse_request(), and BESXMLDefineCommand::parse_request().
|
protectedinherited |
Definition at line 57 of file BESXMLCommand.h.
Referenced by BESXMLCommand::BESXMLCommand(), get_dhi(), BESXMLCommand::get_dhi(), parse_basic_get(), BESXMLCatalogCommand::parse_request(), BESXMLDeleteDefinitionsCommand::parse_request(), BESXMLShowErrorCommand::parse_request(), BESXMLSetContainerCommand::parse_request(), BESXMLShowCommand::parse_request(), BESXMLDeleteContainersCommand::parse_request(), BESXMLDeleteDefinitionCommand::parse_request(), BESXMLSetContextCommand::parse_request(), BESXMLDeleteContainerCommand::parse_request(), parse_request(), BESXMLDefineCommand::parse_request(), BESXMLGetDataDDXCommand::prep_request(), prep_request(), BESXMLDefineCommand::prep_request(), and BESXMLCommand::set_response().
|
protectedinherited |
Definition at line 59 of file BESXMLCommand.h.
Referenced by parse_basic_get(), BESXMLShowErrorCommand::parse_request(), BESXMLCatalogCommand::parse_request(), BESXMLDeleteDefinitionCommand::parse_request(), BESXMLDeleteContainersCommand::parse_request(), BESXMLDeleteDefinitionsCommand::parse_request(), BESXMLDeleteContainerCommand::parse_request(), BESXMLShowCommand::parse_request(), BESXMLSetContextCommand::parse_request(), BESXMLSetContainerCommand::parse_request(), BESXMLGetDataDDXCommand::parse_request(), parse_request(), BESXMLDefineCommand::parse_request(), and BESXMLCommand::set_response().