#include <iostream.h>
#include <signal.h>
#include "../utils/NameServer.h"
#include "Echo_i.h"
Grafo delle dipendenze di inclusione per echo-server.cc:
Vai al codice sorgente di questo file.
Definizioni | |
#define | PROJECT_NAME "fbfs" |
#define | MODULE_NAME "Echo" |
Funzioni | |
void | catch_sigterm (int sig) |
int | main (int argc, char **argv) |
Variabili | |
CORBA::ORB_ptr | orbptr |
char* | server_name |
char* | server_context |
char* | server_kind |
|
Definizione alla linea 21 del file echo-server.cc. |
|
Definizione alla linea 20 del file echo-server.cc. |
|
Definizione alla linea 95 del file echo-server.cc. 00095 { 00096 utils::NameServer::unbindObject(server_context, server_name, server_kind, orbptr); 00097 orbptr->shutdown(true); 00098 } |
|
Definizione alla linea 36 del file echo-server.cc. 00037 { 00038 try { 00039 CORBA::ORB_var orb = CORBA::ORB_init(argc, argv, "omniORB3"); 00040 00041 CORBA::Object_var obj = orb->resolve_initial_references("RootPOA"); 00042 PortableServer::POA_var poa = PortableServer::POA::_narrow(obj); 00043 00044 fbfs::Echo_i* object = new fbfs::Echo_i(); 00045 00046 PortableServer::ObjectId_var object_id = poa->activate_object(object); 00047 00048 if( argc != 3 ) { 00049 cerr << "Usage: " << argv[0] << " <context> <name>" << endl; 00050 return 1; 00051 } 00052 server_context=argv[1]; 00053 server_name=argv[2]; 00054 server_kind=MODULE_NAME; 00055 00056 // Obtain a reference to the object, and register it in 00057 // the naming service. 00058 obj = object->_this(); 00059 if( !utils::NameServer::bindObjectToName(server_context, server_name, server_kind, orb, obj) ) 00060 return 1; 00061 00062 // Now the naming service retains a reference to the object. 00063 // I can remove the reference obtained with object->_this(); 00064 object->_remove_ref(); 00065 00066 PortableServer::POAManager_var pman = poa->the_POAManager(); 00067 pman->activate(); 00068 00069 // Attiva un signal handler sul sigquit 00070 orbptr = orb; 00071 signal(SIGTERM, catch_sigterm); 00072 00073 orb->run(); 00074 orb->destroy(); 00075 } 00076 catch(CORBA::SystemException&) { 00077 cerr << "Caught CORBA::SystemException." << endl; 00078 } 00079 catch(CORBA::Exception&) { 00080 cerr << "Caught CORBA::Exception." << endl; 00081 } 00082 catch(omniORB::fatalException& fe) { 00083 cerr << "Caught omniORB::fatalException:" << endl; 00084 cerr << " file: " << fe.file() << endl; 00085 cerr << " line: " << fe.line() << endl; 00086 cerr << " mesg: " << fe.errmsg() << endl; 00087 } 00088 catch(...) { 00089 cerr << "Caught unknown exception." << endl; 00090 } 00091 00092 return 0; 00093 } |
|
Definizione alla linea 34 del file proxy-server.cc. |
|
Definizione alla linea 36 del file proxy-server.cc. |
|
Definizione alla linea 37 del file proxy-server.cc. |
|
Definizione alla linea 35 del file proxy-server.cc. |