Test::Session_ptr Peer::create_session (Test::Session_Control_ptr control, CORBA::ULong payload_size, CORBA::ULong thread_count, CORBA::ULong message_count, CORBA::ULong peer_count) { Session *session_impl = 0; ACE_NEW_THROW_EX (session_impl, Session (control, payload_size, thread_count, message_count, peer_count), CORBA::NO_MEMORY ()); PortableServer::ServantBase_var transfer_ownership (session_impl); return session_impl->_this (); }
Test::Receiver_ptr Receiver_Factory::create_receiver (void) { Receiver *receiver_impl = 0; ACE_NEW_THROW_EX (receiver_impl, Receiver, CORBA::NO_MEMORY ()); PortableServer::ServantBase_var transfer_ownership(receiver_impl); CORBA::Object_var poa_object = this->orb_->resolve_initial_references("RootPOA"); PortableServer::POA_var root_poa = PortableServer::POA::_narrow (poa_object.in ()); PortableServer::ObjectId_var id = root_poa->activate_object (receiver_impl); CORBA::Object_var object = root_poa->id_to_reference (id.in ()); return Test::Receiver::_narrow (object.in ()); }