Example #1
0
        private void AcceptLoop(IPresentation personality)
        {
            Console.WriteLine("in accept loop");

            while (true)
            {
                MessageChannel newChannel = personality.AwaitNextConnection();
                Console.WriteLine("accepted");
                _channels.Add(newChannel);

                // TODO: we're going to need to maintain a list of "canonical" clients for each personality at some point
                newChannel.MessageReceived += ((msg) => MakeActionAndDispatch(msg, newChannel));
                newChannel.ChannelClosed += (() => OnChannelClosed(newChannel));
            }
        }