50 lines
1.6 KiB
C#
Raw Normal View History

2020-10-29 12:17:09 +02:00
using System.Diagnostics.CodeAnalysis;
using Hangfire;
using MalwareMultiScan.Api.Extensions;
using MalwareMultiScan.Api.Services;
2020-10-29 12:17:09 +02:00
using MalwareMultiScan.Api.Services.Interfaces;
using MalwareMultiScan.Shared.Extensions;
using MalwareMultiScan.Shared.Services.Interfaces;
2020-10-22 22:20:21 +03:00
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
2020-10-22 22:20:21 +03:00
namespace MalwareMultiScan.Api
{
2020-10-29 12:17:09 +02:00
internal class Startup
2020-10-22 22:20:21 +03:00
{
private readonly IConfiguration _configuration;
2020-10-22 22:20:21 +03:00
public Startup(IConfiguration configuration)
{
_configuration = configuration;
2020-10-22 22:20:21 +03:00
}
2020-10-26 17:06:29 +02:00
2020-10-22 22:20:21 +03:00
public void ConfigureServices(IServiceCollection services)
{
services.AddDockerForwardedHeadersOptions();
2020-10-29 16:09:56 +02:00
services.AddConsul(_configuration);
services.AddMongoDb(_configuration);
services.AddHangfire(_configuration);
2020-10-29 12:17:09 +02:00
services.AddSingleton<IScanResultService, ScanResultService>();
services.AddSingleton<IScanResultJob, ScanResultJob>();
2020-10-22 22:20:21 +03:00
services.AddControllers();
services.AddHttpClient();
2020-10-22 22:20:21 +03:00
}
public void Configure(IApplicationBuilder app, IHostEnvironment hostEnvironment)
2020-10-22 22:20:21 +03:00
{
app.UseRouting();
app.UseEndpoints(endpoints => endpoints.MapControllers());
app.UseForwardedHeaders();
if (hostEnvironment.IsDevelopment())
app.UseHangfireDashboard();
2020-10-22 22:20:21 +03:00
}
}
}