internal NetConnection CreateConnection(Direction direction, Socket socket, ConnectionConfirmed confirmedAction = null)
        {
            NetConnection connection = Create(direction, socket, confirmedAction);

            if (connection == null)
            {
                return(null);
            }

            OnConnectionCreated?.Invoke(null, new NetConnectionCreatedEventArgs(connection));
            return(connection);
        }
예제 #2
0
        public NetConnection(Direction direction, Socket socket, ConnectionConfirmed confirmdAction = null)
        {
            Direction      = direction;
            Socket         = socket;
            RemoteEndPoint = Socket.RemoteEndPoint;

            ConnectionConfirmed = confirmdAction;

            CancellationToken = new CancellationTokenSource();

            ConnectionState = ConnectionState.Handshake;
            IsConnected     = true;

            PacketWriteQueue = new BlockingCollection <byte[]>();
        }
예제 #3
0
        public NetConnection(PacketDirection packetDirection, Socket socket, ConnectionConfirmed confirmdAction = null)
        {
            PacketDirection = packetDirection;
            Socket          = socket;
            RemoteEndPoint  = Socket.RemoteEndPoint;

            ConnectionConfirmed = confirmdAction;

            CancellationToken = new CancellationTokenSource();

            ConnectionState = ConnectionState.Handshake;
            IsConnected     = true;

            PacketWriteQueue = new BlockingCollection <EnqueuedPacket>();
            //HandlePacketQueue = new BlockingCollection<TemporaryPacketData>();
        }
예제 #4
0
        public NetConnection(Direction direction, Socket socket, ConnectionConfirmed confirmdAction = null, DedicatedThreadPool threadPool = null)
        {
            Direction      = direction;
            Socket         = socket;
            RemoteEndPoint = Socket.RemoteEndPoint;
            ThreadPool     = threadPool;

            ConnectionConfirmed = confirmdAction;

            CancellationToken = new CancellationTokenSource();

            ConnectionState = ConnectionState.Handshake;
            IsConnected     = true;

            PacketWriteQueue  = new BlockingCollection <EnqueuedPacket>();
            HandlePacketQueue = new BlockingCollection <TemporaryPacketData>();
        }
 protected override NetConnection Create(Direction direction, Socket socket, ConnectionConfirmed confirmedAction = null)
 {
     return(new MCNetConnection(Server, direction, socket));
 }
        protected virtual NetConnection Create(Direction direction, Socket socket, ConnectionConfirmed confirmedAction = null)
        {
            NetConnection conn = new NetConnection(direction, socket, confirmedAction);

            return(conn);
        }