Beispiel #1
0
        public void Handle(PlayerContactVerified @event)
        {
            var repository = _container.Resolve <IBonusRepository>();

            using (var scope = CustomTransactionScope.GetTransactionScope())
            {
                var player = repository.GetLockedPlayer(@event.PlayerId);
                if (@event.ContactType == ContactType.Mobile)
                {
                    player.VerifyMobileNumber();
                }
                if (@event.ContactType == ContactType.Email)
                {
                    player.VerifyEmailAddress();
                }

                if (player.Data.IsEmailVerified && player.Data.IsMobileVerified)
                {
                    var bonusCommands = _container.Resolve <BonusCommands>();
                    bonusCommands.ProcessFirstBonusRedemptionOfType(player, BonusType.MobilePlusEmailVerification);
                }

                repository.SaveChanges();
                scope.Complete();
            }
        }
Beispiel #2
0
 public void Handle(PlayerContactVerified @event)
 {
     if (@event.ContactType == ContactType.Email)
     {
         AddActivityLog("Activation performed by email", @event, @event.PlayerId);
     }
     else if (@event.ContactType == ContactType.Mobile)
     {
         AddActivityLog("Activation performed by sms", @event, @event.PlayerId);
     }
 }
Beispiel #3
0
 public void Consume(PlayerContactVerified message)
 {
     _playerHandlers.Handle(message);
 }
Beispiel #4
0
 public void Consume(PlayerContactVerified message)
 {
     _playerSubscriber.Handle(message);
 }