Blaze.Server.BlazeHubServer.AcceptCallback C# (CSharp) Method

AcceptCallback() private static method

private static AcceptCallback ( IAsyncResult ar ) : void
ar IAsyncResult
return void
        private static void AcceptCallback(IAsyncResult ar)
        {
            var socket = (Socket)ar.AsyncState;

            try
            {
                var clientSocket = (Socket)socket.EndAccept(ar);

                Log.Info($"Client connected from {clientSocket.RemoteEndPoint.ToString()}");

                var client = new Client();

                client.ID = Interlocked.Increment(ref _clientID);
                client.Socket = clientSocket;
                client.Stream = new SslStream(new NetworkStream(clientSocket));
                client.EndPoint = (IPEndPoint)clientSocket.RemoteEndPoint;

                Clients.Add(client.ID, client);

                client.Stream.BeginAuthenticateAsServer(Certificate.BlazeHubServer, AuthenticateAsServerCallback, client.ID);
            }
            catch (Exception ex)
            {
                Log.Error(ex.ToString());
            }

            socket.BeginAccept(AcceptCallback, socket);
        }