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

#include <StandAloneApp.h>

Inheritance diagram for StandAloneApp:
Inheritance graph
Collaboration diagram for StandAloneApp:
Collaboration graph

Public Member Functions

string appName (void) const
 Returns the name of the application. More...
 
StandAloneClientclient ()
 
virtual void dump (ostream &strm) const
 dumps information about this object More...
 
virtual int initialize (int argC, char **argV)
 Load and initialize any BES modules. More...
 
virtual int main (int argC, char **argV)
 main method of the BES application More...
 
virtual int run ()
 the applications functionality is implemented in the run method More...
 
 StandAloneApp ()
 
virtual int terminate (int sig=0)
 clean up after the application More...
 
virtual ~StandAloneApp ()
 

Static Public Member Functions

static BESAppTheApplication (void)
 Returns the BESApp application object for this application. More...
 

Protected Attributes

string _appName
 
bool _debug
 
bool _isInitialized
 

Static Protected Attributes

static BESApp_theApplication = 0
 

Detailed Description

Definition at line 42 of file StandAloneApp.h.

Constructor & Destructor Documentation

StandAloneApp::StandAloneApp ( )

Definition at line 56 of file StandAloneApp.cc.

StandAloneApp::~StandAloneApp ( )
virtual

Definition at line 66 of file StandAloneApp.cc.

Member Function Documentation

string BESApp::appName ( void  ) const
inlineinherited

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.

Returns
name of the application

Definition at line 132 of file BESApp.h.

References BESApp::_appName.

Referenced by BESBaseApp::dump(), ServerApp::initialize(), CmdApp::signalBrokenPipe(), CmdApp::signalCannotConnect(), CmdApp::signalInterrupt(), and CmdApp::signalTerminate().

StandAloneClient* StandAloneApp::client ( )
inline

Definition at line 63 of file StandAloneApp.h.

void StandAloneApp::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 BESModuleApp.

Definition at line 367 of file StandAloneApp.cc.

References BESBaseApp::dump(), StandAloneClient::dump(), BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().

Here is the call graph for this function:

int StandAloneApp::initialize ( int  argC,
char **  argV 
)
virtual

Load and initialize any BES modules.

Returns
0 if successful and not 0 otherwise
Parameters
argCargc value passed to the main function
argVargv value passed to the main function

Reimplemented from BESModuleApp.

Definition at line 98 of file StandAloneApp.cc.

References BESDEBUG, TheBESKeys::ConfigFile, BESError::get_message(), BESDefaultModule::initialize(), BESXMLDefaultCommands::initialize(), BESModuleApp::initialize(), CmdTranslation::initialize(), and BESDebug::SetUp().

Here is the call graph for this function:

int BESBaseApp::main ( int  argC,
char **  argV 
)
virtualinherited

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.

Returns
0 if successful and not 0 otherwise
Parameters
argCargc value passed to the main function
argVargv value passed to the main function

Implements BESApp.

Definition at line 74 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 StandAloneApp::run ( void  )
virtual

the applications functionality is implemented in the run method

It is up to the derived class to implement this method.

Returns
0 if successful and not 0 otherwise
Exceptions
BESErrorif the derived class does not implement this method

Reimplemented from BESBaseApp.

Definition at line 248 of file StandAloneApp.cc.

References BESDEBUG, StandAloneClient::executeCommands(), BESError::get_message(), StandAloneClient::interact(), and StandAloneClient::setOutput().

Here is the call graph for this function:

int StandAloneApp::terminate ( int  sig = 0)
virtual

clean up after the application

Parameters
sigreturn value from run that should be returned from method
Returns
signal or return value passed to the terminate method

Reimplemented from BESModuleApp.

Definition at line 335 of file StandAloneApp.cc.

References BESDEBUG, BESDefaultModule::terminate(), BESXMLDefaultCommands::terminate(), BESModuleApp::terminate(), and CmdTranslation::terminate().

Here is the call graph for this function:

static BESApp* BESApp::TheApplication ( void  )
inlinestaticinherited

Returns the BESApp application object for this application.

Returns
The application object

Definition at line 138 of file BESApp.h.

References BESApp::_theApplication.

Referenced by ServerApp::initialize(), CmdApp::signalBrokenPipe(), CmdApp::signalCannotConnect(), CmdApp::signalInterrupt(), and CmdApp::signalTerminate().

Member Data Documentation

string BESApp::_appName
protectedinherited

Definition at line 60 of file BESApp.h.

Referenced by BESApp::appName(), and BESBaseApp::main().

bool BESApp::_debug
protectedinherited

Definition at line 61 of file BESApp.h.

bool BESApp::_isInitialized
protectedinherited

Definition at line 62 of file BESApp.h.

Referenced by BESBaseApp::dump(), BESBaseApp::initialize(), and BESBaseApp::terminate().

BESApp * BESApp::_theApplication = 0
staticprotectedinherited

Definition at line 63 of file BESApp.h.

Referenced by BESApp::TheApplication().


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