OPeNDAP Hyrax Back End Server (BES) Updated for version 3.8.3

BESXMLCatalogCommand Class Reference

#include <BESXMLCatalogCommand.h>

Inheritance diagram for BESXMLCatalogCommand:
Collaboration diagram for BESXMLCatalogCommand:

List of all members.

Public Member Functions

 BESXMLCatalogCommand (const BESDataHandlerInterface &base_dhi)
virtual void dump (ostream &strm) const
 dumps information about this object
virtual void dump (ostream &strm) const =0
 dump the contents of this object to the specified ostream
virtual BESDataHandlerInterfaceget_dhi ()
 Return the current BESDataHandlerInterface.
virtual bool has_response ()
 Has a response handler been created given the request document?
virtual void parse_request (xmlNode *node)
 parse a show command.
virtual void prep_request ()
 Prepare any information needed to execute the request of this command.
virtual ~BESXMLCatalogCommand ()

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.
static BESXMLCommandCommandBuilder (const BESDataHandlerInterface &base_dhi)
static bool del_command (const string &cmd_str)
 Deletes the command called cmd_str from the list of possible commands.
static p_xmlcmd_builder find_command (const string &cmd_str)
 Find the BESXMLCommand creation function with the given name.

Protected Member Functions

virtual void set_response ()
 The request has been parsed, use the command action name to set the response handler.

Protected Attributes

BESDataHandlerInterface _dhi
string _str_cmd

Detailed Description

Definition at line 39 of file BESXMLCatalogCommand.h.


Constructor & Destructor Documentation

BESXMLCatalogCommand::BESXMLCatalogCommand ( const BESDataHandlerInterface base_dhi)

Definition at line 42 of file BESXMLCatalogCommand.cc.

Referenced by CommandBuilder().

virtual BESXMLCatalogCommand::~BESXMLCatalogCommand ( ) [inline, virtual]

Definition at line 43 of file BESXMLCatalogCommand.h.


Member Function Documentation

void BESXMLCommand::add_command ( const string &  cmd_str,
p_xmlcmd_builder  cmd 
) [static, inherited]

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.

Parameters:
cmd_strThe name of the command
cmdThe function to call to create the BESXMLCommand object

Definition at line 85 of file BESXMLCommand.cc.

Referenced by BESXMLDefaultCommands::initialize(), and BESXMLInterface::initialize().

BESXMLCommand * BESXMLCatalogCommand::CommandBuilder ( const BESDataHandlerInterface base_dhi) [static]

Definition at line 113 of file BESXMLCatalogCommand.cc.

References BESXMLCatalogCommand().

Referenced by BESXMLInterface::initialize().

Here is the call graph for this function:

bool BESXMLCommand::del_command ( const string &  cmd_str) [static, inherited]

Deletes the command called cmd_str from the list of possible commands.

Parameters:
cmd_strThe name of the command to remove from the list

Definition at line 96 of file BESXMLCommand.cc.

Referenced by BESXMLDefaultCommands::terminate().

void BESXMLCatalogCommand::dump ( ostream &  strm) const [virtual]

dumps information about this object

Displays the pointer value of this instance

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

Reimplemented from BESXMLCommand.

Definition at line 103 of file BESXMLCatalogCommand.cc.

References BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().

Here is the call graph for this function:

virtual void BESObj::dump ( ostream &  strm) const [pure virtual, inherited]

dump the contents of this object to the specified ostream

This method is implemented by all derived classes to dump their contents, in other words, any state they might have, private variables, etc...

The inline function below can be used to dump the contents of an OPeNDAOObj object. For example, the object Animal is derived from BESObj. A user could do the following:

Animal *a = new dog( "Sparky" ) ; cout << a << endl ;

And the dump method for dog could display the name passed into the constructor, the (this) pointer of the object, etc...

Parameters:
strmC++ i/o stream to dump the object to

Implemented in CmdClient, BESAbstractModule, BESAggFactory, BESAggregationServer, BESApp, BESBaseApp, BESBasicHttpTransmitter, BESBasicInterface, BESBasicTransmitter, BESCache, BESCatalog, BESCatalogDirectory, BESCatalogList, BESCatalogResponseHandler, BESCatalogUtils, BESConfigResponseHandler, BESContainer, BESContainerStorage, BESContainerStorageCatalog, BESContainerStorageFile, BESContainerStorageList, BESContainerStorageVolatile, BESContextManager, BESDapError, BESDapErrorInfo, BESDapModule, BESDapRequestHandler, BESDapResponse, BESDASResponse, BESDASResponseHandler, BESDataDDSResponse, BESDataDDXResponseHandler, BESDataHandlerInterface, BESDataResponseHandler, BESDDSResponse, BESDDSResponseHandler, BESDDXResponseHandler, BESDefine, BESDefineResponseHandler, BESDefinitionStorage, BESDefinitionStorageList, BESDefinitionStorageVolatile, BESDelContainerResponseHandler, BESDelContainersResponseHandler, BESDelDefResponseHandler, BESDelDefsResponseHandler, BESError, BESExceptionManager, BESFileContainer, BESForbiddenError, BESGlobalInit, BESHelpResponseHandler, BESHTMLInfo, BESInfo, BESInfoList, BESInitializer, BESInterface, BESInternalError, BESInternalFatalError, BESKeys, BESLog, BESMemoryGlobalArea, BESModuleApp, BESNotFoundError, BESPlugin< M >, BESPluginFactory< C >, BESProcessEncodedString, BESProcIdResponseHandler, BESReporter, BESReporterList, BESRequestHandler, BESRequestHandlerList, BESResponseHandler, BESResponseHandlerList, BESResponseObject, BESReturnManager, BESServiceRegistry, BESServicesResponseHandler, BESSetContainerResponseHandler, BESSetContextResponseHandler, BESShowContainersResponseHandler, BESShowContextResponseHandler, BESShowDefsResponseHandler, BESShowErrorResponseHandler, BESSilentInfo, BESStatusResponseHandler, BESStopWatch, BESStreamResponseHandler, BESSyntaxUserError, BESTextInfo, BESTokenizer, BESTransmitter, BESUncompressManager, BESVersionInfo, BESVersionResponseHandler, BESXMLInfo, Connection, PPTClient, PPTConnection, PPTServer, SSLClient, SSLConnection, SSLServer, and StandAloneClient.

Referenced by operator<<().

p_xmlcmd_builder BESXMLCommand::find_command ( const string &  cmd_str) [static, inherited]

Find the BESXMLCommand creation function with the given name.

Parameters:
cmd_strThe name of the command creation function to find

Definition at line 113 of file BESXMLCommand.cc.

Referenced by BESXMLInterface::build_data_request_plan(), and BESXMLGetCommand::parse_request().

virtual BESDataHandlerInterface& BESXMLCommand::get_dhi ( ) [inline, virtual, inherited]

Return the current BESDataHandlerInterface.

Since there can be multiple commands within a single request document, different interface objects can be created. This returns the current interface object

Returns:
The current BESDataHandlerInterface object

Reimplemented in BESXMLGetCommand.

Definition at line 87 of file BESXMLCommand.h.

References BESXMLCommand::_dhi.

Referenced by BESXMLInterface::build_data_request_plan(), BESXMLInterface::clean(), and BESXMLGetCommand::get_dhi().

virtual bool BESXMLCatalogCommand::has_response ( ) [inline, virtual]

Has a response handler been created given the request document?

Returns:
true if a response handler has been set, false otherwise

Implements BESXMLCommand.

Definition at line 47 of file BESXMLCatalogCommand.h.

void BESXMLCatalogCommand::parse_request ( xmlNode *  node) [virtual]

parse a show command.

No properties or children elements

<showCatalog node="containerName" />

Parameters:
nodexml2 element node pointer

Implements BESXMLCommand.

Definition at line 54 of file BESXMLCatalogCommand.cc.

References BESXMLCommand::_dhi, BESXMLCommand::_str_cmd, BESDataHandlerInterface::action, CATALOG_OR_INFO, CATALOG_RESPONSE, CATALOG_RESPONSE_STR, CONTAINER, BESDataHandlerInterface::data, BESXMLUtils::GetNodeInfo(), BESXMLCommand::set_response(), SHOW_INFO_RESPONSE, and SHOW_INFO_RESPONSE_STR.

Here is the call graph for this function:

virtual void BESXMLCommand::prep_request ( ) [inline, virtual, inherited]

Prepare any information needed to execute the request of this command.

Reimplemented in BESXMLDefineCommand, BESXMLGetCommand, and BESXMLGetDataDDXCommand.

Definition at line 78 of file BESXMLCommand.h.

Referenced by BESXMLGetCommand::prep_request().


Member Data Documentation


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