public BowlingPlayer(string name, IBowlingGameRules gameRules, IFrameEntity frameEntity, IPlayerEntity playerEntity, IFrameMapper frameMapper)
            : base(name, playerEntity)
        {
            _gameRules = gameRules;

            _frameEntity = frameEntity;

            _frameMapper = frameMapper;

            Frames = new List <IFrame>();
        }
        public BowlingGame(
            IPlayers players,
            IGameCalculator gameCalculator,
            IGameRules gameRules,
            IGameEntity bowlingGamEntity,
            IMessageFactory messageFactory,
            IPlayerFactory playerFactory) :
            base(players, gameCalculator, gameRules, bowlingGamEntity)
        {
            MessageFactory = messageFactory;

            PlayerFactory = playerFactory;

            bowlingGamEntity.Insert("Bowling", DateTime.Now, Guid.NewGuid());

            _bowlingGameRules = gameRules as BowlingGameRules;

            Logger.Info("BowlingGame :: Create a new Game");
        }