internal void InvokeSessionClosed(SessionViewModel session)
 {
     if (this.SessionClosed != null)
     {
         this.SessionClosed.Invoke(this, new SessionViewModelEventArgs(session));
     }
     this.InvokePropertyChanged("Packets");
 }
Example #2
0
        private void ServerOnClientConnected(object sender, PacketSessionEventArgs packetSessionEventArgs)
        {
            PacketSession session = packetSessionEventArgs.PacketSession;

            var message = string.Format("{1}: Client connected with SessionID '{0}' ", session.Session.Uid, DateTime.Now);
            log.InfoFormat("Client connected with SessionID '{0}' ", session.Session.Uid);

            var serverConsoleBuilder = new StringBuilder(this.ServerConsole);
            serverConsoleBuilder.AppendLine(message);
            this.ServerConsole = serverConsoleBuilder.ToString();

            var sessionViewModel = new SessionViewModel(session, SynchronousInvoker);
            sessionViewModel.SessionClosed += SessionViewModelOnSessionClosed;
            Sessions.Add(sessionViewModel);

            InvokePropertyChanged("Sessions");
            InvokePropertyChanged("ServerConsole");

            session.StartReceiving();
        }
 public SessionViewModelEventArgs(SessionViewModel viewModel)
 {
     this.SessionViewModel = viewModel;
 }