diff --git a/.gitignore b/.gitignore
index b585321..c7ac18e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,9 @@
.vs/
bin/
obj/
+releases/*
+!releases/.gitkeep
.DS_Store
.env
*.filters
diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES
index e13d875..7def927 100644
--- a/.openapi-generator/FILES
+++ b/.openapi-generator/FILES
@@ -1,60 +1,66 @@
-src/Tribufu.Generated/Api/TribufuGeneratedApi.cs
-src/Tribufu.Generated/Client/ApiClient.cs
-src/Tribufu.Generated/Client/ApiException.cs
-src/Tribufu.Generated/Client/ApiResponse.cs
-src/Tribufu.Generated/Client/ClientUtils.cs
-src/Tribufu.Generated/Client/Configuration.cs
-src/Tribufu.Generated/Client/ExceptionFactory.cs
-src/Tribufu.Generated/Client/GlobalConfiguration.cs
-src/Tribufu.Generated/Client/HttpMethod.cs
-src/Tribufu.Generated/Client/IApiAccessor.cs
-src/Tribufu.Generated/Client/IAsynchronousClient.cs
-src/Tribufu.Generated/Client/IReadableConfiguration.cs
-src/Tribufu.Generated/Client/ISynchronousClient.cs
-src/Tribufu.Generated/Client/Multimap.cs
-src/Tribufu.Generated/Client/OpenAPIDateConverter.cs
-src/Tribufu.Generated/Client/RequestOptions.cs
-src/Tribufu.Generated/Client/RetryConfiguration.cs
-src/Tribufu.Generated/Model/AbstractOpenAPISchema.cs
-src/Tribufu.Generated/Model/Account.cs
-src/Tribufu.Generated/Model/Application.cs
-src/Tribufu.Generated/Model/ApplicationType.cs
-src/Tribufu.Generated/Model/AuthorizeRequest.cs
-src/Tribufu.Generated/Model/CodeChallengeMethod.cs
-src/Tribufu.Generated/Model/CryptoViewModel.cs
-src/Tribufu.Generated/Model/Game.cs
-src/Tribufu.Generated/Model/GameServer.cs
-src/Tribufu.Generated/Model/GameServerCluster.cs
-src/Tribufu.Generated/Model/GrantType.cs
-src/Tribufu.Generated/Model/Group.cs
-src/Tribufu.Generated/Model/GroupGame.cs
-src/Tribufu.Generated/Model/GroupMember.cs
-src/Tribufu.Generated/Model/GroupRank.cs
-src/Tribufu.Generated/Model/HashViewModel.cs
-src/Tribufu.Generated/Model/IntrospectRequest.cs
-src/Tribufu.Generated/Model/IpAddress.cs
-src/Tribufu.Generated/Model/LeaderboardItem.cs
-src/Tribufu.Generated/Model/LeaderboardOrder.cs
-src/Tribufu.Generated/Model/LoginProvider.cs
-src/Tribufu.Generated/Model/LoginRequest.cs
-src/Tribufu.Generated/Model/LoginResponse.cs
-src/Tribufu.Generated/Model/Package.cs
-src/Tribufu.Generated/Model/Profile.cs
-src/Tribufu.Generated/Model/ProfileGame.cs
-src/Tribufu.Generated/Model/ProfileGroup.cs
-src/Tribufu.Generated/Model/RefreshRequest.cs
-src/Tribufu.Generated/Model/RegisterRequest.cs
-src/Tribufu.Generated/Model/ResponseType.cs
-src/Tribufu.Generated/Model/RevokeRequest.cs
-src/Tribufu.Generated/Model/SearchRequest.cs
-src/Tribufu.Generated/Model/SearchType.cs
-src/Tribufu.Generated/Model/ServerMetrics.cs
-src/Tribufu.Generated/Model/ServerStatus.cs
-src/Tribufu.Generated/Model/Subscription.cs
-src/Tribufu.Generated/Model/TokenHintType.cs
-src/Tribufu.Generated/Model/TokenRequest.cs
-src/Tribufu.Generated/Model/TokenResponse.cs
-src/Tribufu.Generated/Model/TokenType.cs
-src/Tribufu.Generated/Model/UpdateProfile.cs
-src/Tribufu.Generated/Model/UserInfo.cs
-src/Tribufu.Generated/Model/UserType.cs
+src/Tribufu/Api/TribufuGeneratedApi.cs
+src/Tribufu/Client/ApiClient.cs
+src/Tribufu/Client/ApiException.cs
+src/Tribufu/Client/ApiResponse.cs
+src/Tribufu/Client/ClientUtils.cs
+src/Tribufu/Client/Configuration.cs
+src/Tribufu/Client/ExceptionFactory.cs
+src/Tribufu/Client/GlobalConfiguration.cs
+src/Tribufu/Client/HttpMethod.cs
+src/Tribufu/Client/IApiAccessor.cs
+src/Tribufu/Client/IAsynchronousClient.cs
+src/Tribufu/Client/IReadableConfiguration.cs
+src/Tribufu/Client/ISynchronousClient.cs
+src/Tribufu/Client/Multimap.cs
+src/Tribufu/Client/OpenAPIDateConverter.cs
+src/Tribufu/Client/RequestOptions.cs
+src/Tribufu/Client/RetryConfiguration.cs
+src/Tribufu/Model/AbstractOpenAPISchema.cs
+src/Tribufu/Model/Account.cs
+src/Tribufu/Model/Application.cs
+src/Tribufu/Model/ApplicationType.cs
+src/Tribufu/Model/AuthorizeRequest.cs
+src/Tribufu/Model/ClientInfo.cs
+src/Tribufu/Model/ClientType.cs
+src/Tribufu/Model/CodeChallengeMethod.cs
+src/Tribufu/Model/CodeResponse.cs
+src/Tribufu/Model/CreateUser.cs
+src/Tribufu/Model/CryptoViewModel.cs
+src/Tribufu/Model/File.cs
+src/Tribufu/Model/Game.cs
+src/Tribufu/Model/GameServer.cs
+src/Tribufu/Model/GameServerCluster.cs
+src/Tribufu/Model/GameServerQuery.cs
+src/Tribufu/Model/GameServerStatus.cs
+src/Tribufu/Model/GrantType.cs
+src/Tribufu/Model/Group.cs
+src/Tribufu/Model/GroupGame.cs
+src/Tribufu/Model/GroupMember.cs
+src/Tribufu/Model/GroupRank.cs
+src/Tribufu/Model/HashViewModel.cs
+src/Tribufu/Model/IntrospectRequest.cs
+src/Tribufu/Model/IntrospectResponse.cs
+src/Tribufu/Model/IpAddress.cs
+src/Tribufu/Model/LeaderboardItem.cs
+src/Tribufu/Model/LeaderboardOrder.cs
+src/Tribufu/Model/LoginProvider.cs
+src/Tribufu/Model/ModelClient.cs
+src/Tribufu/Model/Package.cs
+src/Tribufu/Model/PackageRelease.cs
+src/Tribufu/Model/Profile.cs
+src/Tribufu/Model/ProfileGame.cs
+src/Tribufu/Model/ProfileGroup.cs
+src/Tribufu/Model/ResponseType.cs
+src/Tribufu/Model/RevokeRequest.cs
+src/Tribufu/Model/Search.cs
+src/Tribufu/Model/SearchType.cs
+src/Tribufu/Model/ServerMetrics.cs
+src/Tribufu/Model/Subscription.cs
+src/Tribufu/Model/SubscriptionPrice.cs
+src/Tribufu/Model/TokenHintType.cs
+src/Tribufu/Model/TokenRequest.cs
+src/Tribufu/Model/TokenResponse.cs
+src/Tribufu/Model/TokenType.cs
+src/Tribufu/Model/UpdateProfile.cs
+src/Tribufu/Model/UserInfo.cs
+src/Tribufu/Model/UserType.cs
diff --git a/Directory.Build.props b/Directory.Build.props
index c226fd5..96c42d7 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -6,7 +6,7 @@
MIT
git
https://github.com/tribufu/tribufu-dotnet
- 1.1.0
+ 1.2.0
$(Version).0
$(NoWarn);0618;1591;1998;2002;8767
diff --git a/Directory.Packages.props b/Directory.Packages.props
index e71f9dc..0640a39 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -3,6 +3,7 @@
true
+
diff --git a/Tribufu.sln b/Tribufu.sln
index 54314cd..0f722d9 100644
--- a/Tribufu.sln
+++ b/Tribufu.sln
@@ -3,8 +3,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu", "src\Tribufu\Tribufu.csproj", "{7B7890D8-863A-4F1D-98C0-4B7D8C46CB52}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Generated", "src\Tribufu.Generated\Tribufu.Generated.csproj", "{FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}"
-EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Example", "src\Tribufu.Example\Tribufu.Example.csproj", "{D6392A29-E2DC-4050-B4C1-B279DD2D226D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Logging", "src\Tribufu.Logging\Tribufu.Logging.csproj", "{CFD80847-9B98-4991-BADF-8714E7D8D81C}"
@@ -13,12 +11,14 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Configuration", "sr
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Platform", "src\Tribufu.Platform\Tribufu.Platform.csproj", "{26EEB407-733C-4383-9211-B083CD5F593B}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Database", "src\Tribufu.Database\Tribufu.Database.csproj", "{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.EntityFrameworkCore", "src\Tribufu.EntityFrameworkCore\Tribufu.EntityFrameworkCore.csproj", "{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Serialization", "src\Tribufu.Serialization\Tribufu.Serialization.csproj", "{D6DAE078-2F80-49DD-97A3-B1223FE04F91}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.ComponentModel", "src\Tribufu.ComponentModel\Tribufu.ComponentModel.csproj", "{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.AspNetCore", "src\Tribufu.AspNetCore\Tribufu.AspNetCore.csproj", "{B6C47A6C-E389-4132-8E1C-0CBB6C96C205}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -41,18 +41,6 @@ Global
{7B7890D8-863A-4F1D-98C0-4B7D8C46CB52}.Release|x64.Build.0 = Release|Any CPU
{7B7890D8-863A-4F1D-98C0-4B7D8C46CB52}.Release|x86.ActiveCfg = Release|Any CPU
{7B7890D8-863A-4F1D-98C0-4B7D8C46CB52}.Release|x86.Build.0 = Release|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Debug|x64.ActiveCfg = Debug|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Debug|x64.Build.0 = Debug|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Debug|x86.ActiveCfg = Debug|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Debug|x86.Build.0 = Debug|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Release|Any CPU.Build.0 = Release|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Release|x64.ActiveCfg = Release|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Release|x64.Build.0 = Release|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Release|x86.ActiveCfg = Release|Any CPU
- {FF9B3170-0FD8-44A5-B6E3-01A8D11D2BEF}.Release|x86.Build.0 = Release|Any CPU
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Debug|x64.ActiveCfg = Debug|Any CPU
@@ -137,6 +125,18 @@ Global
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Release|x64.Build.0 = Release|Any CPU
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Release|x86.ActiveCfg = Release|Any CPU
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Release|x86.Build.0 = Release|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Debug|x64.Build.0 = Debug|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Debug|x86.Build.0 = Debug|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Release|Any CPU.Build.0 = Release|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Release|x64.ActiveCfg = Release|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Release|x64.Build.0 = Release|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Release|x86.ActiveCfg = Release|Any CPU
+ {B6C47A6C-E389-4132-8E1C-0CBB6C96C205}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/releases/.gitkeep b/releases/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/scripts/generate.ps1 b/scripts/generate.ps1
index c2c8b9a..7f14cb8 100644
--- a/scripts/generate.ps1
+++ b/scripts/generate.ps1
@@ -7,6 +7,6 @@ java -jar ./vendor/openapi-generator/openapi-generator-cli.jar generate `
-g csharp `
-o . `
--global-property apis,models,supportingFiles,apiDocs=false,modelDocs=false,apiTests=false,modelTests=false `
- --additional-properties=packageName=Tribufu.Generated,library=restsharp,zeroBasedEnums=true,nullableReferenceTypes=true `
+ --additional-properties=packageName=Tribufu,library=restsharp,zeroBasedEnums=true,nullableReferenceTypes=true `
--openapi-normalizer SET_TAGS_FOR_ALL_OPERATIONS=TribufuGenerated `
--skip-validate-spec
diff --git a/scripts/package.ps1 b/scripts/package.ps1
index 7408aae..b496845 100644
--- a/scripts/package.ps1
+++ b/scripts/package.ps1
@@ -1,5 +1,7 @@
-#!/usr/bin/env sh
+#!/usr/bin/env pwsh
+
+Get-ChildItem ./releases -Filter *.nupkg -Recurse -Force | Remove-Item -Force
dotnet clean
dotnet build -c Release
-dotnet pack
+dotnet pack -c Release -o ./releases
diff --git a/src/Tribufu.AspNetCore/Extensions/HttpContextExtensions.cs b/src/Tribufu.AspNetCore/Extensions/HttpContextExtensions.cs
new file mode 100644
index 0000000..b65a12b
--- /dev/null
+++ b/src/Tribufu.AspNetCore/Extensions/HttpContextExtensions.cs
@@ -0,0 +1,33 @@
+// Copyright (c) Tribufu. All Rights Reserved.
+// SPDX-License-Identifier: UNLICENSED
+
+using Microsoft.AspNetCore.Http;
+using System;
+using System.Linq;
+
+namespace Tribufu.AspNetCore.Extensions
+{
+ public static class HttpContextExtensions
+ {
+ public static string GetIpAddress(this HttpContext context)
+ {
+ var headers = context.Request.Headers;
+ if (headers.TryGetValue("CF-Connecting-IP", out var cfConnectingIp))
+ {
+ return cfConnectingIp.FirstOrDefault() ?? "127.0.0.1";
+ }
+
+ if (headers.TryGetValue("X-Forwarded-For", out var xForwardedFor))
+ {
+ var forwardedIps = xForwardedFor.ToString().Split(',', StringSplitOptions.RemoveEmptyEntries);
+
+ if (forwardedIps.Length > 0)
+ {
+ return forwardedIps[0].Trim();
+ }
+ }
+
+ return context.Connection.RemoteIpAddress?.ToString() ?? "127.0.0.1";
+ }
+ }
+}
diff --git a/src/Tribufu.AspNetCore/README.md b/src/Tribufu.AspNetCore/README.md
new file mode 100644
index 0000000..54d4fec
--- /dev/null
+++ b/src/Tribufu.AspNetCore/README.md
@@ -0,0 +1 @@
+# Tribufu AspNetCore
diff --git a/src/Tribufu.AspNetCore/Tribufu.AspNetCore.csproj b/src/Tribufu.AspNetCore/Tribufu.AspNetCore.csproj
new file mode 100644
index 0000000..a739e7f
--- /dev/null
+++ b/src/Tribufu.AspNetCore/Tribufu.AspNetCore.csproj
@@ -0,0 +1,28 @@
+
+
+ Tribufu.AspNetCore
+ Tribufu AspNetCore
+ README.md
+
+
+ Properties
+ true
+ false
+ enable
+ Library
+ net8.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Tribufu.ComponentModel/Tribufu.ComponentModel.csproj b/src/Tribufu.ComponentModel/Tribufu.ComponentModel.csproj
index 1d780d8..05ddc36 100644
--- a/src/Tribufu.ComponentModel/Tribufu.ComponentModel.csproj
+++ b/src/Tribufu.ComponentModel/Tribufu.ComponentModel.csproj
@@ -1,7 +1,7 @@
Tribufu.ComponentModel
- Tribufu ComponentModel Extensions
+ Tribufu ComponentModel
README.md
diff --git a/src/Tribufu.Configuration/Extensions/IConfigurationExtensions.cs b/src/Tribufu.Configuration/Extensions/IConfigurationExtensions.cs
new file mode 100644
index 0000000..6c11899
--- /dev/null
+++ b/src/Tribufu.Configuration/Extensions/IConfigurationExtensions.cs
@@ -0,0 +1,16 @@
+// Copyright (c) Tribufu. All Rights Reserved.
+// SPDX-License-Identifier: MIT
+
+using Microsoft.Extensions.Configuration;
+
+namespace Tribufu.Configuration.Extensions
+{
+ public static class IConfigurationExtensions
+ {
+ public static string? Get(this IConfiguration configuration, string prefix, string key)
+ {
+ var section = configuration.GetSection(prefix);
+ return !section.Exists() ? configuration[$"{prefix}_{key}"] : section[key];
+ }
+ }
+}
diff --git a/src/Tribufu.Configuration/Tribufu.Configuration.csproj b/src/Tribufu.Configuration/Tribufu.Configuration.csproj
index 5cc4ef1..3dc2aa8 100644
--- a/src/Tribufu.Configuration/Tribufu.Configuration.csproj
+++ b/src/Tribufu.Configuration/Tribufu.Configuration.csproj
@@ -1,13 +1,14 @@
Tribufu.Configuration
- Tribufu Configuration Extensions
+ Tribufu Configuration
README.md
Properties
true
false
+ enable
Library
net6.0
diff --git a/src/Tribufu.Database/README.md b/src/Tribufu.Database/README.md
deleted file mode 100644
index ebf3077..0000000
--- a/src/Tribufu.Database/README.md
+++ /dev/null
@@ -1 +0,0 @@
-# Tribufu Database
diff --git a/src/Tribufu.Database/DatabaseConfiguration.cs b/src/Tribufu.EntityFrameworkCore/DatabaseConfiguration.cs
similarity index 99%
rename from src/Tribufu.Database/DatabaseConfiguration.cs
rename to src/Tribufu.EntityFrameworkCore/DatabaseConfiguration.cs
index d9099a9..7619c8a 100644
--- a/src/Tribufu.Database/DatabaseConfiguration.cs
+++ b/src/Tribufu.EntityFrameworkCore/DatabaseConfiguration.cs
@@ -4,7 +4,7 @@
using Microsoft.Extensions.Configuration;
using System;
-namespace Tribufu.Database
+namespace Tribufu.EntityFrameworkCore
{
public class DatabaseConfiguration
{
diff --git a/src/Tribufu.Database/DatabaseConstants.cs b/src/Tribufu.EntityFrameworkCore/DatabaseConstants.cs
similarity index 86%
rename from src/Tribufu.Database/DatabaseConstants.cs
rename to src/Tribufu.EntityFrameworkCore/DatabaseConstants.cs
index bfff4b2..8b51fc4 100644
--- a/src/Tribufu.Database/DatabaseConstants.cs
+++ b/src/Tribufu.EntityFrameworkCore/DatabaseConstants.cs
@@ -1,7 +1,7 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: MIT
-namespace Tribufu.Database
+namespace Tribufu.EntityFrameworkCore
{
public static class DatabaseConstants
{
diff --git a/src/Tribufu.Database/DatabaseDriver.cs b/src/Tribufu.EntityFrameworkCore/DatabaseDriver.cs
similarity index 88%
rename from src/Tribufu.Database/DatabaseDriver.cs
rename to src/Tribufu.EntityFrameworkCore/DatabaseDriver.cs
index 8c3f8f3..d904e83 100644
--- a/src/Tribufu.Database/DatabaseDriver.cs
+++ b/src/Tribufu.EntityFrameworkCore/DatabaseDriver.cs
@@ -1,7 +1,7 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: MIT
-namespace Tribufu.Database
+namespace Tribufu.EntityFrameworkCore
{
public enum DatabaseDriver : byte
{
diff --git a/src/Tribufu.EntityFrameworkCore/README.md b/src/Tribufu.EntityFrameworkCore/README.md
new file mode 100644
index 0000000..19c48b4
--- /dev/null
+++ b/src/Tribufu.EntityFrameworkCore/README.md
@@ -0,0 +1 @@
+# Tribufu EntityFrameworkCore
diff --git a/src/Tribufu.Database/Repositories/IRepository.cs b/src/Tribufu.EntityFrameworkCore/Repositories/IRepository.cs
similarity index 93%
rename from src/Tribufu.Database/Repositories/IRepository.cs
rename to src/Tribufu.EntityFrameworkCore/Repositories/IRepository.cs
index b11ed6c..dbb4b19 100644
--- a/src/Tribufu.Database/Repositories/IRepository.cs
+++ b/src/Tribufu.EntityFrameworkCore/Repositories/IRepository.cs
@@ -4,7 +4,7 @@
using System.Collections.Generic;
using System.Threading.Tasks;
-namespace Tribufu.Database.Repositories
+namespace Tribufu.EntityFrameworkCore.Repositories
{
public interface IRepository where T : class
{
diff --git a/src/Tribufu.Database/Repositories/Repository.cs b/src/Tribufu.EntityFrameworkCore/Repositories/Repository.cs
similarity index 98%
rename from src/Tribufu.Database/Repositories/Repository.cs
rename to src/Tribufu.EntityFrameworkCore/Repositories/Repository.cs
index 171e213..c70a3c5 100644
--- a/src/Tribufu.Database/Repositories/Repository.cs
+++ b/src/Tribufu.EntityFrameworkCore/Repositories/Repository.cs
@@ -7,7 +7,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
-namespace Tribufu.Database.Repositories
+namespace Tribufu.EntityFrameworkCore.Repositories
{
public class Repository : IRepository where C : DbContext where T : class
{
diff --git a/src/Tribufu.Database/Tribufu.Database.csproj b/src/Tribufu.EntityFrameworkCore/Tribufu.EntityFrameworkCore.csproj
similarity index 88%
rename from src/Tribufu.Database/Tribufu.Database.csproj
rename to src/Tribufu.EntityFrameworkCore/Tribufu.EntityFrameworkCore.csproj
index 03a7813..f591fd3 100644
--- a/src/Tribufu.Database/Tribufu.Database.csproj
+++ b/src/Tribufu.EntityFrameworkCore/Tribufu.EntityFrameworkCore.csproj
@@ -1,7 +1,7 @@
- Tribufu.Database
- Tribufu Database Extensions
+ Tribufu.EntityFrameworkCore
+ Tribufu EntityFrameworkCore
README.md
diff --git a/src/Tribufu.Example/Program.cs b/src/Tribufu.Example/Program.cs
index cd76174..1dce3d9 100644
--- a/src/Tribufu.Example/Program.cs
+++ b/src/Tribufu.Example/Program.cs
@@ -4,7 +4,7 @@
using dotenv.net;
using System;
using System.Threading.Tasks;
-using Tribufu.Generated.Client;
+using Tribufu.Client;
using Tribufu.Logging;
namespace Tribufu.Test
diff --git a/src/Tribufu.Example/Tribufu.Example.csproj b/src/Tribufu.Example/Tribufu.Example.csproj
index 3116a54..3bde082 100644
--- a/src/Tribufu.Example/Tribufu.Example.csproj
+++ b/src/Tribufu.Example/Tribufu.Example.csproj
@@ -1,5 +1,6 @@
+ false
false
enable
Exe
diff --git a/src/Tribufu.Generated/Api/TribufuGeneratedApi.cs b/src/Tribufu.Generated/Api/TribufuGeneratedApi.cs
deleted file mode 100644
index 4575450..0000000
--- a/src/Tribufu.Generated/Api/TribufuGeneratedApi.cs
+++ /dev/null
@@ -1,15035 +0,0 @@
-/*
- * Tribufu API
- *
- * REST API to access Tribufu services.
- *
- * The version of the OpenAPI document: 1.1.0
- * Contact: contact@tribufu.com
- * Generated by: https://github.com/openapitools/openapi-generator.git
- */
-
-
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Linq;
-using System.Net;
-using System.Net.Mime;
-using Tribufu.Generated.Client;
-using Tribufu.Generated.Model;
-
-namespace Tribufu.Generated.Api
-{
-
- ///
- /// Represents a collection of functions to interact with the API endpoints
- ///
- public interface ITribufuGeneratedApiSync : IApiAccessor
- {
- #region Synchronous Operations
- ///
- /// Authorize the client to access the user information.
- ///
- ///
- /// <b>🔒 Required permissions:</b> <code>tribufu.identity.oauth2.authorize</code>
- ///
- /// Thrown when fails to make API call
- /// (optional)
- /// Index associated with the operation.
- ///
- void Authorize(AuthorizeRequest? authorizeRequest = default(AuthorizeRequest?), int operationIndex = 0);
-
- ///
- /// Authorize the client to access the user information.
- ///
- ///
- /// <b>🔒 Required permissions:</b> <code>tribufu.identity.oauth2.authorize</code>
- ///
- /// Thrown when fails to make API call
- /// (optional)
- /// Index associated with the operation.
- /// ApiResponse of Object(void)
- ApiResponse