54 #include <sys/types.h> 55 #include <omniORB4/CORBA.h> 56 #include <omnithread.h> 57 #include "CorbaLogForwarder.hh" 60 #define LOGCOMPCTXT "LogServiceC" 61 #define LOGTOOLCTXT "LogServiceT" 62 #define LOGCOMPCONFCTXT "LogServiceC2" 63 #define LOGTOOLMSGCTXT "LogServiceT2" 64 #define LOGFWRDCTXT "LogForwarder" 65 #define DIETFWRD "DietForwarder" 75 LogORBMgr(CORBA::ORB_ptr ORB, PortableServer::POA_var POA);
82 bind(
const std::string& ctxt,
const std::string& name,
83 CORBA::Object_ptr
object,
const bool rebind =
false)
const;
87 bind(
const std::string& ctxt,
const std::string& name,
88 const std::string& IOR,
const bool rebind =
false)
const;
92 rebind(
const std::string& ctxt,
const std::string& name,
93 CORBA::Object_ptr
object)
const;
96 rebind(
const std::string& ctxt,
const std::string& name,
97 const std::string& IOR)
const;
101 unbind(
const std::string& ctxt,
const std::string& name)
const;
105 fwdsBind(
const std::string& ctxt,
const std::string& name,
106 const std::string& ior,
const std::string& fwName =
"")
const;
110 fwdsUnbind(
const std::string& ctxt,
const std::string& name,
111 const std::string& fwName =
"")
const;
115 resolveObject(
const std::string& IOR)
const;
118 resolveObject(
const std::string& ctxt,
const std::string& name,
119 const std::string& fwdName =
"")
const;
123 simpleResolve(
const std::string& ctxt,
const std::string& name)
const;
127 std::list<std::string>
128 list(CosNaming::NamingContext_var& ctxt)
const;
130 std::list<std::string>
131 list(
const std::string& ctxtName)
const;
134 std::list<std::string>
140 isLocal(
const std::string& ctxt,
const std::string& name)
const;
144 forwarderName(
const std::string& ctxt,
const std::string& name)
const;
146 template <
typename CORBA_
object,
typename CORBA_ptr>
148 resolve(
const std::string& ctxt,
const std::string& name,
149 const std::string& fwdName =
"")
const {
150 return CORBA_object::_duplicate(
151 CORBA_object::_narrow(resolveObject(ctxt, name, fwdName)));
154 template <
typename CORBA_
object,
typename CORBA_ptr>
156 resolve(
const std::string& IOR)
const {
157 return CORBA_object::_duplicate(CORBA_object::_narrow(resolveObject(IOR)));
162 getIOR(CORBA::Object_ptr
object)
const;
165 getIOR(
const std::string& ctxt,
const std::string& name)
const;
169 activate(PortableServer::ServantBase*
object)
const;
173 deactivate(PortableServer::ServantBase*
object)
const;
180 shutdown(
bool waitForCompletion);
183 init(
int argc,
char* argv[]);
188 std::list<std::string>
189 forwarderObjects(
const std::string& fwdName,
const std::string& ctxt)
const;
191 std::list<std::string>
192 localObjects(
const std::string& ctxt)
const;
196 makeIOR(
const std::string& strIOR, IOP::IOR& ior);
199 makeString(
const IOP::IOR& ior, std::string& strIOR);
202 getHost(IOP::IOR& ior);
205 getHost(
const std::string& strIOR);
208 getPort(IOP::IOR& ior);
211 getPort(
const std::string& strIOR);
214 getTypeID(IOP::IOR& ior);
217 getTypeID(
const std::string& strIOR);
220 convertIOR(IOP::IOR& ior,
const std::string& host,
221 const unsigned int port);
224 convertIOR(
const std::string& ior,
const std::string& host,
225 const unsigned int port);
232 removeObjectFromCache(
const std::string& name)
const;
235 removeObjectFromCache(
const std::string& ctxt,
236 const std::string& name)
const;
241 hexStringToBuffer(
const char* ptr,
const size_t size,
242 cdrMemoryStream& buffer);
248 PortableServer::POA_var POA;
255 init(CORBA::ORB_ptr ORB);
258 mutable std::map<std::string, CORBA::Object_ptr> cache;
260 mutable omni_mutex cacheMutex;
266 sigIntHandler(
int sig);
268 static omni_mutex waitLock;
270 static sem_t waitLock;
Definition: LogORBMgr.hh:68