예제 #1
0
        private async void OnStartSmbListener(object obj)
        {
            var request = new NewSmbListenerRequest
            {
                Name     = ViewModel.ListenerName,
                PipeName = PipeName
            };

            var response = await ListenerAPI.StartSmbListener(request);

            var window = new Window
            {
                Height = 200,
                Width  = 400,
                WindowStartupLocation = WindowStartupLocation.CenterOwner
            };

            if (string.IsNullOrEmpty(response.ListenerName))
            {
                window.Content = "Failed to start listener";
                window.ShowDialog();
            }

            View.Close();
        }
예제 #2
0
        private async void OnStartHttpListener(object obj)
        {
            var request = new NewHttpListenerRequest
            {
                Name           = ViewModel.ListenerName,
                BindPort       = BindPort,
                ConnectAddress = ConnectAddress,
                ConnectPort    = ConnectPort,
            };

            var response = await ListenerAPI.StartHttpListener(request);

            var window = new Window
            {
                Height = 200,
                Width  = 400,
                WindowStartupLocation = WindowStartupLocation.CenterOwner
            };

            if (string.IsNullOrEmpty(response.ListenerId))
            {
                window.Content = "Failed to start listener";
                window.ShowDialog();
            }

            View.Close();
        }
예제 #3
0
        private async void GetListeners()
        {
            var listeners = await ListenerAPI.GetAllListeners();

            foreach (var listener in listeners)
            {
                Listeners.Add(string.Format("{0} : {1}", listener.ListenerId, listener.Type));
            }
        }
예제 #4
0
        private async void GetListeners()
        {
            var listeners = await ListenerAPI.GetAllListeners();

            foreach (var listener in listeners)
            {
                Listeners.Add(new Listener {
                    ListenerName = listener.ListenerName, ListenerGuid = listener.ListenerGuid, ListenerType = listener.Type
                });
                ListenerList.Add(string.Format("{0} : {1}", listener.ListenerName, listener.Type));
            }
        }
예제 #5
0
        private async void GetWebLogs()
        {
            var logs = await ListenerAPI.GetWebLogs();

            if (logs != null)
            {
                foreach (var log in logs)
                {
                    if (!WebLogs.Any(l => l.Date == log.Date))
                    {
                        WebLogs.Insert(0, log);
                    }
                }
            }
        }
예제 #6
0
        private async void GetActiveListeners()
        {
            var httpListeners = await ListenerAPI.GetHttpListeners();

            var tcpListeners = await ListenerAPI.GetTcpListeners();

            if (httpListeners != null)
            {
                foreach (var http in httpListeners)
                {
                    if (!ActiveListeners.Any(l => l.ListenerId.Equals(http.ListenerId)))
                    {
                        ActiveListeners.Add(http);
                    }
                }

                foreach (var listener in ActiveListeners.Where(l => l.Type == ListenerType.HTTP).ToList())
                {
                    if (!httpListeners.Any(l => l.ListenerId == listener.ListenerId))
                    {
                        ActiveListeners.Remove(listener);
                    }
                }
            }

            if (tcpListeners != null)
            {
                foreach (var tcp in tcpListeners)
                {
                    if (!ActiveListeners.Any(l => l.ListenerId.Equals(tcp.ListenerId)))
                    {
                        ActiveListeners.Add(tcp);
                    }
                }

                foreach (var listener in ActiveListeners.Where(l => l.Type == ListenerType.TCP).ToList())
                {
                    if (!tcpListeners.Any(l => l.ListenerId == listener.ListenerId))
                    {
                        ActiveListeners.Remove(listener);
                    }
                }
            }
        }
예제 #7
0
 private void OnRemoveListener(object obj)
 {
     ListenerAPI.StopListener(SelectedListener.ListenerName, SelectedListener.Type);
 }