Removed state and ErrorResponse(Exception e) from BaseController. Added logging to catch part in Document and Envelope Controller.

This commit is contained in:
Developer 02 2024-05-16 09:23:33 +02:00
parent 68714c2937
commit ba723bdddb
6 changed files with 24 additions and 54 deletions

View File

@ -6,27 +6,14 @@ namespace EnvelopeGenerator.Web.Controllers
{
public class BaseController : Controller
{
internal DatabaseService database;
internal State state;
protected readonly DatabaseService database;
internal ILogger _logger;
protected readonly ILogger _logger;
public BaseController(DatabaseService database, ILogger logger)
{
this.database = database;
this.state = database.State;
_logger = logger;
}
internal ObjectResult ErrorResponse(Exception e)
{
// Log the detailed error message.
_logger.LogError(e, "An unexpected error occurred.");
return Problem(
statusCode: 500,
detail: e.Message,
type: "ServerError");
}
}
}

View File

@ -41,7 +41,8 @@ namespace EnvelopeGenerator.Web.Controllers
}
catch(Exception ex)
{
return ErrorResponse(ex);
_logger.LogError(ex, "{Message}", ex.Message);
return StatusCode(StatusCodes.Status500InternalServerError);
}
}
@ -66,7 +67,8 @@ namespace EnvelopeGenerator.Web.Controllers
}
catch(Exception ex)
{
return ErrorResponse(ex);
_logger.LogError(ex, "{Message}", ex.Message);
return StatusCode(StatusCodes.Status500InternalServerError);
}
}

View File

@ -43,7 +43,8 @@ namespace EnvelopeGenerator.Web.Controllers
}
catch (Exception e)
{
return ErrorResponse(e);
_logger.LogError(e, "{Message}", e.Message);
return StatusCode(StatusCodes.Status500InternalServerError);
}
}
@ -88,7 +89,8 @@ namespace EnvelopeGenerator.Web.Controllers
}
catch (Exception e)
{
return ErrorResponse(e);
_logger.LogError(e, "{Message}", e.Message);
return StatusCode(StatusCodes.Status500InternalServerError);
}
}
}

View File

@ -227,23 +227,14 @@ namespace EnvelopeGenerator.Web.Controllers
return Ok(new { EnvelopeUuid = envelopeUuid, ReceiverSignature = receiverSignature });
}
[NonAction]
public IActionResult GetLanguage() => Ok(UserLanguage);
[HttpPost("lang/{language}")]
public IActionResult SetLanguage([FromRoute] string language)
{
try
{
if (Languages is null)
{
_logger.LogWarning("There is no language assigned under languages key in appesettings.json");
return StatusCode(statusCode: StatusCodes.Status500InternalServerError);
}
else if (!language.Contains(language))
return BadRequest();
language = _urlEncoder.Encode(language);
if (!_cultures.Languages.Contains(language))
return BadRequest();
UserLanguage = language;
@ -257,16 +248,7 @@ namespace EnvelopeGenerator.Web.Controllers
}
[HttpGet("lang")]
public IActionResult GetLanguages()
{
if(Languages is null)
{
_logger.LogWarning("There is no language assigned under languages key in appesettings.json");
return StatusCode(statusCode: StatusCodes.Status500InternalServerError);
}
else
return Ok(Languages);
}
public IActionResult GetLanguages() => Ok(_cultures.Languages);
private string UserLanguage
{
@ -297,8 +279,6 @@ namespace EnvelopeGenerator.Web.Controllers
}
}
private string[]? Languages => _configuration.GetSection("Languages").Get<string[]>();
public IActionResult Error404() => this.ViewError404();
}
}

View File

@ -5,13 +5,5 @@
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"Config": {
"ConnectionString": "Server=SDD-VMP04-SQL17\\DD_DEVELOP01;Database=DD_ECM;User Id=sa;Password=dd;Encrypt=false;TrustServerCertificate=True;",
//preivous connection string without Encrypt=false and TrustServerCertificate=True -> "Server=sDD-VMP04-SQL17\\DD_DEVELOP01;Database=DD_ECM;User Id=sa;Password=dd;"
"LogPath": "E:\\EnvelopeGenerator\\Logs",
"LogDebug": true,
"LogJson": true,
"AdminPassword": "dd"
}
}

View File

@ -10,6 +10,13 @@
"Microsoft.AspNetCore.Hosting.Diagnostics": "Warning"
}
},
"Config": {
"ConnectionString": "Server=SDD-VMP04-SQL17\\DD_DEVELOP01;Database=DD_ECM;User Id=sa;Password=dd;Encrypt=false;TrustServerCertificate=True;",
"LogPath": "E:\\EnvelopeGenerator\\Logs",
"LogDebug": true,
"LogJson": true,
"AdminPassword": "dd"
},
"PSPDFKitLicenseKey": null,
/* The first format parameter {0} will be replaced by the nonce value. */
"TestCSP": false,
@ -96,13 +103,13 @@
To add a new language, first you should write the required resx file.
first is the default culture name. */
"Cultures": [
{
"Language": "en-US",
"FIClass": "fi-us"
},
{
"Language": "de-DE",
"FIClass": "fi-de"
},
{
"Language": "en-US",
"FIClass": "fi-us"
}
],
"DisableMultiLanguage": false