Пример #1
0
 public TcpListener(Uri uri, IPSocketSettings settings, ILoggerFactory loggerFactory)
 {
     _uri            = uri;
     _socketSettings = settings;
     _loggerFactory  = loggerFactory;
     _logger         = _loggerFactory.CreateLogger(nameof(TcpListener));
 }
Пример #2
0
        public RawSocket(Socket socket, IPSocketSettings settings, ILogger logger)
            : base(settings, logger)
        {
            _socket   = socket;
            _settings = settings;

            InitializeSocket();
        }
Пример #3
0
        public static TBuilder WithTcpTransport <TBuilder>(this TBuilder builder, string address,
                                                           Action <IPSocketSettings> options = null)
            where TBuilder : BaseConnectionBuilder
        {
            var settings = new IPSocketSettings();

            options?.Invoke(settings);

            builder.SocketFactory = new SocketFactory(address, SocketType.TCP, settings);

            return(builder);
        }
Пример #4
0
        public static TBuilder AddTcpServer <TBuilder>(this TBuilder builder, string address,
                                                       Action <IPSocketSettings> options = null)
            where TBuilder : BaseServiceHostBuilder
        {
            var settings = new IPSocketSettings();

            options?.Invoke(settings);
            var listener = SocketTools.CreateTcpListener(address, settings, builder.LoggerFactory);

            builder.Listeners.Add(listener);
            return(builder);
        }
Пример #5
0
        public static IListener CreateTcpListener(string address, IPSocketSettings settings, ILoggerFactory loggerFactory)
        {
            if (address == null)
            {
                throw new ArgumentNullException(nameof(address));
            }

            var uri = new Uri(address);

            if (uri.Scheme != "tcp" && uri.Scheme != Uri.UriSchemeNetTcp)
            {
                throw new Exception($"{nameof(address)} must be valid tcp:// or net.tcp:// address");
            }

            return(new TcpListener(uri, settings, loggerFactory));
        }
Пример #6
0
 public RawSocket(Uri uri, IPSocketSettings settings, ILogger logger)
     : base(uri, settings, logger)
 {
     _settings = settings;
 }
Пример #7
0
 public TcpSocket(Uri uri, IPSocketSettings settings, ILoggerFactory loggerFactory)
     : base(uri, settings, loggerFactory.CreateLogger(nameof(TcpSocket)))
 {
 }
Пример #8
0
 public TcpSocket(Socket socket, IPSocketSettings settings, ILoggerFactory loggerFactory)
     : base(socket, settings, loggerFactory.CreateLogger(nameof(TcpSocket)))
 {
 }