Exemple #1
0
        private static void DispatchMessage(ISockFilter filter, ISockCommand cmd)
        {
            //Clone list
            List <RPCConnection> clientsSafe = new List <RPCConnection>();

            lock (connections)
                clientsSafe.AddRange(connections);

            //Search
            foreach (var c in clientsSafe)
            {
                //Filter
                if (!filter.CheckFilter(c))
                {
                    continue;
                }

                //Send
                c.EnqueueMessage(cmd);
            }
        }
 private async Task OnInternalCommandReceive(ISockCommand cmd)
 {
     await cmd.HandleCommand(this);
 }
 public void EnqueueMessage(ISockCommand cmd)
 {
     channel.Writer.WriteAsync(cmd);
 }