version 1.7, 2001/05/10 10:57:20
|
version 1.10, 2001/05/29 21:28:44
|
|
|
#include <Pegasus/Common/OptionManager.h> | #include <Pegasus/Common/OptionManager.h> |
#include <Pegasus/Server/CIMServer.h> | #include <Pegasus/Server/CIMServer.h> |
#include <Pegasus/Common/PegasusVersion.h> | #include <Pegasus/Common/PegasusVersion.h> |
|
#include <Pegasus/Protocol/Handler.h> |
|
#include <Pegasus/Common/logger.h> |
|
|
|
PEGASUS_USING_PEGASUS; |
|
PEGASUS_USING_STD; |
| |
using namespace Pegasus; |
|
using namespace std; |
|
| |
// const char PEGASUS_VERSION[] = "Pegasus CIM Server - Version 0.7"; |
|
| |
void GetEnvironmentVariables( | void GetEnvironmentVariables( |
const char* arg0, | const char* arg0, |
|
|
static struct OptionRow options[] = | static struct OptionRow options[] = |
{ | { |
{"port", "8888", false, Option::WHOLE_NUMBER, 0, 0, "port"}, | {"port", "8888", false, Option::WHOLE_NUMBER, 0, 0, "port"}, |
{"trace", "false", false, Option::BOOLEAN, 0, 0, "trace"}, |
{"trace", "false", false, Option::BOOLEAN, 0, 0, "t"}, |
|
{"Severity", "ALL", false, Option::STRING, 0, 0, "s"}, |
|
{"logs", "ALL", false, Option::STRING, 0, 0, "L"}, |
{"version", "false", false, Option::BOOLEAN, 0, 0, "v"}, | {"version", "false", false, Option::BOOLEAN, 0, 0, "v"}, |
{"help", "false", false, Option::BOOLEAN, 0, 0, "h"} |
{"help", "false", false, Option::BOOLEAN, 0, 0, "h"}, |
|
{"debug", "false", false, Option::BOOLEAN, 0, 0, "d"} |
}; | }; |
const Uint32 NUM_OPTIONS = sizeof(options) / sizeof(options[0]); | const Uint32 NUM_OPTIONS = sizeof(options) / sizeof(options[0]); |
| |
|
|
cout << " -port - specifies port number to listen on\n"; | cout << " -port - specifies port number to listen on\n"; |
cout << " -v - prints out the version number\n"; | cout << " -v - prints out the version number\n"; |
cout << " -t - turns on trace mode\n"; | cout << " -t - turns on trace mode\n"; |
|
cout << " -d - turns on debug mode\n"; |
cout << endl; | cout << endl; |
} | } |
| |
|
|
exit(0); | exit(0); |
} | } |
| |
|
// Check the trace options and set global variable |
|
Boolean pegasusIOTrace; |
|
if (om.valueEquals("trace", "true")) |
|
{ |
|
Handler::sethandlerTrace(true); |
|
pegasusIOTrace = true; |
|
cout << "Trace Set" << endl; |
|
} |
// Grab the port otpion: | // Grab the port otpion: |
| |
String portOption; | String portOption; |
om.lookupValue("port", portOption); | om.lookupValue("port", portOption); |
| |
|
Logger::setHomeDirectory("./logs"); |
|
|
try | try |
{ | { |
Selector selector; | Selector selector; |
|
|
cout << PEGASUS_NAME << PEGASUS_VERSION << | cout << PEGASUS_NAME << PEGASUS_VERSION << |
" on port " << address << endl; | " on port " << address << endl; |
cout << "Built " << __DATE__ << " " << __TIME__ << endl; | cout << "Built " << __DATE__ << " " << __TIME__ << endl; |
cout <<"Started..." <<endl; |
cout <<"Started..." |
|
<< (pegasusIOTrace ? " Tracing": " ") << endl; |
|
|
|
Logger::put(Logger::STANDARD_LOG, "CIMServer", Logger::INFORMATION, |
|
"Start $0 %1 port $2 $3 ", 88, PEGASUS_NAME, PEGASUS_VERSION, |
|
address, (pegasusIOTrace ? " Tracing": " ")); |
| |
server.bind(address); | server.bind(address); |
delete [] address; | delete [] address; |
|
|
} | } |
catch(Exception& e) | catch(Exception& e) |
{ | { |
std::cerr << "Error: " << e.getMessage() << std::endl; |
PEGASUS_STD(cerr) << "Error: " << e.getMessage() << PEGASUS_STD(endl); |
} | } |
| |
return 0; | return 0; |