Example #1
0
 /// <summary>
 /// Конструктор.
 /// </summary>
 /// <param name="mediator">Медиатр.</param>
 /// <param name="logger">Логгер.</param>
 /// <param name="buildSyncService"><see cref="IBuildSyncService"/>.</param>
 public BackgroundJobWithNotificationService(
     IMediator mediator,
     ILogger <BackgroundJobWithNotificationService> logger,
     IBuildSyncService buildSyncService)
 {
     this.mediator         = mediator;
     this.logger           = logger;
     this.buildSyncService = buildSyncService;
 }
 /// <summary>
 /// Конструктор.
 /// </summary>
 /// <param name="aggregateRepository"><see cref="IAggregateRepository"/>.</param>
 /// <param name="logger">Логгер.</param>
 /// <param name="changeChecker"><see cref="IBuildStateChangeChecker"/>.</param>
 /// <param name="buildLifeCycleStateMapper"><see cref="IBuildLifeCycleStateMapper"/>.</param>
 /// <param name="buildSyncService"><see cref="IBuildSyncService"/>.</param>
 public ChangeBuildStateHandler(
     IAggregateRepository aggregateRepository,
     ILogger <ChangeBuildStateHandler> logger,
     IBuildStateChangeChecker changeChecker,
     IBuildLifeCycleStateMapper buildLifeCycleStateMapper,
     IBuildSyncService buildSyncService
     ) : base(aggregateRepository, logger)
 {
     this.changeChecker             = changeChecker;
     this.buildLifeCycleStateMapper = buildLifeCycleStateMapper;
     this.buildSyncService          = buildSyncService;
 }
        /// <summary>
        /// Ищет сборки по биндингам.
        /// </summary>
        /// <param name="buildSyncService">Сервис синхронизации.</param>
        /// <param name="bindings">Биндинги.</param>
        /// <returns><placeholder>A <see cref="Task"/> representing the asynchronous operation.</placeholder></returns>
        public static async Task <IEnumerable <BuildDto> > ParseBuilds(
            this IBuildSyncService buildSyncService,
            IEnumerable <BuildsBinding> bindings)
        {
            List <Task <ParseBuildsResponse> > tasks =
                bindings
                .Select(b => buildSyncService.ParseBuilds(b.Path, b.SourceType, b.Pattern.Regexp))
                .ToList();

            ParseBuildsResponse[] messages = await Task.WhenAll(tasks);

            return(messages.SelectMany(s => s.Builds));
        }
 /// <summary>
 /// Конструктор.
 /// </summary>
 /// <param name="mapper">Маппер типов.</param>
 /// <param name="mediator"><see cref="IMediator"/>.</param>
 /// <param name="buildSyncService">Сервис BuildSync.</param>
 /// <param name="authorizedUserProvider">Провайдер для доступа к текущему пользователю.</param>
 /// <param name="buildMatchPatternReadOnlyRepository">a.</param>
 /// <param name="buildReadOnlyRepository">Репозиторий сборок.</param>
 /// <param name="distributionReadOnlyRepository">.</param>
 public BuildsController(
     IMapper mapper,
     IMediator mediator,
     IBuildSyncService buildSyncService,
     IAuthorizedUserProvider authorizedUserProvider,
     IReadOnlyRepository <BuildMatchPatternReadModel> buildMatchPatternReadOnlyRepository,
     IReadOnlyRepository <BuildReadModel> buildReadOnlyRepository,
     IReadOnlyRepository <DistributionReadModel> distributionReadOnlyRepository
     )
 {
     this.mapper                 = mapper;
     this.mediator               = mediator;
     this.buildSyncService       = buildSyncService;
     this.authorizedUserProvider = authorizedUserProvider;
     this.buildMatchPatternReadOnlyRepository = buildMatchPatternReadOnlyRepository;
     this.buildReadOnlyRepository             = buildReadOnlyRepository;
     this.distributionReadOnlyRepository      = distributionReadOnlyRepository;
 }