Exemple #1
0
        private void NoActivityTimerCallback(object state)
        {
            ClientHandler clientHandler = (ClientHandler)state;

            Console.WriteLine("No activity from client, closing socket: "
                              + DateTime.Now);
            --connectionsCount;
            clientHandler.CloseConnection();
            clientHandler.noActivityTimer.Dispose();
            GC.Collect();
            GC.WaitForPendingFinalizers();
        }
        public ActionResult SaveFlightDataList(string fileName, List <FlightData> flightDataList)
        {
            ClientHandler clientHandler = new ClientHandler();

            clientHandler.CloseConnection();

            if (fileName == String.Empty || flightDataList == null || flightDataList.Count == 0)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, "File name or data is missing"));
            }

            FileManager <List <FlightData> > fManager = new FileManager <List <FlightData> >();
            bool hasDataSaved = fManager.SaveData(fileName, flightDataList);

            if (!hasDataSaved)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "Saving data has failed"));
            }
            return(new HttpStatusCodeResult(HttpStatusCode.OK));
        }
Exemple #3
0
        public ActionResult DisplayFlight(string ip, int port, double interval)
        {
            IPAddress ipAddr;

            if (IPAddress.TryParse(ip, out ipAddr))
            {
                Session["IP"]       = ip;
                Session["Port"]     = port;
                Session["Interval"] = interval;

                ClientHandler clientHandler = new ClientHandler();
                clientHandler.CloseConnection();

                return(View("DisplayFlight"));
            }
            else
            {
                Session["FileName"] = ip;
                Session["Interval"] = port;
                return(View("ViewFlightData"));
            }
        }