Наследование: TcpConnectionBase, ITcpConnection
Пример #1
0
        public static ITcpConnection CreateConnectingTcpConnection(Guid connectionId, 
                                                                   IPEndPoint remoteEndPoint, 
                                                                   TcpClientConnector connector, 
                                                                   TimeSpan connectionTimeout,
                                                                   Action<ITcpConnection> onConnectionEstablished, 
                                                                   Action<ITcpConnection, SocketError> onConnectionFailed,
                                                                   bool verbose)
        {
            var connection = new TcpConnection(connectionId, remoteEndPoint, verbose);
// ReSharper disable ImplicitlyCapturedClosure
            connector.InitConnect(remoteEndPoint,
                                  (_, socket) =>
                                  {
                                      connection.InitSocket(socket);
                                      if (onConnectionEstablished != null)
                                          onConnectionEstablished(connection);
                                  },
                                  (_, socketError) =>
                                  {
                                      if (onConnectionFailed != null)
                                          onConnectionFailed(connection, socketError);
                                  }, connection, connectionTimeout);
// ReSharper restore ImplicitlyCapturedClosure
            return connection;
        }
 internal static TcpConnection CreateConnectingTcpConnection(IPEndPoint remoteEndPoint, 
                                                             TcpClientConnector connector, 
                                                             Action<TcpConnection> onConnectionEstablished, 
                                                             Action<TcpConnection, SocketError> onConnectionFailed)
 {
     var connection = new TcpConnection(remoteEndPoint);
     connector.InitConnect(remoteEndPoint,
                           (_, socket) =>
                           {
                               connection.InitSocket(socket);
                               if (onConnectionEstablished != null)
                                   onConnectionEstablished(connection);
                               connection.TrySend();
                           },
                           (_, socketError) =>
                           {
                               if (onConnectionFailed != null)
                                   onConnectionFailed(connection, socketError);
                           });
     return connection;
 }
Пример #3
0
        public TcpTypedConnection(TcpConnection connection,
                                  IMessageFormatter <T> formatter,
                                  IMessageFramer framer)
        {
            if (formatter == null)
            {
                throw new ArgumentNullException("formatter");
            }
            if (framer == null)
            {
                throw new ArgumentNullException("framer");
            }

            _connection       = connection;
            _formatter        = formatter;
            _framer           = framer;
            EffectiveEndPoint = connection.EffectiveEndPoint;

            connection.ConnectionClosed += OnConnectionClosed;

            //Setup callback for incoming messages
            framer.RegisterMessageArrivedCallback(IncomingMessageArrived);
        }
Пример #4
0
            internal static TcpConnection CreateConnectingTcpConnection(IPEndPoint remoteEndPoint, TcpClientConnector connector, Action <TcpConnection> onConnectionEstablished, Action <TcpConnection, SocketError> onConnectionFailed)
            {
                var connection = new TcpConnection(remoteEndPoint);

                connector.InitConnect(remoteEndPoint,
                                      (_, socket) =>
                {
                    connection.InitSocket(socket);
                    if (onConnectionEstablished != null)
                    {
                        onConnectionEstablished(connection);
                    }
                    connection.TrySend();
                },
                                      (_, socketError) =>
                {
                    if (onConnectionFailed != null)
                    {
                        onConnectionFailed(connection, socketError);
                    }
                });
                return(connection);
            }
 internal static TcpConnection CreateAcceptedTcpConnection(IPEndPoint effectiveEndPoint, Socket socket)
 {
     var connection = new TcpConnection(effectiveEndPoint);
     connection.InitSocket(socket);
     return connection;
 }
Пример #6
0
 public static ITcpConnection CreateAcceptedTcpConnection(Guid connectionId, IPEndPoint remoteEndPoint, Socket socket, bool verbose)
 {
     var connection = new TcpConnection(connectionId, remoteEndPoint, verbose);
     connection.InitSocket(socket);
     return connection;
 }