version 1.7, 2007/05/08 18:30:52
|
version 1.8, 2007/06/19 17:58:04
|
|
|
// | // |
//============================================================================== | //============================================================================== |
// | // |
// Author: Heather Sterling (hsterl@us.ibm.com) PEP#222 |
|
// |
|
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
| |
#ifndef Pegasus_Server_Process_h | #ifndef Pegasus_Server_Process_h |
|
|
| |
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
/** This abstract class has virtual methods for information that varies across applications. The rest of the methods |
/** |
* are called from the application (i.e. cimserver.cpp), and need to be defined by every operating system implementation. |
This abstract class has virtual methods for information that varies across |
* This version will not touch the method names, as it is fairly risky to do so now. However, the goal is to |
applications. The rest of the methods are called from the application |
* eventually standardize the interface so we pull out as much OS-specific function as possible from the main cimserver file. |
(i.e. cimserver.cpp), and need to be defined by every operating system |
* |
implementation. |
* Not all operating systems need to fully implement all these methods. Stick methods which do not apply to |
|
* your OS in a "No-ops" section at the top. |
This version will not touch the method names, as it is fairly risky to do |
* |
so now. However, the goal is to eventually standardize the interface so |
* See PEP#222 for more information. |
we pull out as much OS-specific function as possible from the main |
|
cimserver file. |
|
|
|
Not all operating systems need to fully implement all these methods. |
|
Stick methods which do not apply to your OS in a "No-ops" section at the |
|
top. |
|
|
|
See PEP#222 for more information. |
*/ | */ |
| |
class PEGASUS_SERVICE_LINKAGE ServerProcess | class PEGASUS_SERVICE_LINKAGE ServerProcess |
{ | { |
public: | public: |
| |
ServerProcess(void); |
ServerProcess(); |
| |
virtual ~ServerProcess(void); |
virtual ~ServerProcess(); |
| |
virtual const char* getProductName() const = 0; | virtual const char* getProductName() const = 0; |
| |
|
|
Boolean shutdownOption, | Boolean shutdownOption, |
Boolean debugOutputOption) = 0; | Boolean debugOutputOption) = 0; |
| |
virtual void cimserver_stop(void) = 0; |
virtual void cimserver_stop() = 0; |
| |
int platform_run( | int platform_run( |
int argc, | int argc, |
|
|
Boolean shutdownOption, | Boolean shutdownOption, |
Boolean debugOutputOption); | Boolean debugOutputOption); |
| |
int cimserver_fork(void); |
int cimserver_fork(); |
| |
void notify_parent(int id); | void notify_parent(int id); |
| |
|
|
| |
void cimserver_exitRC(int rc); | void cimserver_exitRC(int rc); |
| |
int cimserver_initialize(void); |
int cimserver_initialize(); |
| |
// Currently (07/27/06) this function is only used by | // Currently (07/27/06) this function is only used by |
// pegasus/src/Pegasus/DynListener/Service/cimlistener.cpp | // pegasus/src/Pegasus/DynListener/Service/cimlistener.cpp |
|
|
| |
// if PEGASUS_HAS_SIGNALS is NOT defined this function is a noop function | // if PEGASUS_HAS_SIGNALS is NOT defined this function is a noop function |
// returning immediately with -1 | // returning immediately with -1 |
int cimserver_wait(void); |
int cimserver_wait(); |
| |
String getHome(void); |
String getHome(); |
}; | }; |
| |
PEGASUS_NAMESPACE_END | PEGASUS_NAMESPACE_END |