public void Handle(AddFireBaseTokenCommand command)
        {
            if (command == null)
            {
                throw new ArgumentNullException(nameof(command));
            }

            if (string.IsNullOrEmpty(command.PersonalNumber) || string.IsNullOrEmpty(command.FirebaseToken) ||
                string.IsNullOrEmpty(command.NotificationTypeId))
            {
                throw new ArgumentException("Command is not valid, missing requeried parameters");
            }

            if (command.PersonalNumber.Length != 12)
            {
                throw new ArgumentException("Personal number must be 12 characters");
            }

            //if (_personalNumberAndTokenReadModell.TokenExistsOnOtherPersonalNumber(
            //    command.PersonalNumber,
            //    command.FirebaseToken))
            //{
            //    //_personExecutor.Execute("1234", person => person.RemoveToken(), Guid.NewGuid());
            //    throw new InvalidOperationException("Token already used by other person");

            //}
            _personExecutor.Execute(command.PersonalNumber, p => p.AddToken(command.FirebaseToken, command.NotificationTypeId), command.CommandId);
        }
        public IHttpActionResult AddToken(AddFireBaseTokenCommand command)
        {
            if (command == null)
            {
                return(BadRequest("No command"));
            }

            try
            {
                FakedDi.GetPersonCommandHandler.Handle(command);
            }
            catch (Exception)
            {
                throw;
            }
            return(Ok());
        }