|
OPeNDAP Hyrax Back End Server (BES) Updated for version 3.8.3
|
#include <CmdApp.h>


Public Member Functions | |
| string | appName (void) const |
| Returns the name of the application. | |
| CmdClient * | client () |
| CmdApp () | |
| virtual void | dump (ostream &strm) const |
| dumps information about this object | |
| virtual void | dump (ostream &strm) const |
| virtual int | initialize (int argC, char **argV) |
| initialize the BES application | |
| virtual int | main (int argC, char **argV) |
| main method of the BES application | |
| virtual int | run () |
| the applications functionality is implemented in the run method | |
| virtual int | terminate (int sig=0) |
| clean up after the application | |
| virtual | ~CmdApp () |
Static Public Member Functions | |
| static void | signalBrokenPipe (int sig) |
| static void | signalCannotConnect (int sig) |
| static void | signalInterrupt (int sig) |
| static void | signalTerminate (int sig) |
| static BESApp * | TheApplication (void) |
| Returns the BESApp application object for this application. | |
Protected Attributes | |
| string | _appName |
| bool | _debug |
| bool | _isInitialized |
Static Protected Attributes | |
| static BESApp * | _theApplication = 0 |
| string BESApp::appName | ( | void | ) | const [inline, inherited] |
Returns the name of the application.
The name of the application is typically argv[0] passed into the main function. But could be passed into the application or derived in a different way.
Definition at line 132 of file BESApp.h.
References BESApp::_appName.
Referenced by BESBaseApp::dump(), ServerApp::initialize(), signalBrokenPipe(), signalCannotConnect(), signalInterrupt(), and signalTerminate().
| CmdClient* CmdApp::client | ( | ) | [inline] |
Definition at line 67 of file CmdApp.h.
Referenced by signalBrokenPipe(), and signalCannotConnect().
| virtual void CmdApp::dump | ( | ostream & | strm | ) | const [virtual] |
| void BESBaseApp::dump | ( | ostream & | strm | ) | const [virtual, inherited] |
dumps information about this object
Displays the pointer value of this instance along with the name of the application, whether the application is initialized or not
| strm | C++ i/o stream to dump the information to |
Implements BESApp.
Reimplemented in BESModuleApp.
Definition at line 169 of file BESBaseApp.cc.
References BESApp::_isInitialized, BESApp::appName(), BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().

| int CmdApp::initialize | ( | int | argC, |
| char ** | argV | ||
| ) | [virtual] |
initialize the BES application
uses the BESGlobalIQ static method BESGlobalInit to initialize any global variables needed by this application
| argC | argc value passed to the main function |
| argV | argv value passed to the main function |
| BESError | if any exceptions or errors are encountered |
Reimplemented from BESBaseApp.
Definition at line 231 of file CmdApp.cc.
References BES_CMDLN_DEFAULT_TIMEOUT, BESDEBUG, and BESDebug::SetUp().

| int BESBaseApp::main | ( | int | argC, |
| char ** | argV | ||
| ) | [virtual, inherited] |
main method of the BES application
sets the appName to argv[0], then calls initialize, run, and terminate in that order. Exceptions should be caught in the individual methods initialize, run and terminate and handled there.
| argC | argc value passed to the main function |
| argV | argv value passed to the main function |
Implements BESApp.
Definition at line 75 of file BESBaseApp.cc.
References BESApp::_appName, BESBaseApp::initialize(), BESBaseApp::run(), and BESBaseApp::terminate().
Referenced by main().

| int CmdApp::run | ( | void | ) | [virtual] |
the applications functionality is implemented in the run method
It is up to the derived class to implement this method.
| BESError | if the derived class does not implement this method |
Reimplemented from BESBaseApp.
Definition at line 407 of file CmdApp.cc.
References BESDEBUG, CmdClient::executeCommands(), BESError::get_message(), CmdClient::interact(), CmdClient::setOutput(), CmdClient::shutdownClient(), and CmdClient::startClient().

| void CmdApp::signalBrokenPipe | ( | int | sig | ) | [static] |
Definition at line 160 of file CmdApp.cc.
References BESApp::appName(), CmdClient::brokenPipe(), client(), CmdClient::shutdownClient(), and BESApp::TheApplication().

| void CmdApp::signalCannotConnect | ( | int | sig | ) | [static] |
Definition at line 110 of file CmdApp.cc.
References BESApp::appName(), client(), CmdClient::isConnected(), and BESApp::TheApplication().

| void CmdApp::signalInterrupt | ( | int | sig | ) | [static] |
Definition at line 130 of file CmdApp.cc.
References BESApp::appName(), and BESApp::TheApplication().

| void CmdApp::signalTerminate | ( | int | sig | ) | [static] |
Definition at line 145 of file CmdApp.cc.
References BESApp::appName(), and BESApp::TheApplication().

| int BESBaseApp::terminate | ( | int | sig = 0 | ) | [virtual, inherited] |
clean up after the application
Cleans up any global variables registered with BESGlobalIQ
| sig | if the application is terminating due to a signal, otherwise 0 is passed. |
Implements BESApp.
Reimplemented in BESModuleApp, ServerApp, and StandAloneApp.
Definition at line 154 of file BESBaseApp.cc.
References BESApp::_isInitialized, and BESGlobalIQ::BESGlobalQuit().
Referenced by BESBaseApp::main().

| static BESApp* BESApp::TheApplication | ( | void | ) | [inline, static, inherited] |
Returns the BESApp application object for this application.
Definition at line 138 of file BESApp.h.
References BESApp::_theApplication.
Referenced by ServerApp::initialize(), signalBrokenPipe(), signalCannotConnect(), ServerApp::signalInterrupt(), signalInterrupt(), ServerApp::signalRestart(), ServerApp::signalTerminate(), and signalTerminate().
string BESApp::_appName [protected, inherited] |
Definition at line 60 of file BESApp.h.
Referenced by BESApp::appName(), and BESBaseApp::main().
bool BESApp::_debug [protected, inherited] |
bool BESApp::_isInitialized [protected, inherited] |
Definition at line 62 of file BESApp.h.
Referenced by BESBaseApp::dump(), BESBaseApp::initialize(), and BESBaseApp::terminate().
BESApp * BESApp::_theApplication = 0 [static, protected, inherited] |
Definition at line 63 of file BESApp.h.
Referenced by BESApp::TheApplication().