TransportPair Win32NamedPipeTransportFactory::createNonListeningTransports() { return std::make_pair( ServerTransportPtr( new Win32NamedPipeServerTransport( RCF_T("")) ), ClientTransportAutoPtrPtr()); }
TransportPair UnixLocalTransportFactory::createTransports() { std::string pipeName = generateNewPipeName(); RCF_LOG_2()(pipeName) << "Creating unix local socket transport pair"; return std::make_pair( ServerTransportPtr( new UnixLocalServerTransport(pipeName) ), ClientTransportAutoPtrPtr( new ClientTransportAutoPtr( new UnixLocalClientTransport(pipeName)))); }
TransportPair HttpsTransportFactory::createTransports() { typedef boost::shared_ptr<HttpServerTransport> HttpServerTransportPtr; HttpServerTransportPtr serverTransportPtr( new HttpServerTransport(HttpEndpoint(mLoopback, 0))); serverTransportPtr->open(); int port = serverTransportPtr->getPort(); ClientTransportAutoPtrPtr clientTransportAutoPtrPtr(new ClientTransportAutoPtr( new HttpClientTransport(HttpEndpoint(mLoopback, port)))); return std::make_pair( ServerTransportPtr(serverTransportPtr), clientTransportAutoPtrPtr); }
TransportPair Win32NamedPipeTransportFactory::createTransports() { typedef boost::shared_ptr<Win32NamedPipeServerTransport> Win32NamedPipeServerTransportPtr; Win32NamedPipeServerTransportPtr serverTransportPtr( new Win32NamedPipeServerTransport(RCF_T(""))); tstring pipeName = serverTransportPtr->getPipeName(); ClientTransportAutoPtrPtr clientTransportAutoPtrPtr( new ClientTransportAutoPtr( new Win32NamedPipeClientTransport(pipeName))); return std::make_pair( ServerTransportPtr(serverTransportPtr), clientTransportAutoPtrPtr); }
TransportPair UdpTransportFactory::createTransports() { typedef boost::shared_ptr<UdpServerTransport> UdpServerTransportPtr; UdpServerTransportPtr udpServerTransportPtr( new UdpServerTransport( IpAddress(mLoopback, 0) )); udpServerTransportPtr->open(); int port = udpServerTransportPtr->getPort(); ClientTransportAutoPtrPtr clientTransportAutoPtrPtr( new ClientTransportAutoPtr( new UdpClientTransport( IpAddress(mLoopback, port) ))); return std::make_pair( ServerTransportPtr(udpServerTransportPtr), clientTransportAutoPtrPtr); }
TransportPair TcpAsioTransportFactory::createTransports() { typedef boost::shared_ptr<TcpAsioServerTransport> TcpAsioServerTransportPtr; TcpAsioServerTransportPtr tcpServerTransportPtr( new TcpAsioServerTransport( IpAddress(mLoopback, 0))); tcpServerTransportPtr->open(); int port = tcpServerTransportPtr->getPort(); ClientTransportAutoPtrPtr clientTransportAutoPtrPtr( new ClientTransportAutoPtr( new TcpClientTransport( IpAddress(mLoopback, port)))); return std::make_pair( ServerTransportPtr(tcpServerTransportPtr), clientTransportAutoPtrPtr); }
ServerTransportPtr UdpServerTransport::clone() { return ServerTransportPtr( new UdpServerTransport( mIpAddress, mMulticastIpAddress) ); }
TransportPair UdpTransportFactory::createNonListeningTransports() { return std::make_pair( ServerTransportPtr( new UdpServerTransport( IpAddress(mLoopback, 0) ) ), ClientTransportAutoPtrPtr()); }
TransportPair UnixLocalTransportFactory::createNonListeningTransports() { return std::make_pair( ServerTransportPtr( new UnixLocalServerTransport("") ), ClientTransportAutoPtrPtr()); }
TransportPair createNonListeningTransports() { return std::make_pair( ServerTransportPtr( new TcpAsioServerTransport( IpAddress(mLoopback, 0)) ), ClientTransportAutoPtrPtr()); }
ServerTransportPtr Win32NamedPipeServerTransport::clone() { return ServerTransportPtr( new Win32NamedPipeServerTransport(mPipeName) ); }
// I_ServerTransport ServerTransportPtr InProcessTransport::clone() { RCF_ASSERT(0); return ServerTransportPtr(); }
TransportPair HttpsTransportFactory::createNonListeningTransports() { return std::make_pair( ServerTransportPtr(new HttpServerTransport(HttpEndpoint(mLoopback, 0))), ClientTransportAutoPtrPtr()); }
ServerTransportPtr UdpServerTransport::clone() { return ServerTransportPtr( new UdpServerTransport(mPort) ); }