From 564cadb94580b69bcedd5fa083e34177b3555f09 Mon Sep 17 00:00:00 2001 From: egamorf76 Date: Mon, 28 Jul 2025 23:10:43 +0200 Subject: [PATCH] Add rider files and use options --- .../.idea/.idea.GameIdeas/.idea/.gitignore | 13 +++++ .../.idea.GameIdeas/.idea/indexLayout.xml | 8 +++ .../.idea/.idea.GameIdeas/.idea/vcs.xml | 7 +++ src/GameIdeas/.vscode/launch.json | 51 +++++++++++++++++++ src/GameIdeas/.vscode/tasks.json | 27 ++++++++++ .../Exceptions/UserInvalidException.cs | 2 +- .../Exceptions/UserUnauthorizedException.cs | 2 +- .../Options/GameIdeasOptions.cs | 12 +++++ .../Controllers/UserController.cs | 2 +- .../GameIdeas.WebAPI/GameIdeas.WebAPI.csproj | 4 ++ .../Server/GameIdeas.WebAPI/Program.cs | 1 - .../Services/Users/UserReadService.cs | 2 +- .../Services/Users/UserWriteService.cs | 2 +- 13 files changed, 127 insertions(+), 6 deletions(-) create mode 100644 src/GameIdeas/.idea/.idea.GameIdeas/.idea/.gitignore create mode 100644 src/GameIdeas/.idea/.idea.GameIdeas/.idea/indexLayout.xml create mode 100644 src/GameIdeas/.idea/.idea.GameIdeas/.idea/vcs.xml create mode 100644 src/GameIdeas/.vscode/launch.json create mode 100644 src/GameIdeas/.vscode/tasks.json rename src/GameIdeas/{Server/GameIdeas.WebAPI => GameIdeas.Shared}/Exceptions/UserInvalidException.cs (63%) rename src/GameIdeas/{Server/GameIdeas.WebAPI => GameIdeas.Shared}/Exceptions/UserUnauthorizedException.cs (65%) create mode 100644 src/GameIdeas/GameIdeas.Shared/Options/GameIdeasOptions.cs diff --git a/src/GameIdeas/.idea/.idea.GameIdeas/.idea/.gitignore b/src/GameIdeas/.idea/.idea.GameIdeas/.idea/.gitignore new file mode 100644 index 0000000..225498d --- /dev/null +++ b/src/GameIdeas/.idea/.idea.GameIdeas/.idea/.gitignore @@ -0,0 +1,13 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Rider ignored files +/projectSettingsUpdater.xml +/.idea.GameIdeas.iml +/modules.xml +/contentModel.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/src/GameIdeas/.idea/.idea.GameIdeas/.idea/indexLayout.xml b/src/GameIdeas/.idea/.idea.GameIdeas/.idea/indexLayout.xml new file mode 100644 index 0000000..7b08163 --- /dev/null +++ b/src/GameIdeas/.idea/.idea.GameIdeas/.idea/indexLayout.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/src/GameIdeas/.idea/.idea.GameIdeas/.idea/vcs.xml b/src/GameIdeas/.idea/.idea.GameIdeas/.idea/vcs.xml new file mode 100644 index 0000000..8fe5bdb --- /dev/null +++ b/src/GameIdeas/.idea/.idea.GameIdeas/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/src/GameIdeas/.vscode/launch.json b/src/GameIdeas/.vscode/launch.json new file mode 100644 index 0000000..8bd454a --- /dev/null +++ b/src/GameIdeas/.vscode/launch.json @@ -0,0 +1,51 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "dotNetConfig": {}, + "name": "Debug Blazor Application", + "type": "blazorwasm", + "request": "launch", + "browser": "chrome", + "cwd": "${workspaceFolder}/Client/GameIdeas.BlazorApp", + "url": "http://localhost:5172", + "presentation": { + "group": "group 2: Single", + "order": 2 + }, + }, + { + "name": "Debug API Server", + "type": "coreclr", + "request": "launch", + "preLaunchTask": "Build API Server", + "program": "${workspaceFolder}/Server/GameIdeas.WebAPI/bin/Debug/net9.0/GameIdeas.WebAPI.dll", + "cwd": "${workspaceFolder}/Server/GameIdeas.WebAPI", + "stopAtEntry": false, + "env": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "presentation": { + "group": "group 2: Single", + "order": 2 + } + } + ], + "compounds": [ + { + "name": "Launch GameIdeas", + "configurations": [ + "Debug API Server", + "Debug Blazor Application" + ], + "stopAll": true, + "presentation": { + "group": "group 1: Group", + "order": 1 + }, + } + ] +} \ No newline at end of file diff --git a/src/GameIdeas/.vscode/tasks.json b/src/GameIdeas/.vscode/tasks.json new file mode 100644 index 0000000..ab8801a --- /dev/null +++ b/src/GameIdeas/.vscode/tasks.json @@ -0,0 +1,27 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "type": "shell", + "command": "dotnet build", + "label": "Build API Server", + "isBackground": true, + "options": { + "cwd": "${workspaceFolder}" + }, + "problemMatcher":{ + "pattern": { + "regexp": "^.*$", + "file": 0, + "location": 1, + "message": 2 + }, + "background": { + "activeOnStart": true, + "beginsPattern": ".*", + "endsPattern": "Compiled|Failed|compiled|failed|ready" + } + } + } + ] +} \ No newline at end of file diff --git a/src/GameIdeas/Server/GameIdeas.WebAPI/Exceptions/UserInvalidException.cs b/src/GameIdeas/GameIdeas.Shared/Exceptions/UserInvalidException.cs similarity index 63% rename from src/GameIdeas/Server/GameIdeas.WebAPI/Exceptions/UserInvalidException.cs rename to src/GameIdeas/GameIdeas.Shared/Exceptions/UserInvalidException.cs index a5ca0c0..1e6d328 100644 --- a/src/GameIdeas/Server/GameIdeas.WebAPI/Exceptions/UserInvalidException.cs +++ b/src/GameIdeas/GameIdeas.Shared/Exceptions/UserInvalidException.cs @@ -1,3 +1,3 @@ -namespace GameIdeas.WebAPI.Exceptions; +namespace GameIdeas.Shared.Exceptions; public class UserInvalidException(string message) : Exception(message); diff --git a/src/GameIdeas/Server/GameIdeas.WebAPI/Exceptions/UserUnauthorizedException.cs b/src/GameIdeas/GameIdeas.Shared/Exceptions/UserUnauthorizedException.cs similarity index 65% rename from src/GameIdeas/Server/GameIdeas.WebAPI/Exceptions/UserUnauthorizedException.cs rename to src/GameIdeas/GameIdeas.Shared/Exceptions/UserUnauthorizedException.cs index 95006e1..cacdacd 100644 --- a/src/GameIdeas/Server/GameIdeas.WebAPI/Exceptions/UserUnauthorizedException.cs +++ b/src/GameIdeas/GameIdeas.Shared/Exceptions/UserUnauthorizedException.cs @@ -1,3 +1,3 @@ -namespace GameIdeas.WebAPI.Exceptions; +namespace GameIdeas.Shared.Exceptions; public class UserUnauthorizedException(string message) : Exception(message); diff --git a/src/GameIdeas/GameIdeas.Shared/Options/GameIdeasOptions.cs b/src/GameIdeas/GameIdeas.Shared/Options/GameIdeasOptions.cs new file mode 100644 index 0000000..dd9df72 --- /dev/null +++ b/src/GameIdeas/GameIdeas.Shared/Options/GameIdeasOptions.cs @@ -0,0 +1,12 @@ +namespace GameIdeas.Shared.Options; + +public class GameIdeasOptions +{ + public string DbHost { get; set; } = string.Empty; + public string DbUsername { get; set; } = string.Empty; + public string DbPassword { get; set; } = string.Empty; + public string DbDatabase { get; set; } = string.Empty; + public string JwtKey { get; set; } = string.Empty; + public string JwtIssuer { get; set; } = string.Empty; + public string JwtAudience { get; set; } = string.Empty; +} \ No newline at end of file diff --git a/src/GameIdeas/Server/GameIdeas.WebAPI/Controllers/UserController.cs b/src/GameIdeas/Server/GameIdeas.WebAPI/Controllers/UserController.cs index 4266b7d..dd804b1 100644 --- a/src/GameIdeas/Server/GameIdeas.WebAPI/Controllers/UserController.cs +++ b/src/GameIdeas/Server/GameIdeas.WebAPI/Controllers/UserController.cs @@ -1,6 +1,6 @@ using GameIdeas.Shared.Constants; using GameIdeas.Shared.Dto; -using GameIdeas.WebAPI.Exceptions; +using GameIdeas.Shared.Exceptions; using GameIdeas.WebAPI.Services.Users; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; diff --git a/src/GameIdeas/Server/GameIdeas.WebAPI/GameIdeas.WebAPI.csproj b/src/GameIdeas/Server/GameIdeas.WebAPI/GameIdeas.WebAPI.csproj index 32e89b5..f776445 100644 --- a/src/GameIdeas/Server/GameIdeas.WebAPI/GameIdeas.WebAPI.csproj +++ b/src/GameIdeas/Server/GameIdeas.WebAPI/GameIdeas.WebAPI.csproj @@ -28,4 +28,8 @@ + + + + diff --git a/src/GameIdeas/Server/GameIdeas.WebAPI/Program.cs b/src/GameIdeas/Server/GameIdeas.WebAPI/Program.cs index 6f1e4e2..449dd0b 100644 --- a/src/GameIdeas/Server/GameIdeas.WebAPI/Program.cs +++ b/src/GameIdeas/Server/GameIdeas.WebAPI/Program.cs @@ -134,7 +134,6 @@ async Task LoadTranslations() app.Services.GetRequiredService().Initialize(dictionary); ResourcesKey.Initialize(app.Services.GetRequiredService()); - } string GetConnectionString() diff --git a/src/GameIdeas/Server/GameIdeas.WebAPI/Services/Users/UserReadService.cs b/src/GameIdeas/Server/GameIdeas.WebAPI/Services/Users/UserReadService.cs index 6342c6a..6b53fff 100644 --- a/src/GameIdeas/Server/GameIdeas.WebAPI/Services/Users/UserReadService.cs +++ b/src/GameIdeas/Server/GameIdeas.WebAPI/Services/Users/UserReadService.cs @@ -4,13 +4,13 @@ using GameIdeas.Shared.Constants; using GameIdeas.Shared.Dto; using GameIdeas.Shared.Model; using GameIdeas.WebAPI.Context; -using GameIdeas.WebAPI.Exceptions; using Microsoft.AspNetCore.Identity; using Microsoft.EntityFrameworkCore; using Microsoft.IdentityModel.Tokens; using System.IdentityModel.Tokens.Jwt; using System.Security.Claims; using System.Text; +using GameIdeas.Shared.Exceptions; namespace GameIdeas.WebAPI.Services.Users; diff --git a/src/GameIdeas/Server/GameIdeas.WebAPI/Services/Users/UserWriteService.cs b/src/GameIdeas/Server/GameIdeas.WebAPI/Services/Users/UserWriteService.cs index 5a7f041..2c11c68 100644 --- a/src/GameIdeas/Server/GameIdeas.WebAPI/Services/Users/UserWriteService.cs +++ b/src/GameIdeas/Server/GameIdeas.WebAPI/Services/Users/UserWriteService.cs @@ -1,7 +1,7 @@ using GameIdeas.Resources; using GameIdeas.Shared.Dto; +using GameIdeas.Shared.Exceptions; using GameIdeas.Shared.Model; -using GameIdeas.WebAPI.Exceptions; using Microsoft.AspNetCore.Identity; namespace GameIdeas.WebAPI.Services.Users;