public static IServiceCollection AddNetworkTransport <T>(
            this IServiceCollection serviceCollection,
            EncodingDecorator encoding,
            TcpDataTransportSettings settings) where T : IPacket, new()
        {
            var codec = new Codec <T>(encoding);

            return(serviceCollection
                   .AddSingleton(codec)
                   .AddSingleton(new TcpDataTransport <T>(new MonitoredCachedChannelFactory <T>(codec),
                                                          settings)));
        }
 public TcpDataTransport(IChannelFactory <TPacket> channelFactory, TcpDataTransportSettings sttings) : base(channelFactory, sttings)
 {
 }
 public TcpDataTransport(IChannelFactory <TPacket> channelFactory, TcpDataTransportSettings sttings, ILogger log) : base(channelFactory, sttings, log)
 {
 }