예제 #1
0
        /// <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);
        }
예제 #2
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="publisherRepository">Instance that inherits from ICompanyRepository</param>
        public PublisherService(IPublisherRepository publisherRepository, ISupportRepository supportRepository)
        {
            if (publisherRepository == null ||supportRepository == null)
                throw new ArgumentNullException();

            this.publisherRepository = publisherRepository;
            this.supportRepository = supportRepository;
        }
예제 #3
0
        public ComicController()
        {
            DbContext sharedContext = new Data.ComiczillaDb();

            _repository = new ComicRepository(sharedContext);
            _authorRepository = new AuthorRepository(sharedContext);
            _genreRepository = new GenreRepository(sharedContext);
            _publisherRepository = new PublisherRepository(sharedContext);
            _chapterRepository = new ChapterRepository(sharedContext);
            _logRepository = new LogRepository(sharedContext);
        }
예제 #4
0
 public ComicController(IComicRepository repository, IAuthorRepository authorRepository,
                             IGenreRepository genreRepository, IPublisherRepository publisherRepository,
                             IChapterRepository chapterRepository, ILogRepository logRepository)
 {
     _repository = repository;
     _authorRepository = authorRepository;
     _genreRepository = genreRepository;
     _publisherRepository = publisherRepository;
     _chapterRepository = chapterRepository;
     _logRepository = logRepository;
 }
예제 #5
0
        public JournalsImport(IJournalRepository journalRepository, ILanguageRepository languageRepository, ICountryRepository countryRepository, ISubjectRepository subjectRepository, IPublisherRepository publisherRepository, GeneralImportSettings importSettings)
        {
            Requires.NotNull(journalRepository, "journalRepository");
            Requires.NotNull(languageRepository, "languageRepository");
            Requires.NotNull(countryRepository, "countryRepository");
            Requires.NotNull(subjectRepository, "subjectRepository");
            Requires.NotNull(publisherRepository, "publisherRepository");
            Requires.NotNull(importSettings, "importSettings");

            this.journalRepository = journalRepository;
            this.languageRepository = languageRepository;
            this.countryRepository = countryRepository;
            this.subjectRepository = subjectRepository;
            this.publisherRepository = publisherRepository;
            this.importSettings = importSettings;
        }
예제 #6
0
 public PublisherService(IPublisherRepository repository, IUnitOfWork unitOfWork)
 {
     _repository = repository;
     _unitOfWork = unitOfWork;
 }
예제 #7
0
 public IntegrationServiceApplication(IParserApplication parserApplication, IBookRepository bookRepository, IAuthorRepository authorRepository, IPublisherRepository publisherRepository, IGenreRepository genreRepository, ISeriesRepository seriesRepository, IShelfRepository shelfRepository, IRackRepository rackRepository, ILogger logger, IUserRepository userRepository, IImporter importer, IFileReciever fileReciever)
 {
     _parserApplication   = parserApplication;
     _bookRepository      = bookRepository;
     _authorRepository    = authorRepository;
     _publisherRepository = publisherRepository;
     _genreRepository     = genreRepository;
     _seriesRepository    = seriesRepository;
     _shelfRepository     = shelfRepository;
     _rackRepository      = rackRepository;
     _logger         = logger;
     _userRepository = userRepository;
     _importer       = importer;
     _fileReciever   = fileReciever;
 }
예제 #8
0
 public PublisherController(IPublisherRepository r)
 {
     repo = r;
 }
예제 #9
0
 public ValuesController(IMediator mediator, IAuthorRepository authorRepository, IPublisherRepository publisherRepository)
 {
     _mediator            = mediator;
     _authorRepository    = authorRepository;
     _publisherRepository = publisherRepository;
 }
 public HomeController(ILogger <HomeController> logger, IBookRepository bookRepository, IAuthorRepository authorRepository, UnitOfWork unitOfWork, IPublisherRepository publisherRepository)
 {
     _bookRepository      = bookRepository;
     _authorRepository    = authorRepository;
     UnitOfWork           = unitOfWork;
     _publisherRepository = publisherRepository;
     _logger = logger;
 }
예제 #11
0
 // GET: Publisher
 public PublisherController()
 {
     this._publisherRepository = new PublisherRepository(new PublisherContext());
 }
예제 #12
0
        public JournalsImport(IJournalRepository journalRepository, ILanguageRepository languageRepository, ICountryRepository countryRepository, ISubjectRepository subjectRepository, IPublisherRepository publisherRepository, GeneralImportSettings importSettings)
        {
            Requires.NotNull(journalRepository, nameof(journalRepository));
            Requires.NotNull(languageRepository, nameof(languageRepository));
            Requires.NotNull(countryRepository, nameof(countryRepository));
            Requires.NotNull(subjectRepository, nameof(subjectRepository));
            Requires.NotNull(publisherRepository, nameof(publisherRepository));
            Requires.NotNull(importSettings, nameof(importSettings));

            this.journalRepository   = journalRepository;
            this.languageRepository  = languageRepository;
            this.countryRepository   = countryRepository;
            this.subjectRepository   = subjectRepository;
            this.publisherRepository = publisherRepository;
            this.importSettings      = importSettings;
        }
예제 #13
0
 public PublisherControllerTests()
 {
     _publisherRepository = new PublisherRepository(GetContext());
 }
예제 #14
0
 public PublisherService(ILogger logger, IPublisherRepository repo) : base(logger)
 {
     _repo = repo;
 }
예제 #15
0
 public PublisherDomain()
 {
     _publisherRepository = new PublisherRepository();
 }
예제 #16
0
 public PublisherBusiness(IPublisherRepository publisherRepository)
 {
     _publisherRepository = publisherRepository;
 }
예제 #17
0
 public PublisherService(IPublisherRepository repository)
 {
     this._repository = repository;
 }
 public DefaultPublisherService(IPublisherRepository publisherRepository)
 {
     this._publisherRepository = publisherRepository;
 }
 public ApplicationService(IApplicationRepository ApplicationRepository, INotificationService notificationService, IPublisherRepository publisherRepository, IDatasetRepository datasetRepository, IUnitOfWork unitOfWork, ICoordinationRepository CoordinationRepository)
 {
     _applicationRepository  = ApplicationRepository;
     _coordinationRepository = CoordinationRepository;
     _publisherRepository    = publisherRepository;
     _datasetRepository      = datasetRepository;
     _notificationService    = notificationService;
     _unitOfWork             = unitOfWork;
 }
 public PublisherService(IPublisherRepository repositorio,
                         IApplicationUnitOfWork uow)
     : base(uow)
 {
     _repository = repositorio;
 }
예제 #21
0
 public BookController(IBookRepository bookrepository, IWriterRepository writerrepository, IBookWriterRepository bookwriterrepository, ILibraryRepository libraryrepository, IBookLibraryRepository booklibraryrepository, IPublisherRepository publisherrepository, IBookPublisherRepository bookpublisherrepository)
 {
     IBookRepository        = bookrepository;
     IWriterRepository      = writerrepository;
     IBookWriterRepository  = bookwriterrepository;
     ILibraryRepository     = libraryrepository;
     IBookLibraryRepository = booklibraryrepository;
 }
예제 #22
0
 public PublisherController(IPublisherRepository publisherRepository)
 {
     _publisherRepository = publisherRepository ?? throw new ArgumentNullException(nameof(publisherRepository));
 }
예제 #23
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PublishersController"/> class.
 /// </summary>
 /// <param name="publisherRepository">The publisher repository.</param>
 public PublishersController(IPublisherRepository publisherRepository)
 {
     this._publisherRepository = publisherRepository;
 }
예제 #24
0
 public PublisherService(IPublisherRepository publisherRepository, IUnityOfWork unityOfWork)
 {
     _publisherRepository = publisherRepository;
     _unityOfWork         = unityOfWork;
 }
 public AdminPublisherController(IPublisherRepository publisherRepository)
 {
     _publisherRepository = publisherRepository;
 }
예제 #26
0
        /// <summary>
        /// Preencho a HQ com a id passada
        /// </summary>
        public async void Dump(IComicRepository comicRepository, IAuthorRepository authorRepository,
                                IGenreRepository genreRepository, IPublisherRepository publisherRepository,
                                IChapterRepository chapterRepository, ILogRepository logRepository, int id)
        {
            //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 a HQ do repositório
            Comic dbComic = comicRepository.Get(id);

            //Se não tem no repositório, retorno
            if (dbComic == null) return;

            //Busco a HQ do cache
            ComicVisitor cacheComic = _cache.FirstOrDefault(c => c.ComicUrl == dbComic.ComicUrl);

            //Se não existe a HQ no cache ou já foi processada, retorno
            if (cacheComic == null) return;
            if (cacheComic.ComicState != ComicState.Empty) return;

            cacheComic.ComicId = id;

            //Se não processei a HQ ainda
            //Preencho a HQ
            cacheComic.ComicState = ComicState.Working;
            cacheComic = (ComicVisitor)_comicCrawler.Edit(cacheComic);


            AddAuthor(dbComic, authorRepository, cacheComic.DirtyStateAuthor);
            AddGenre(dbComic, genreRepository, cacheComic.DirtyStateGenre);
            AddPublisher(dbComic, publisherRepository, cacheComic.DirtyStatePublisher);
            AddChapters(id, chapterRepository, cacheComic.Chapters);
            
            //Libero a HQ
            cacheComic.ComicState = ComicState.Visited;
        }
예제 #27
0
 public EditionsController(IEditionRepository repository, IBookRepository bookRepository, IPublisherRepository publisherRepository, IMapper mapper)
 {
     _repository          = repository;
     _mapper              = mapper;
     _bookRepository      = bookRepository;
     _publisherRepository = publisherRepository;
 }
예제 #28
0
        private void AddPublisher(Comic comic, IPublisherRepository publisherRepository, string publisherStr)
        {
            if (string.IsNullOrEmpty(publisherStr)) return;

            string[] publishers = publisherStr.Split(',');

            foreach (string publisher in publishers)
            {
                string publisherTrim = publisher.Trim();

                Publisher publisherDb = publisherRepository.Find(g => g.PublisherName.Equals(publisherTrim)).FirstOrDefault();

                if (publisherDb == null)
                {
                    publisherDb = new Publisher
                    {
                        PublisherName = publisherTrim,
                        Comics = new List<Comic>()
                    };

                    publisherDb.Comics.Add(comic);
                    publisherRepository.Add(publisherDb);
                }
                else
                {
                    if (publisherDb.Comics == null) publisherDb.Comics = new List<Comic>();
                    if (publisherDb.Comics.Any(c => c.ComicUrl.Equals(comic.ComicUrl))) continue;

                    publisherDb.Comics.Add(comic);
                    publisherRepository.Edit(publisherDb);
                }

                if (comic.Publishers == null) comic.Publishers = new List<Publisher>();
                if (!comic.Publishers.Any(g => g.PublisherName.Equals(publisherTrim)))
                {
                    comic.Publishers.Add(publisherDb);
                }

                publisherRepository.Save();
            }
        }
예제 #29
0
 public PublisherManager(IPublisherRepository repository) : base(repository)
 {
 }
예제 #30
0
 public PublisherService(IPublisherRepository publisherRepository, IMapper mapper)
 {
     _publisherRepository = publisherRepository;
     _mapper = mapper;
 }
 protected PublisherCommandValidatorBase(IPublisherRepository publisherRepository)
 {
     _publisherRepository = publisherRepository;
     ValidateNameIsUnique();
     ValidateName();
 }
예제 #32
0
 public PublisherService(IPublisherRepository repo)
 {
     this.repo = repo;
 }
예제 #33
0
 public PublisherController()
 {
     publisherRepository = UnityFactory.ResolveObject <IPublisherRepository>();
     userRepository      = UnityFactory.ResolveObject <IUserRepository>();
 }
예제 #34
0
 public PublisherService(IPublisherRepository publisherRepository)
 {
     _publisherRepository = publisherRepository;
 }
예제 #35
0
 public PublisherValidator()
 {
     this.PublisherRepository = new PublisherRepository(new StoreContext());
 }
예제 #36
0
 public GetAllPublishersQueryHandler(IPublisherRepository publisherRepository, IMapper mapper)
 {
     _publisherRepository = publisherRepository;
     _mapper = mapper;
 }
예제 #37
0
 public GvaPublisherController(
     IPublisherRepository publisherRepository)
 {
     this.publisherRepository = publisherRepository;
 }
예제 #38
0
 public PublisherController(IPublisherRepository _publisherRepo)
 {
     publisherRepository = _publisherRepo;
 }