/// <summary>
 /// Initializes a new instance of the <see cref="SubscriptionWorker" /> class.
 /// </summary>
 /// <param name="fileProcessorManager">The file processor manager.</param>
 /// <param name="mediator">The mediator.</param>
 public FileProcessingWorker(IFileProcessorManager fileProcessorManager,
                             IMediator mediator,
                             IFileSystem fileSystem)
 {
     this.FileProcessorManager = fileProcessorManager;
     this.Mediator             = mediator;
     this.FileSystem           = fileSystem;
 }
Пример #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="FileRequestHandler"/> class.
 /// </summary>
 /// <param name="fileProcessorManager">The file processor manager.</param>
 /// <param name="fileAggregateRepository">The file aggregate repository.</param>
 /// <param name="transactionProcessorClient">The transaction processor client.</param>
 /// <param name="estateClient">The estate client.</param>
 /// <param name="securityServiceClient">The security service client.</param>
 /// <param name="fileFormatHandlerResolver">The file format handler resolver.</param>
 /// <param name="fileSystem">The file system.</param>
 public FileRequestHandler(IFileProcessorManager fileProcessorManager,
                           IAggregateRepository <FileImportLogAggregate, DomainEventRecord.DomainEvent> fileImportLogAggregateRepository,
                           IAggregateRepository <FileAggregate, DomainEventRecord.DomainEvent> fileAggregateRepository,
                           ITransactionProcessorClient transactionProcessorClient,
                           IEstateClient estateClient,
                           ISecurityServiceClient securityServiceClient,
                           Func <String, IFileFormatHandler> fileFormatHandlerResolver,
                           IFileSystem fileSystem)
 {
     this.FileProcessorManager             = fileProcessorManager;
     this.FileImportLogAggregateRepository = fileImportLogAggregateRepository;
     this.FileAggregateRepository          = fileAggregateRepository;
     this.TransactionProcessorClient       = transactionProcessorClient;
     this.EstateClient              = estateClient;
     this.SecurityServiceClient     = securityServiceClient;
     this.FileFormatHandlerResolver = fileFormatHandlerResolver;
     this.FileSystem = fileSystem;
 }
Пример #3
0
        public static IHostBuilder CreateHostBuilder(string[] args)
        {
            Console.Title = "File Processor";

            //At this stage, we only need our hosting file for ip and ports
            IConfigurationRoot config = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory())
                                        .AddJsonFile("hosting.json", optional: true)
                                        .AddJsonFile("hosting.development.json", optional: true)
                                        .AddEnvironmentVariables().Build();

            IHostBuilder hostBuilder = Host.CreateDefaultBuilder(args);

            hostBuilder.UseLamar();
            hostBuilder.ConfigureLogging(logging =>
            {
                logging.AddConsole();
            });
            hostBuilder.ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder.UseStartup <Startup>();
                webBuilder.UseConfiguration(config);
                webBuilder.UseKestrel();
            });
            hostBuilder.ConfigureServices(services =>
            {
                services.AddHostedService <FileProcessingWorker>(provider =>
                {
                    IFileProcessorManager fileProcessorManager =
                        provider.GetRequiredService <IFileProcessorManager>();
                    IMediator mediator          = provider.GetRequiredService <IMediator>();
                    IFileSystem fileSystem      = provider.GetRequiredService <IFileSystem>();
                    FileProcessingWorker worker =
                        new FileProcessingWorker(fileProcessorManager,
                                                 mediator,
                                                 fileSystem);
                    worker.TraceGenerated += Worker_TraceGenerated;
                    return(worker);
                });
            });

            return(hostBuilder);
        }
Пример #4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="FileController" /> class.
 /// </summary>
 /// <param name="mediator">The mediator.</param>
 /// <param name="manager">The manager.</param>
 public FileController(IMediator mediator, IFileProcessorManager manager, IModelFactory modelFactory)
 {
     this.Mediator     = mediator;
     this.Manager      = manager;
     this.ModelFactory = modelFactory;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="FileImportLogController"/> class.
 /// </summary>
 /// <param name="manager">The manager.</param>
 /// <param name="modelFactory">The model factory.</param>
 public FileImportLogController(IFileProcessorManager manager,
                                IModelFactory modelFactory)
 {
     this.Manager      = manager;
     this.ModelFactory = modelFactory;
 }