示例#1
0
        private void ReceivedStartMessage(StartedReadingMessage message)
        {
            if (_isAlreadyReading)
                throw new InvalidOperationException("User is already reading another article!");

            _stopwatch.Start();
            _isAlreadyReading = true;
        }
示例#2
0
        private void ReceivedStartMessage(StartedReadingMessage message)
        {
            IActorRef userActor;

            if (!_users.TryGetValue(message.User, out userActor))
            {
                userActor = Context.ActorOf(Props.Create(typeof(UserActor)), message.User);
                _users.Add(message.User, userActor);
            }

            userActor.Tell(message);
        }
示例#3
0
        private void IncreaseViewCounter(StartedReadingMessage message)
        {
            int count;

            if (_articleViews.TryGetValue(message.Article, out count))
            {
                _articleViews[message.Article]++;
            }
            else
            {
                _articleViews.Add(message.Article, 1);
            }

            Console.WriteLine("******************************************************");
            Console.WriteLine("Article {0} has {1} views", message.Article, _articleViews[message.Article]);
            Console.WriteLine("******************************************************\n");
        }