/// <summary>
        /// Preencho o repositório com as HQs novas
        /// </summary>
        public void Dump(IComicRepository comicRepository, IAuthorRepository authorRepository,
                                IGenreRepository genreRepository, IPublisherRepository publisherRepository,
                                ILogRepository logRepository)
        {
            //Se já processei nesse período, retorno
            DateTime lastSyncDate = logRepository.GetLastComicListUpdate();
            if (lastSyncDate.AddHours(24) > DateTime.Now) return;

            //Espero terminar de processar
            while (_working) Thread.Sleep(10);

            //Busco todas as HQs do banco
            IList<Comic> repoList = comicRepository.Read();

            //Comparo o que mudou
            foreach (ComicVisitor cacheComic in _cache)
            {
                if (repoList.Any(c => c.ComicName.ToUpper().Equals(cacheComic.ComicName.ToUpper()))) continue;

                //Se tem uma HQ nova, adiciono
                Comic dbComic = ComicVisitor.ToComic(cacheComic);
                comicRepository.Add(dbComic);
                cacheComic.ComicId = dbComic.ComicId;
            }

            comicRepository.Save();
            logRepository.SetLastComicListUpdate(DateTime.Now);
        }