Fixing SonarCloud integration + fixing CodeSmells

This commit is contained in:
2024-05-04 18:47:58 +02:00
parent 708966fcf8
commit 79b66cb8b4
7 changed files with 68 additions and 63 deletions

View File

@@ -3,56 +3,58 @@ using Microsoft.AspNetCore.Mvc;
using BasicDotnetTemplate.MainProject.Models.Api.Response;
using BasicDotnetTemplate.MainProject.Models.Settings;
[Controller]
public abstract class BaseController : ControllerBase
namespace BasicDotnetTemplate.MainProject.Controllers
{
protected readonly IConfiguration _configuration;
protected readonly AppSettings _appSettings;
public BaseController(
IConfiguration configuration
)
public abstract class BaseController : ControllerBase
{
_configuration = configuration;
_appSettings = new AppSettings();
_configuration.GetSection("AppSettings").Bind(_appSettings);
}
protected readonly IConfiguration _configuration;
protected readonly AppSettings _appSettings;
public BaseController(
IConfiguration configuration
)
{
_configuration = configuration;
_appSettings = new AppSettings();
_configuration.GetSection("AppSettings").Bind(_appSettings);
}
#nullable enable
private BaseResponse CreateResponse(HttpStatusCode status, string message, object? data = null)
{
return new BaseResponse()
private BaseResponse CreateResponse(HttpStatusCode status, string message, object? data = null)
{
Status = (int)status,
Message = message,
Data = data
};
}
return new BaseResponse()
{
Status = (int)status,
Message = message,
Data = data
};
}
protected new IActionResult Created(string message, object? data = null)
{
return StatusCode((int)HttpStatusCode.Created, CreateResponse(HttpStatusCode.Created, message, data));
}
protected new IActionResult Created(string message, object? data = null)
{
return StatusCode((int)HttpStatusCode.Created, CreateResponse(HttpStatusCode.Created, message, data));
}
protected IActionResult Success(string message, object? data = null)
{
return StatusCode((int)HttpStatusCode.OK, CreateResponse(HttpStatusCode.OK, message, data));
}
protected IActionResult Success(string message, object? data = null)
{
return StatusCode((int)HttpStatusCode.OK, CreateResponse(HttpStatusCode.OK, message, data));
}
protected IActionResult NotFound(string message, object? data = null)
{
return StatusCode((int)HttpStatusCode.NotFound, CreateResponse(HttpStatusCode.NotFound, message, data));
}
protected IActionResult NotFound(string message, object? data = null)
{
return StatusCode((int)HttpStatusCode.NotFound, CreateResponse(HttpStatusCode.NotFound, message, data));
}
protected IActionResult BadRequest(string message, object? data = null)
{
return StatusCode((int)HttpStatusCode.BadRequest, CreateResponse(HttpStatusCode.BadRequest, message, data));
}
protected IActionResult BadRequest(string message, object? data = null)
{
return StatusCode((int)HttpStatusCode.BadRequest, CreateResponse(HttpStatusCode.BadRequest, message, data));
}
protected IActionResult InternalServerError(string message)
{
return StatusCode((int)HttpStatusCode.InternalServerError, CreateResponse(HttpStatusCode.InternalServerError, message));
}
protected IActionResult InternalServerError(string message)
{
return StatusCode((int)HttpStatusCode.InternalServerError, CreateResponse(HttpStatusCode.InternalServerError, message));
}
#nullable disable
}
}

View File

@@ -3,6 +3,7 @@ using BasicDotnetTemplate.MainProject.Models.Settings;
namespace BasicDotnetTemplate.MainProject.Controllers
{
[Route("")]
public class RootController : BaseController
{
public RootController(
@@ -12,8 +13,7 @@ namespace BasicDotnetTemplate.MainProject.Controllers
}
[HttpGet]
[Route("")]
[HttpGet("")]
public IActionResult GetVersion()
{
return Success(String.Empty, "Success");

View File

@@ -3,6 +3,7 @@ using BasicDotnetTemplate.MainProject.Models.Settings;
namespace BasicDotnetTemplate.MainProject.Controllers
{
[Route("[controller]")]
public class VersionController : BaseController
{
public VersionController(
@@ -12,8 +13,7 @@ namespace BasicDotnetTemplate.MainProject.Controllers
}
[HttpGet]
[Route("version")]
[HttpGet("get")]
public IActionResult GetVersion()
{
return Success(String.Empty, _appSettings?.Settings?.Version);

View File

@@ -35,15 +35,11 @@ internal static class Program
{
private static readonly NLog.Logger Logger = NLog.LogManager.GetCurrentClassLogger();
internal static WebApplication app;
public static void Initialize(string[] args)
public static WebApplication Initialize(string[] args)
{
Logger.Info("[Program][Main] Start building");
var builder = WebApplication.CreateBuilder(args);
Logger.Info("[Program][Main] Creating configuration");
var _configuration = new ConfigurationBuilder()
.SetBasePath(System.AppDomain.CurrentDomain.BaseDirectory)
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
@@ -113,7 +109,7 @@ internal static class Program
options.SwaggerDoc("v1", openApiInfo);
});
app = builder.Build();
WebApplication app = builder.Build();
// REGISTER MIDDLEWARE HERE
app.UseRouting();
@@ -136,19 +132,15 @@ internal static class Program
});
}
Logger.Info("[Program][Main] Launching app");
return app;
}
public static void Main(string[] args)
{
ReflectionProgram.LaunchConfiguration();
Initialize(args);
WebApplication app = Initialize(args);
app.Run();
Logger.Info("[Program][Main] Shutting down logger");
NLog.LogManager.Shutdown(); // Flush and close down internal threads and timers
}