예제 #1
0
        public void Start()
        {
            Logger.Info("Starting the tracker...");
            try
            {
                StartTracker(TrackerIdentity);
            }
            catch (ServerSocketException ex)
            {
                if (ex.ExceptionType == ServerSocketErrors.AddressAlreadyTaken)
                {
                    TrackerIdentity.IPEndPoint.Port++;
                    Logger.Critical($"Port Already taken retring with {TrackerIdentity.IPEndPoint.Port.ToString()}");
                    Start();
                    return;
                }

                Logger.Error("Socket Exception : " + ex.ExceptionType.ToString());
                return;
            }
            Logger.Info("Done.");
            Logger.Info("Event Setup...");
            EventSetup();
            Logger.Info("Done.");
            Logger.Info("Setup tracker xml");
            ServerXml.Setup();
            Logger.Info("Done.");
            AddSeverIdXML();
        }