change the communication protocol to RMQ

This commit is contained in:
Volodymyr Smirnov
2020-10-26 16:20:47 +02:00
parent b6c3cb4131
commit 29156b7f10
25 changed files with 439 additions and 173 deletions

View File

@@ -1,8 +1,11 @@
using EasyNetQ;
using MalwareMultiScan.Api.Services;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.HttpOverrides;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.OpenApi.Models;
using MongoDB.Driver;
namespace MalwareMultiScan.Api
@@ -18,8 +21,11 @@ namespace MalwareMultiScan.Api
public void ConfigureServices(IServiceCollection services)
{
services.AddSingleton(x =>
RabbitHutch.CreateBus(_configuration.GetConnectionString("RabbitMQ")));
services.AddSingleton<ScanBackendService>();
services.AddSingleton<ScanResultsService>();
services.AddSingleton<ScanResultService>();
services.AddSingleton(
serviceProvider =>
@@ -32,13 +38,45 @@ namespace MalwareMultiScan.Api
services.AddControllers();
services.AddHttpClient();
services.AddSwaggerGen(options =>
{
options.SwaggerDoc("MalwareMultiScan",
new OpenApiInfo
{
Title = "MalwareMultiScan",
Version = "1.0.0"
});
});
services.AddHostedService<ReceiverHostedService>();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app.UseRouting();
var forwardingOptions = new ForwardedHeadersOptions
{
ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto
};
app.UseEndpoints(endpoints => { endpoints.MapControllers(); });
forwardingOptions.KnownNetworks.Clear();
forwardingOptions.KnownProxies.Clear();
app.UseForwardedHeaders(forwardingOptions);
app.UseEndpoints(endpoints => endpoints.MapControllers());
app.UseSwagger();
app.UseSwaggerUI(options =>
{
options.DocumentTitle = "MalwareMultiScan";
options.SwaggerEndpoint(
$"/swagger/{options.DocumentTitle}/swagger.json", options.DocumentTitle);
});
}
}
}