public PeerDuplexChannel(IPeerChannelManager listener) : base((ChannelListenerBase)listener) { binding = listener.Source; this.resolver = listener.Resolver; info = new TcpChannelInfo(binding, listener.MessageEncoder, null); // FIXME: fill properties correctly. node = new PeerNodeImpl(((ChannelListenerBase)listener).Uri.Host, listener.Source.ListenIPAddress, listener.Source.Port); }
public PeerDuplexChannel(IPeerChannelManager factory, EndpointAddress address, Uri via, PeerResolver resolver) : base((ChannelFactoryBase)factory, address, via) { binding = factory.Source; this.resolver = factory.Resolver; info = new TcpChannelInfo(binding, factory.MessageEncoder, null); // FIXME: fill properties correctly. // It could be opened even with empty list of PeerNodeAddresses. // So, do not create PeerNode per PeerNodeAddress, but do it with PeerNodeAddress[]. node = new PeerNodeImpl(RemoteAddress.Uri.Host, factory.Source.ListenIPAddress, factory.Source.Port); }