private void HandleIncrementMessage(IncrementPlayCountMessage message)
        {
            if (_moviePlayCounts.ContainsKey(message.MovieTitle))
            {
                _moviePlayCounts[message.MovieTitle]++;
            }
            else
            {
                _moviePlayCounts.Add(message.MovieTitle, 1);
            }

            //  Simulated bugs
            if (_moviePlayCounts[message.MovieTitle] > 3)
            {
                throw new SimulatedCorruptStateException();
            }

            if (message.MovieTitle == "Partial Recoil")
            {
                throw new SimulatedTerribleMovieException();
            }

            ColorConsole.WriteMagenta(
                "MoviePlayCounterActor '{0}' has been watched {1} times",
                message.MovieTitle, _moviePlayCounts[message.MovieTitle]);
        }
예제 #2
0
        private void HandleIncrementMessage(IncrementPlayCountMessage message)
        {
            if (this._moviePlayCounts.ContainsKey(message.MovieTitle))
            {
                this._moviePlayCounts[message.MovieTitle]++;
            }
            else
            {
                this._moviePlayCounts.Add(message.MovieTitle, 1);
            }

            if (this._moviePlayCounts[message.MovieTitle] > 3)
            {
                throw new SimulatedCorruptStateException();
            }

            if (message.MovieTitle.Equals("Partial Recoil", StringComparison.OrdinalIgnoreCase))
            {
                throw new SimulatedTerribleMovieException();
            }

            ColorConsole.WriteMagenta(
                $"MoviePlayCounterActor '{message.MovieTitle}' has been watched {this._moviePlayCounts[message.MovieTitle]}");
        }