#include <CmdApp.h>
Inheritance diagram for CmdApp:
Public Member Functions | |
CmdApp () | |
virtual | ~CmdApp () |
virtual int | initialize (int argc, char **argv) |
initialize the BES application | |
virtual int | run () |
the applications functionality is implemented in the run method | |
virtual void | dump (ostream &strm) const |
dumps information about this object | |
CmdClient * | client () |
virtual int | main (int argC, char **argV) |
main method of the BES application | |
virtual int | terminate (int sig=0) |
clean up after the application | |
string | appName (void) const |
Returns the name of the application. | |
Static Public Member Functions | |
static void | signalCannotConnect (int sig) |
static void | signalInterrupt (int sig) |
static void | signalTerminate (int sig) |
static void | signalBrokenPipe (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 |
Definition at line 42 of file CmdApp.h.
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 |
BESException | if any exceptions or errors are encountered |
Reimplemented from BESBaseApp.
Definition at line 224 of file CmdApp.cc.
References BES_CMDLN_DEFAULT_TIMEOUT, BESDEBUG, BESBaseApp::initialize(), and BESDebug::SetUp().
Here is the call graph for this function:
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.
BESException | if the derived class does not implement this method |
Reimplemented from BESBaseApp.
Definition at line 398 of file CmdApp.cc.
References BESDEBUG, CmdClient::executeCommands(), PPTException::getMessage(), CmdClient::interact(), CmdClient::setOutput(), CmdClient::shutdownClient(), and CmdClient::startClient().
Here is the call graph for this function:
void CmdApp::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 BESBaseApp.
Definition at line 499 of file CmdApp.cc.
References BESBaseApp::dump(), CmdClient::dump(), BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().
Here is the call graph for this function:
CmdClient* CmdApp::client | ( | ) | [inline] |
Definition at line 67 of file CmdApp.h.
Referenced by signalBrokenPipe(), and signalCannotConnect().
void CmdApp::signalCannotConnect | ( | int | sig | ) | [static] |
Definition at line 103 of file CmdApp.cc.
References BESApp::appName(), client(), CmdClient::isConnected(), and BESApp::TheApplication().
Here is the call graph for this function:
void CmdApp::signalInterrupt | ( | int | sig | ) | [static] |
Definition at line 123 of file CmdApp.cc.
References BESApp::appName(), and BESApp::TheApplication().
Here is the call graph for this function:
void CmdApp::signalTerminate | ( | int | sig | ) | [static] |
Definition at line 138 of file CmdApp.cc.
References BESApp::appName(), and BESApp::TheApplication().
Here is the call graph for this function:
void CmdApp::signalBrokenPipe | ( | int | sig | ) | [static] |
Definition at line 153 of file CmdApp.cc.
References BESApp::appName(), CmdClient::brokenPipe(), client(), CmdClient::shutdownClient(), and BESApp::TheApplication().
Here is the call graph for this function:
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().
Here is the call graph for this function:
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, and ServerApp.
Definition at line 158 of file BESBaseApp.cc.
References BESApp::_isInitialized, and BESGlobalIQ::BESGlobalQuit().
Referenced by BESBaseApp::main(), and BESModuleApp::terminate().
Here is the call graph for this function:
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().
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] |
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 [static, protected, inherited] |
Definition at line 63 of file BESApp.h.
Referenced by BESBaseApp::BESBaseApp(), BESApp::TheApplication(), and BESBaseApp::~BESBaseApp().