Exemple #1
0
        public async Task SetMode(int modeId)
        {
            var currentMode = await _persistenceService.GetMode();

            if (modeId != currentMode)
            {
                var playlistTask = InitialisePlaylists();
                var indexTask    = _componentPlaylistTrackingService.PopulateLastTrackIndexes();
                await Task.WhenAll(playlistTask, indexTask);

                switch (modeId)
                {
                case 0:
                    await SetFullThrottleMode();

                    break;

                case 1:
                    await SetNormalMode();

                    break;

                case 2:
                    await SetFillerMode();

                    break;

                case 3:
                    await SetEndOfNightMode();

                    break;
                }

                await _persistenceService.SaveMode(modeId);
            }
        }