Пример #1
0
        public void RunSimulation()
        {
            var ferengi   = new Planet("Ferengi", new PolarCoordinates(0, 500), -1);
            var betasoide = new Planet("Betasoide", new PolarCoordinates(0, 2000), -3);
            var vulcano   = new Planet("Vulcano", new PolarCoordinates(0, 1000), 5);

            var solarSystem = new SolarSystem(new List <Planet>()
            {
                ferengi, betasoide, vulcano
            });
            var weatherCollection = new WeatherConditionCollection();

            var droughtObserver     = new DroughtObserver(weatherCollection);
            var rainObserver        = new RainObserver(weatherCollection);
            var optimalCondObserver = new OptimalConditionsObserver(weatherCollection);

            solarSystem.AddObserver(droughtObserver);
            solarSystem.AddObserver(rainObserver);
            solarSystem.AddObserver(optimalCondObserver);

            solarSystem.AdvanceDays(3650);

            this.weatherConditionRepository.Persist(weatherCollection.GetAll());
        }