Files
andy 9f22b522df v1.3.0 Restructure Saxonite workspace and upgrade to .NET 10 (#1)
Move Saxonite’s projects into a dedicated `Workspace` folder and align the solution with .NET 10 and the current Common workspace. Update encryption integration, test project structure and coverage, and repository guidance and upgrade notes.

- Relocate application and library projects while retaining Git rename history.
- Split tests into Admin, Online, and Shared projects; add representative behavioral and serialization tests.
- Update Common integration, application version, and repository documentation.

Application version: 1.3.0

Reviewed-on: #1
Co-authored-by: andy <andy@sarand.com>
2026-10-16 18:24:16 +01:00

93 lines
2.9 KiB
C#

using Microsoft.AspNetCore.Mvc;
using Sarand.Net.Standard.Base.App;
using Saxonite.Net.Standard.Base.App;
using Saxonite.Web.Api.App;
using static Sarand.Net.Standard.Base.Helpers.SacsHttpClientHelper;
namespace Saxonite.Web.Api.Controllers
{
//=======================================================================
[ApiController]
public class SystemController : SwapiControllerBase
{
//-------------------------------------------------------------------
// Construction.
public SystemController()
{
}
//-------------------------------------------------------------------
// Version.
public class RequestData_Version
{
}
public class ResponseData_Version : ApiResponse_Data
{
public String? Version { get; set; }
}
[HttpGet]
[Route("[controller]/Version")]
public ResponseData_Version GetVersion_Get()
{
return GetVersion_Post(new RequestData_Version());
}
[HttpPost]
[Route("[controller]/Version")]
public ResponseData_Version GetVersion_Post(RequestData_Version requestData)
{
ResponseData_Version responseData = new ResponseData_Version();
responseData.Version = Sax.Version.GetFullVersion();
return responseData;
}
//-------------------------------------------------------------------
// Config.
public class RequestData_Config
{
}
public class ResponseData_Config : ApiResponse_Data
{
public class ConfigData
{
public String? Environment { get; set; }
public String? Instance { get; set; }
public String? Version { get; set; }
public String? Host{ get; set; }
public String? ConfigLogFolder { get; set; }
public String? LogFolder { get; set; }
public String? EmailContext { get; set; }
}
public ConfigData Config { get; } = new ConfigData();
}
[HttpGet]
[Route("[controller]/Config")]
public ResponseData_Config GetConfig_Get()
{
return GetConfig_Post(new RequestData_Config());
}
[HttpPost]
[Route("[controller]/Config")]
public ResponseData_Config GetConfig_Post(RequestData_Config requestData)
{
ResponseData_Config responseData = new ResponseData_Config();
responseData.Config.Environment = SaxApplication_Api.AppInstance?.EnvironmentName;
responseData.Config.Instance = SaxApplication_Api.AppInstance?.InstanceType.ToString();
responseData.Config.Version = Sax.Version.GetFullVersion();
if (DebugMode)
{
// Just for testing - do not expose in production.
responseData.Config.Host = SaxSystem.ComputerName;
responseData.Config.ConfigLogFolder = SaxApplication_Api.AppInstance?.AppConfig.Logging.RootFolder;
responseData.Config.LogFolder = SaLogger.LogFolder;
responseData.Config.EmailContext = SaxApplication_Api.AppInstance?.EmailConfig.Context;
}
return responseData;
}
//-------------------------------------------------------------------
}
//=======================================================================
}