20 Commits

Author SHA1 Message Date
9678659892 Release v1.3.0 2025-12-27 10:05:50 -03:00
87334bb28c Update Directory.Build.props 2025-12-22 09:59:50 -03:00
d26c3bd11a Add support to dotnet standard and framework 2025-12-22 09:51:08 -03:00
e3c42a9911 Update README.md 2025-12-16 19:23:47 -03:00
93301110b7 Update projects 2025-12-16 15:58:29 -03:00
44dc36430a Move flake generator to platform project 2025-12-11 10:16:30 -03:00
765b6319bb Add snowflake generator 2025-12-11 10:14:38 -03:00
1c570ce666 Delete DatabaseSeeder.cs 2025-12-05 11:30:50 -03:00
6238191512 Update database seeder 2025-12-05 10:34:11 -03:00
b6c7166b8e Add repository seeder 2025-12-05 10:17:08 -03:00
92a7bb3252 Update DatabaseConfiguration.cs 2025-12-04 18:31:35 -03:00
32a2a20fb1 Update BaseClassFirstContractResolver.cs 2025-07-08 20:29:51 -03:00
3edec858a8 Update BaseClassFirstContractResolver.cs 2025-07-08 20:26:06 -03:00
936f7f0f5e Update ConfigurationLoader.cs 2025-07-08 20:24:18 -03:00
0a88bf2ac6 Update CustomSerializerSettings.cs 2025-07-07 11:55:42 -03:00
817d89a57a Update CustomSerializerSettings.cs 2025-07-07 11:35:57 -03:00
2b6270264b Update Program.cs 2025-07-07 11:34:37 -03:00
e8d842bf34 Update CustomSerializerSettings 2025-07-07 11:34:36 -03:00
672fe601f7 Add json serialization configs 2025-07-07 11:06:41 -03:00
eda5b1894b Add logger with context object 2025-06-10 11:53:30 -03:00
111 changed files with 23727 additions and 16355 deletions

2
.gitignore vendored
View File

@@ -1,7 +1,9 @@
.vs/
bin/
obj/
releases/*
!releases/.gitkeep
.DS_Store
.env
*.filters

View File

@@ -1,60 +1,67 @@
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/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/GroupApplication.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/Product.cs
src/Tribufu/Model/ProductPrice.cs
src/Tribufu/Model/ProductType.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/StorageFile.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

View File

@@ -6,7 +6,7 @@
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/tribufu/tribufu-dotnet</RepositoryUrl>
<Version>1.1.0</Version>
<Version>1.3.0</Version>
<AssemblyVersion>$(Version).0</AssemblyVersion>
<NoWarn>$(NoWarn);0618;1591;1998;2002;8767</NoWarn>
</PropertyGroup>

View File

@@ -3,7 +3,9 @@
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
</PropertyGroup>
<ItemGroup>
<PackageVersion Include="CppAst.CodeGen" Version="0.4.1" />
<PackageVersion Include="dotenv.net" Version="3.2.0" />
<PackageVersion Include="IdGen" Version="3.0.7" />
<PackageVersion Include="JsonSubTypes" Version="2.0.1" />
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="8.0.16" />
<PackageVersion Include="Microsoft.Extensions.Configuration.Binder" Version="8.0.0" />

View File

@@ -6,7 +6,7 @@
[![MIT License][mit-badge]][mit-url]
[![Discord Chat][discord-badge]][discord-url]
[nuget-badge]: https://img.shields.io/nuget/v/tribufu.svg
[nuget-badge]: https://img.shields.io/nuget/v/Tribufu.svg
[nuget-url]: https://www.nuget.org/packages/Tribufu
[mit-badge]: https://img.shields.io/badge/license-MIT-blue.svg
[mit-url]: https://github.com/tribufu/tribufu-dotnet/blob/main/LICENSE.txt

View File

@@ -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

0
releases/.gitkeep Normal file
View File

View File

@@ -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,targetFramework=net47,zeroBasedEnums=true `
--openapi-normalizer SET_TAGS_FOR_ALL_OPERATIONS=TribufuGenerated `
--skip-validate-spec

View File

@@ -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

View File

@@ -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";
}
}
}

View File

@@ -0,0 +1 @@
# Tribufu AspNetCore

View File

@@ -0,0 +1,28 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<PackageId>Tribufu.AspNetCore</PackageId>
<Description>Tribufu AspNetCore</Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<PropertyGroup>
<AppDesignerFolder>Properties</AppDesignerFolder>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<IsPublishable>false</IsPublishable>
<Nullable>enable</Nullable>
<OutputType>Library</OutputType>
<TargetFrameworks>net8.0</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<None Include="README.md" Pack="true" PackagePath="\" />
</ItemGroup>
<ItemGroup>
<FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
<ItemGroup>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Tribufu.Configuration\Tribufu.Configuration.csproj" />
<ProjectReference Include="..\Tribufu.Logging\Tribufu.Logging.csproj" />
<ProjectReference Include="..\Tribufu.Platform\Tribufu.Platform.csproj" />
</ItemGroup>
</Project>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<PackageId>Tribufu.ComponentModel</PackageId>
<Description>Tribufu ComponentModel Extensions</Description>
<Description>Tribufu ComponentModel</Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<PropertyGroup>

View File

@@ -11,8 +11,6 @@ namespace Tribufu.Configuration
{
public static class ConfigurationLoader
{
public static IConfiguration Configuration { get; private set; }
public static IConfiguration Load(string[] fileNames)
{
var configDirectory = Paths.GetApplicationConfigDirectory();
@@ -28,8 +26,8 @@ namespace Tribufu.Configuration
continue;
}
var ext = Path.GetExtension(fullPath).ToLowerInvariant();
switch (ext)
var extension = Path.GetExtension(fullPath).ToLowerInvariant();
switch (extension)
{
case ".ini":
configurationBuilder.AddIniFile(fullPath, true, false);
@@ -41,13 +39,12 @@ namespace Tribufu.Configuration
configurationBuilder.AddTomlFile(fullPath, true, false);
break;
default:
Logger.Warn($"Unsupported config file extension: {ext}");
Logger.Warn($"Unsupported config file extension: {extension}");
break;
}
}
Configuration = configurationBuilder.Build();
return Configuration;
return configurationBuilder.Build();
}
}
}

View File

@@ -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];
}
}
}

View File

@@ -1,13 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<PackageId>Tribufu.Configuration</PackageId>
<Description>Tribufu Configuration Extensions</Description>
<Description>Tribufu Configuration</Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<PropertyGroup>
<AppDesignerFolder>Properties</AppDesignerFolder>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<IsPublishable>false</IsPublishable>
<Nullable>enable</Nullable>
<OutputType>Library</OutputType>
<TargetFrameworks>net6.0</TargetFrameworks>
</PropertyGroup>

View File

@@ -1,55 +0,0 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: MIT
using Microsoft.Extensions.Configuration;
using System;
namespace Tribufu.Database
{
public class DatabaseConfiguration
{
public DatabaseDriver Driver { get; set; }
public string? Version { get; set; }
public string? Host { get; set; }
public string? Port { get; set; }
public string? User { get; set; }
public string? Password { get; set; }
public string? Schema { get; set; }
/// <summary>
/// Loads the <see cref="DatabaseConfiguration"/> from the "database" section or from root-level keys prefixed with "database_".
/// </summary>
/// <param name="configuration">The configuration source.</param>
/// <returns>The populated <see cref="DatabaseConfiguration"/> instance.</returns>
public static DatabaseConfiguration Load(IConfiguration configuration)
{
var section = configuration.GetSection("database");
var useRootFallback = !section.Exists();
string? GetConfig(string key) => useRootFallback ? configuration[$"database_{key}"] : section[key];
var driverString = GetConfig("driver") ?? throw new Exception("Missing database driver");
if (!Enum.TryParse<DatabaseDriver>(driverString, true, out var driver))
{
throw new Exception($"Unsupported database driver: {driverString}");
}
return new DatabaseConfiguration
{
Driver = driver,
Version = GetConfig("version"),
Host = GetConfig("host"),
Port = GetConfig("port"),
User = GetConfig("user"),
Password = GetConfig("password"),
Schema = GetConfig("schema")
};
}
}
}

View File

@@ -1 +0,0 @@
# Tribufu Database

View File

@@ -0,0 +1,105 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: MIT
using Microsoft.Extensions.Configuration;
using System;
namespace Tribufu.EntityFrameworkCore
{
public class DatabaseConfiguration
{
public DatabaseDriver Driver { get; set; }
public string? Version { get; set; }
public string? Host { get; set; }
public string? Port { get; set; }
public string? User { get; set; }
public string? Password { get; set; }
public string? Schema { get; set; }
/// <summary>
/// Loads the <see cref="DatabaseConfiguration"/> from the "database" section or from root-level keys prefixed with "database_".
/// </summary>
/// <param name="configuration">The configuration source.</param>
/// <returns>The populated <see cref="DatabaseConfiguration"/> instance.</returns>
public static DatabaseConfiguration Load(IConfiguration configuration)
{
var section = configuration.GetSection("database");
var useRootFallback = !section.Exists();
string? GetConfig(string key) => useRootFallback ? configuration[$"database_{key}"] : section[key];
var driverString = GetConfig("driver") ?? throw new Exception("Missing database driver");
if (!Enum.TryParse<DatabaseDriver>(driverString, true, out var driver))
{
throw new Exception($"Unsupported database driver: {driverString}");
}
return new DatabaseConfiguration
{
Driver = driver,
Version = GetConfig("version"),
Host = GetConfig("host"),
Port = GetConfig("port"),
User = GetConfig("user"),
Password = GetConfig("password"),
Schema = GetConfig("schema")
};
}
/*
services.AddDbContext<DbContext>(options =>
{
switch (dbConfig.Driver)
{
case DatabaseDriver.MySql:
var mysqlConnection = $"Server={dbConfig.Host};Port={dbConfig.Port};Uid={dbConfig.User};Pwd={dbConfig.Password};Database={dbConfig.Schema};ConvertZeroDateTime=True;";
options.UseMySql(mysqlConnection, ServerVersion.Parse(dbConfig.Version ?? "8.0"), mySqlOptions => { });
break;
case DatabaseDriver.Postgres:
var pgsqlConnection = $"Host={dbConfig.Host};Port={dbConfig.Port};Database={dbConfig.Schema};Username={dbConfig.User};Password={dbConfig.Password};";
options.UseNpgsql(pgsqlConnection, npgsqlOptions => { });
break;
case DatabaseDriver.SqlServer:
var sqlServerConnection = $"Server={dbConfig.Host},{dbConfig.Port};Database={dbConfig.Schema};User Id={dbConfig.User};Password={dbConfig.Password};Encrypt=True;TrustServerCertificate=True;";
options.UseSqlServer(sqlServerConnection, sqlOptions => { });
break;
case DatabaseDriver.Oracle:
var oracleConnection = $"User Id={dbConfig.User};Password={dbConfig.Password};Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST={dbConfig.Host})(PORT={dbConfig.Port})))(CONNECT_DATA=(SERVICE_NAME={dbConfig.Schema})));";
options.UseOracle(oracleConnection, oracleOptions => { });
break;
case DatabaseDriver.Firebird:
var firebirdConnection = $"User={dbConfig.User};Password={dbConfig.Password};Database={dbConfig.Host}:{dbConfig.Port}/{dbConfig.Schema};Dialect=3;";
options.UseFirebird(firebirdConnection, firebirdOptions => { });
break;
case DatabaseDriver.Sqlite:
var savedDirectory = Paths.GetApplicationSavedDirectory();
if (!Directory.Exists(savedDirectory)) Directory.CreateDirectory(savedDirectory);
var sqliteDatabaseFile = string.IsNullOrEmpty(dbConfig.Schema) ? "default.db" : $"{dbConfig.Schema}.db";
var sqliteDatabasePath = Path.Combine(savedDirectory, sqliteDatabaseFile);
options.UseSqlite($"Data Source={sqliteDatabasePath}", sqliteOptions => { });
break;
case DatabaseDriver.MongoDb:
var mongoUriBuilder = new MongoUrlBuilder
{
Server = new MongoServerAddress(dbConfig.Host, int.Parse(dbConfig.Port ?? "27017")),
Username = dbConfig.User,
Password = dbConfig.Password,
DatabaseName = dbConfig.Schema
};
var mongoClient = new MongoClient(mongoUriBuilder.ToMongoUrl());
var mongoDatabase = mongoClient.GetDatabase(dbConfig.Schema ?? "default");
options.UseMongoDB(mongoDatabase.Client, mongoDatabase.DatabaseNamespace.DatabaseName);
break;
default:
throw new NotSupportedException($"Unsupported database driver: {dbConfig.Driver}");
}
});
*/
}
}

View File

@@ -1,7 +1,7 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: MIT
namespace Tribufu.Database
namespace Tribufu.EntityFrameworkCore
{
public static class DatabaseConstants
{

View File

@@ -1,7 +1,7 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: MIT
namespace Tribufu.Database
namespace Tribufu.EntityFrameworkCore
{
public enum DatabaseDriver : byte
{

View File

@@ -0,0 +1 @@
# Tribufu EntityFrameworkCore

View File

@@ -4,10 +4,12 @@
using System.Collections.Generic;
using System.Threading.Tasks;
namespace Tribufu.Database.Repositories
namespace Tribufu.EntityFrameworkCore.Repositories
{
public interface IRepository<T, K> where T : class
{
Task SeedAsync();
IList<T> GetAll();
Task<IList<T>> GetAllAsync();

View File

@@ -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<C, T, K> : IRepository<T, K> where C : DbContext where T : class
{
@@ -21,6 +21,10 @@ namespace Tribufu.Database.Repositories
_dbSet = context.Set<T>();
}
public virtual async Task SeedAsync()
{
}
public virtual IList<T> GetAll()
{
return [.. _dbSet];

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<PackageId>Tribufu.Database</PackageId>
<Description>Tribufu Database Extensions</Description>
<PackageId>Tribufu.EntityFrameworkCore</PackageId>
<Description>Tribufu EntityFrameworkCore</Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<PropertyGroup>

View File

@@ -2,7 +2,9 @@
// SPDX-License-Identifier: MIT
using dotenv.net;
using Tribufu.Generated.Client;
using System;
using System.Threading.Tasks;
using Tribufu.Client;
using Tribufu.Logging;
namespace Tribufu.Test

View File

@@ -1,5 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<IsPackable>false</IsPackable>
<IsPublishable>false</IsPublishable>
<Nullable>enable</Nullable>
<OutputType>Exe</OutputType>

File diff suppressed because it is too large Load Diff

View File

@@ -1,110 +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;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
{
/// <summary>
/// LoginResponse
/// </summary>
[DataContract(Name = "LoginResponse")]
public partial class LoginResponse : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="LoginResponse" /> class.
/// </summary>
/// <param name="user">user.</param>
/// <param name="accessToken">accessToken.</param>
/// <param name="refreshToken">refreshToken.</param>
/// <param name="expiresIn">expiresIn.</param>
public LoginResponse(UserInfo user = default(UserInfo), string accessToken = default(string), string refreshToken = default(string), long expiresIn = default(long))
{
this.User = user;
this.AccessToken = accessToken;
this.RefreshToken = refreshToken;
this.ExpiresIn = expiresIn;
}
/// <summary>
/// Gets or Sets User
/// </summary>
[DataMember(Name = "user", EmitDefaultValue = false)]
public UserInfo User { get; set; }
/// <summary>
/// Gets or Sets AccessToken
/// </summary>
[DataMember(Name = "access_token", EmitDefaultValue = true)]
public string AccessToken { get; set; }
/// <summary>
/// Gets or Sets RefreshToken
/// </summary>
[DataMember(Name = "refresh_token", EmitDefaultValue = true)]
public string RefreshToken { get; set; }
/// <summary>
/// Gets or Sets ExpiresIn
/// </summary>
[DataMember(Name = "expires_in", EmitDefaultValue = false)]
public long ExpiresIn { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class LoginResponse {\n");
sb.Append(" User: ").Append(User).Append("\n");
sb.Append(" AccessToken: ").Append(AccessToken).Append("\n");
sb.Append(" RefreshToken: ").Append(RefreshToken).Append("\n");
sb.Append(" ExpiresIn: ").Append(ExpiresIn).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public virtual string ToJson()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
}
/// <summary>
/// To validate all properties of the instance
/// </summary>
/// <param name="validationContext">Validation context</param>
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
yield break;
}
}
}

View File

@@ -1,83 +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;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
{
/// <summary>
/// RefreshRequest
/// </summary>
[DataContract(Name = "RefreshRequest")]
public partial class RefreshRequest : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="RefreshRequest" /> class.
/// </summary>
/// <param name="refreshToken">refreshToken.</param>
public RefreshRequest(string refreshToken = default(string))
{
this.RefreshToken = refreshToken;
}
/// <summary>
/// Gets or Sets RefreshToken
/// </summary>
[DataMember(Name = "refresh_token", EmitDefaultValue = true)]
public string RefreshToken { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class RefreshRequest {\n");
sb.Append(" RefreshToken: ").Append(RefreshToken).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public virtual string ToJson()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
}
/// <summary>
/// To validate all properties of the instance
/// </summary>
/// <param name="validationContext">Validation context</param>
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
yield break;
}
}
}

View File

@@ -1 +0,0 @@
# Tribufu Generated

View File

@@ -1,26 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<PackageId>Tribufu.Generated</PackageId>
<Description>Tribufu .NET SDK</Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<PropertyGroup>
<AppDesignerFolder>Properties</AppDesignerFolder>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<IsPublishable>false</IsPublishable>
<Nullable>annotations</Nullable>
<OutputType>Library</OutputType>
<TargetFrameworks>net6.0</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<None Include="README.md" Pack="true" PackagePath="\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="JsonSubTypes" />
<PackageReference Include="Newtonsoft.Json" />
<PackageReference Include="Polly" />
<PackageReference Include="RestSharp" />
<PackageReference Include="System.ComponentModel.Annotations" />
</ItemGroup>
</Project>

View File

@@ -14,6 +14,31 @@ namespace Tribufu.Logging
_level = level;
}
public static void Info(object context, string message)
{
Info($"({context.GetType().Name}) {message}");
}
public static void Warn(object context, string message)
{
Warn($"({context.GetType().Name}) {message}");
}
public static void Error(object context, string message)
{
Error($"({context.GetType().Name}) {message}");
}
public static void Debug(object context, string message)
{
Debug($"({context.GetType().Name}) {message}");
}
public static void Trace(object context, string message)
{
Trace($"({context.GetType().Name}) {message}");
}
public static void Info(string message)
{
Log(LogLevel.Info, message, ConsoleColor.Green);

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<PackageId>Tribufu.Logging</PackageId>
<Description>Tribufu Logging Extensions</Description>
<Description>Tribufu Logging</Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<PropertyGroup>

View File

@@ -0,0 +1,45 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: UNLICENSED
using IdGen;
using System;
namespace Tribufu.Platform
{
public static class FlakeGenerator
{
public static readonly DateTime EPOCH = new(2016, 1, 1, 0, 0, 0, DateTimeKind.Utc);
private static readonly IdStructure _structure = new(41, 10, 12);
private static readonly IdGeneratorOptions _options = new(_structure, new DefaultTimeSource(EPOCH));
private static readonly IdGenerator _generator = new(0, _options);
public static ulong New()
{
//Console.WriteLine("Max. generators : {0}", _structure.MaxGenerators);
//Console.WriteLine("Id's/ms per generator : {0}", _structure.MaxSequenceIds);
//Console.WriteLine("Id's/ms total : {0}", _structure.MaxGenerators * _structure.MaxSequenceIds);
//Console.WriteLine("Wraparound interval : {0}", _structure.WraparoundInterval(_generator.Options.TimeSource));
//Console.WriteLine("Wraparound date : {0}", _structure.WraparoundDate(_generator.Options.TimeSource.Epoch, _generator.Options.TimeSource).ToString("O"));
return (ulong)_generator.CreateId();
}
public static ulong FromTimestamp(DateTime timestamp, ushort sequence = 0)
{
var diff = (long)(timestamp - EPOCH).TotalMilliseconds;
if (diff < 0 || diff > (1L << 41) - 1)
{
throw new ArgumentOutOfRangeException(nameof(timestamp), "Timestamp out of range for flake.");
}
ulong timestampPart = (ulong)diff << 22; // 41 bits << (10+12)
ulong generatorPart = 0ul << 12; // Always 0
ulong sequencePart = (ulong)(sequence & 0xFFF); // 12 bits
return timestampPart | generatorPart | sequencePart;
}
}
}

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<PackageId>Tribufu.Platform</PackageId>
<Description>Tribufu Runtime Extensions</Description>
<Description>Tribufu Platform</Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<PropertyGroup>
@@ -14,6 +14,9 @@
<ItemGroup>
<None Include="README.md" Pack="true" PackagePath="\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="IdGen" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Tribufu.ComponentModel\Tribufu.ComponentModel.csproj" />
<ProjectReference Include="..\Tribufu.Logging\Tribufu.Logging.csproj" />

View File

@@ -0,0 +1,20 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: UNLICENSED
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
using System;
using System.Collections.Generic;
using System.Linq;
namespace Tribufu.Serialization
{
public class BaseClassFirstContractResolver : DefaultContractResolver
{
protected override IList<JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization)
{
var props = base.CreateProperties(type, memberSerialization);
return props.OrderBy(p => { return p.DeclaringType == type ? 1 : 0; }).ToList();
}
}
}

View File

@@ -0,0 +1,35 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: MIT
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Serialization;
namespace Tribufu.Serialization
{
public static class CustomSerializerSettings
{
public static JsonSerializerSettings GetNewtonsoftJson()
{
var settings = new JsonSerializerSettings();
SetNewtonsoftJson(settings);
return settings;
}
public static void SetNewtonsoftJson(JsonSerializerSettings settings)
{
settings.ContractResolver = new BaseClassFirstContractResolver
{
NamingStrategy = new SnakeCaseNamingStrategy()
};
settings.Converters.Add(new DecimalNullableStringConverter());
settings.Converters.Add(new DecimalStringConverter());
settings.Converters.Add(new ULongNullableStringConverter());
settings.Converters.Add(new ULongStringConverter());
settings.Converters.Add(new StringEnumConverter(new SnakeCaseNamingStrategy(), false));
settings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
}
}
}

View File

@@ -0,0 +1,35 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: MIT
using Newtonsoft.Json.Serialization;
using System.Text.RegularExpressions;
namespace Tribufu.Serialization
{
public class NetworkAwareSnakeCaseNamingStrategy : SnakeCaseNamingStrategy
{
private static readonly string[] KnownAcronyms = new string[] { "IPv4", "IPv6" };
protected override string ResolvePropertyName(string name)
{
if (string.IsNullOrEmpty(name))
{
return name;
}
foreach (var acr in KnownAcronyms)
{
name = Regex.Replace(name, acr, acr.ToLower());
}
var snake = base.ResolvePropertyName(name);
foreach (var acr in KnownAcronyms)
{
var lower = acr.ToLower();
snake = snake.Replace(lower.Replace("_", ""), lower);
}
return snake;
}
}
}

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<PackageId>Tribufu.Serialization</PackageId>
<Description>Tribufu Serialization Extensions</Description>
<Description>Tribufu Serialization</Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<PropertyGroup>

File diff suppressed because it is too large Load Diff

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -23,6 +23,7 @@ using System.Text;
using System.Threading;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Web;
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
using RestSharp;
@@ -30,9 +31,9 @@ using RestSharp.Serializers;
using RestSharpMethod = RestSharp.Method;
using FileIO = System.IO.File;
using Polly;
using Tribufu.Generated.Model;
using Tribufu.Model;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Allows RestSharp to Serialize/Deserialize JSON using our custom logic, but only when ContentType is JSON.

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -11,7 +11,7 @@
using System;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// API Exception

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -13,7 +13,7 @@ using System;
using System.Collections.Generic;
using System.Net;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Provides a non-generic contract for the ApiResponse wrapper.

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -19,7 +19,7 @@ using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Utility functions providing some benefit to API client consumers.
@@ -101,12 +101,6 @@ namespace Tribufu.Generated.Client
// https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx#Anchor_8
// For example: 2009-06-15T13:45:30.0000000
return dateTimeOffset.ToString((configuration ?? GlobalConfiguration.Instance).DateTimeFormat);
if (obj is DateOnly dateOnly)
// Return a formatted date string - Can be customized with Configuration.DateTimeFormat
// Defaults to an ISO 8601, using the known as a Round-trip date/time pattern ("o")
// https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx#Anchor_8
// For example: 2009-06-15
return dateOnly.ToString((configuration ?? GlobalConfiguration.Instance).DateTimeFormat);
if (obj is bool boolean)
return boolean ? "true" : "false";
if (obj is ICollection collection) {

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -21,7 +21,7 @@ using System.Text;
using System.Net.Http;
using System.Net.Security;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Represents a set of configuration settings
@@ -537,10 +537,10 @@ namespace Tribufu.Generated.Client
/// </summary>
public static string ToDebugReport()
{
string report = "C# SDK (Tribufu.Generated) Debug Report:\n";
string report = "C# SDK (Tribufu) Debug Report:\n";
report += " OS: " + System.Environment.OSVersion + "\n";
report += " .NET Framework Version: " + System.Environment.Version + "\n";
report += " Version of the API: 1.1.0\n";
report += " Version of the API: 1.3.0\n";
report += " SDK Package Version: 1.0.0\n";
return report;

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -11,7 +11,7 @@
using System;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// A delegate to ExceptionFactory method

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -11,7 +11,7 @@
using System.Collections.Generic;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// <see cref="GlobalConfiguration"/> provides a compile-time extension point for globally configuring

View File

@@ -1,15 +1,15 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Http methods supported by swagger

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -11,7 +11,7 @@
using System;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Represents configuration aspects required to interact with the API endpoints.

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -12,7 +12,7 @@
using System;
using System.Threading.Tasks;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Contract for Asynchronous RESTful API interactions.

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -15,7 +15,7 @@ using System.Net;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Represents a readable-only configuration contract.

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -12,7 +12,7 @@
using System;
using System.IO;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Contract for Synchronous RESTful API interactions.

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -13,7 +13,7 @@ using System;
using System.Collections;
using System.Collections.Generic;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// A dictionary in which one key has many associated values.

View File

@@ -1,16 +1,16 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using Newtonsoft.Json.Converters;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Formatter for 'date' openapi formats ss defined by full-date - RFC3339

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -14,7 +14,7 @@ using System.Collections.Generic;
using System.IO;
using System.Net;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// A container for generalized request inputs. This type allows consumers to extend the request functionality

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -12,7 +12,7 @@
using Polly;
using RestSharp;
namespace Tribufu.Generated.Client
namespace Tribufu.Client
{
/// <summary>
/// Configuration class to set the polly retry policies to be applied to the requests.

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -13,7 +13,7 @@ using System;
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Abstract base class for oneOf, anyOf schemas in the OpenAPI specification

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Account
@@ -36,24 +36,34 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Provider
/// </summary>
[DataMember(Name = "provider", EmitDefaultValue = false)]
public LoginProvider? Provider { get; set; }
[DataMember(Name = "provider", IsRequired = true, EmitDefaultValue = true)]
public LoginProvider Provider { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="Account" /> class.
/// </summary>
/// <param name="id">id.</param>
[JsonConstructorAttribute]
protected Account() { }
/// <summary>
/// Initializes a new instance of the <see cref="Account" /> class.
/// </summary>
/// <param name="id">id (required).</param>
/// <param name="name">name.</param>
/// <param name="provider">provider.</param>
/// <param name="provider">provider (required).</param>
/// <param name="userId">userId.</param>
/// <param name="authorized">authorized.</param>
/// <param name="fields">fields.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public Account(string id = default(string), string name = default(string), LoginProvider? provider = default(LoginProvider?), string userId = default(string), bool authorized = default(bool), Object fields = default(Object), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
public Account(string id = default(string), string name = default(string), LoginProvider provider = default(LoginProvider), string userId = default(string), bool authorized = default(bool), Object fields = default(Object), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
// to ensure "id" is required (not null)
if (id == null)
{
throw new ArgumentNullException("id is a required property for Account and cannot be null");
}
this.Id = id;
this.Name = name;
this.Provider = provider;
this.Name = name;
this.UserId = userId;
this.Authorized = authorized;
this.Fields = fields;
@@ -64,7 +74,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Id
/// </summary>
[DataMember(Name = "id", EmitDefaultValue = true)]
[DataMember(Name = "id", IsRequired = true, EmitDefaultValue = true)]
public string Id { get; set; }
/// <summary>

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Application
@@ -41,8 +41,13 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Initializes a new instance of the <see cref="Application" /> class.
/// </summary>
[JsonConstructorAttribute]
protected Application() { }
/// <summary>
/// Initializes a new instance of the <see cref="Application" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="name">name.</param>
/// <param name="name">name (required).</param>
/// <param name="description">description.</param>
/// <param name="type">type.</param>
/// <param name="organizationId">organizationId.</param>
@@ -50,21 +55,18 @@ namespace Tribufu.Generated.Model
/// <param name="bannerUrl">bannerUrl.</param>
/// <param name="capsuleImageUrl">capsuleImageUrl.</param>
/// <param name="libraryImageUrl">libraryImageUrl.</param>
/// <param name="parentId">parentId.</param>
/// <param name="slug">slug.</param>
/// <param name="visibility">visibility.</param>
/// <param name="password">password.</param>
/// <param name="primary">primary.</param>
/// <param name="userCount">userCount.</param>
/// <param name="achievementCount">achievementCount.</param>
/// <param name="badgeCount">badgeCount.</param>
/// <param name="downloadCount">downloadCount.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public Application(string id = default(string), string name = default(string), string description = default(string), ApplicationType? type = default(ApplicationType?), string organizationId = default(string), string iconUrl = default(string), string bannerUrl = default(string), string capsuleImageUrl = default(string), string libraryImageUrl = default(string), string parentId = default(string), string slug = default(string), int visibility = default(int), string password = default(string), int primary = default(int), int userCount = default(int), int achievementCount = default(int), int? badgeCount = default(int?), int downloadCount = default(int), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
public Application(string id = default(string), string name = default(string), string description = default(string), ApplicationType? type = default(ApplicationType?), string organizationId = default(string), string iconUrl = default(string), string bannerUrl = default(string), string capsuleImageUrl = default(string), string libraryImageUrl = default(string), string slug = default(string), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
this.Id = id;
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for Application and cannot be null");
}
this.Name = name;
this.Id = id;
this.Description = description;
this.Type = type;
this.OrganizationId = organizationId;
@@ -72,15 +74,7 @@ namespace Tribufu.Generated.Model
this.BannerUrl = bannerUrl;
this.CapsuleImageUrl = capsuleImageUrl;
this.LibraryImageUrl = libraryImageUrl;
this.ParentId = parentId;
this.Slug = slug;
this.Visibility = visibility;
this.Password = password;
this.Primary = primary;
this.UserCount = userCount;
this.AchievementCount = achievementCount;
this.BadgeCount = badgeCount;
this.DownloadCount = downloadCount;
this.Created = created;
this.Updated = updated;
}
@@ -94,7 +88,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", EmitDefaultValue = true)]
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
@@ -133,60 +127,12 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "library_image_url", EmitDefaultValue = true)]
public string LibraryImageUrl { get; set; }
/// <summary>
/// Gets or Sets ParentId
/// </summary>
[DataMember(Name = "parent_id", EmitDefaultValue = true)]
public string ParentId { get; set; }
/// <summary>
/// Gets or Sets Slug
/// </summary>
[DataMember(Name = "slug", EmitDefaultValue = true)]
public string Slug { get; set; }
/// <summary>
/// Gets or Sets Visibility
/// </summary>
[DataMember(Name = "visibility", EmitDefaultValue = false)]
public int Visibility { get; set; }
/// <summary>
/// Gets or Sets Password
/// </summary>
[DataMember(Name = "password", EmitDefaultValue = true)]
public string Password { get; set; }
/// <summary>
/// Gets or Sets Primary
/// </summary>
[DataMember(Name = "primary", EmitDefaultValue = false)]
public int Primary { get; set; }
/// <summary>
/// Gets or Sets UserCount
/// </summary>
[DataMember(Name = "user_count", EmitDefaultValue = false)]
public int UserCount { get; set; }
/// <summary>
/// Gets or Sets AchievementCount
/// </summary>
[DataMember(Name = "achievement_count", EmitDefaultValue = false)]
public int AchievementCount { get; set; }
/// <summary>
/// Gets or Sets BadgeCount
/// </summary>
[DataMember(Name = "badge_count", EmitDefaultValue = true)]
public int? BadgeCount { get; set; }
/// <summary>
/// Gets or Sets DownloadCount
/// </summary>
[DataMember(Name = "download_count", EmitDefaultValue = false)]
public int DownloadCount { get; set; }
/// <summary>
/// Gets or Sets Created
/// </summary>
@@ -216,15 +162,7 @@ namespace Tribufu.Generated.Model
sb.Append(" BannerUrl: ").Append(BannerUrl).Append("\n");
sb.Append(" CapsuleImageUrl: ").Append(CapsuleImageUrl).Append("\n");
sb.Append(" LibraryImageUrl: ").Append(LibraryImageUrl).Append("\n");
sb.Append(" ParentId: ").Append(ParentId).Append("\n");
sb.Append(" Slug: ").Append(Slug).Append("\n");
sb.Append(" Visibility: ").Append(Visibility).Append("\n");
sb.Append(" Password: ").Append(Password).Append("\n");
sb.Append(" Primary: ").Append(Primary).Append("\n");
sb.Append(" UserCount: ").Append(UserCount).Append("\n");
sb.Append(" AchievementCount: ").Append(AchievementCount).Append("\n");
sb.Append(" BadgeCount: ").Append(BadgeCount).Append("\n");
sb.Append(" DownloadCount: ").Append(DownloadCount).Append("\n");
sb.Append(" Created: ").Append(Created).Append("\n");
sb.Append(" Updated: ").Append(Updated).Append("\n");
sb.Append("}\n");
@@ -277,6 +215,12 @@ namespace Tribufu.Generated.Model
yield return new ValidationResult("Invalid value for LibraryImageUrl, length must be less than 255.", new [] { "LibraryImageUrl" });
}
// Slug (string) maxLength
if (this.Slug != null && this.Slug.Length > 75)
{
yield return new ValidationResult("Invalid value for Slug, length must be less than 75.", new [] { "Slug" });
}
yield break;
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Defines ApplicationType

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// AuthorizeRequest
@@ -47,20 +47,35 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Initializes a new instance of the <see cref="AuthorizeRequest" /> class.
/// </summary>
[JsonConstructorAttribute]
protected AuthorizeRequest() { }
/// <summary>
/// Initializes a new instance of the <see cref="AuthorizeRequest" /> class.
/// </summary>
/// <param name="responseType">responseType.</param>
/// <param name="clientId">clientId.</param>
/// <param name="clientId">clientId (required).</param>
/// <param name="codeChallenge">codeChallenge.</param>
/// <param name="codeChallengeMethod">codeChallengeMethod.</param>
/// <param name="redirectUri">redirectUri.</param>
/// <param name="redirectUri">redirectUri (required).</param>
/// <param name="scope">scope.</param>
/// <param name="state">state.</param>
public AuthorizeRequest(ResponseType? responseType = default(ResponseType?), string clientId = default(string), string codeChallenge = default(string), CodeChallengeMethod? codeChallengeMethod = default(CodeChallengeMethod?), string redirectUri = default(string), string scope = default(string), string state = default(string))
{
this.ResponseType = responseType;
// to ensure "clientId" is required (not null)
if (clientId == null)
{
throw new ArgumentNullException("clientId is a required property for AuthorizeRequest and cannot be null");
}
this.ClientId = clientId;
// to ensure "redirectUri" is required (not null)
if (redirectUri == null)
{
throw new ArgumentNullException("redirectUri is a required property for AuthorizeRequest and cannot be null");
}
this.RedirectUri = redirectUri;
this.ResponseType = responseType;
this.CodeChallenge = codeChallenge;
this.CodeChallengeMethod = codeChallengeMethod;
this.RedirectUri = redirectUri;
this.Scope = scope;
this.State = state;
}
@@ -68,7 +83,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets ClientId
/// </summary>
[DataMember(Name = "client_id", EmitDefaultValue = true)]
[DataMember(Name = "client_id", IsRequired = true, EmitDefaultValue = true)]
public string ClientId { get; set; }
/// <summary>
@@ -80,7 +95,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets RedirectUri
/// </summary>
[DataMember(Name = "redirect_uri", EmitDefaultValue = true)]
[DataMember(Name = "redirect_uri", IsRequired = true, EmitDefaultValue = true)]
public string RedirectUri { get; set; }
/// <summary>

View File

@@ -0,0 +1,129 @@
/*
* Tribufu API
*
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Model
{
/// <summary>
/// ClientInfo
/// </summary>
[DataContract(Name = "ClientInfo")]
public partial class ClientInfo : IValidatableObject
{
/// <summary>
/// Gets or Sets Type
/// </summary>
[DataMember(Name = "type", EmitDefaultValue = false)]
public ClientType? Type { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="ClientInfo" /> class.
/// </summary>
[JsonConstructorAttribute]
protected ClientInfo() { }
/// <summary>
/// Initializes a new instance of the <see cref="ClientInfo" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="name">name (required).</param>
/// <param name="type">type.</param>
/// <param name="photoUrl">photoUrl.</param>
/// <param name="permissions">permissions.</param>
public ClientInfo(string id = default(string), string name = default(string), ClientType? type = default(ClientType?), string photoUrl = default(string), List<string> permissions = default(List<string>))
{
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for ClientInfo and cannot be null");
}
this.Name = name;
this.Id = id;
this.Type = type;
this.PhotoUrl = photoUrl;
this.Permissions = permissions;
}
/// <summary>
/// Gets or Sets Id
/// </summary>
[DataMember(Name = "id", EmitDefaultValue = false)]
public string Id { get; set; }
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
/// Gets or Sets PhotoUrl
/// </summary>
[DataMember(Name = "photo_url", EmitDefaultValue = true)]
public string PhotoUrl { get; set; }
/// <summary>
/// Gets or Sets Permissions
/// </summary>
[DataMember(Name = "permissions", EmitDefaultValue = true)]
public List<string> Permissions { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class ClientInfo {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Name: ").Append(Name).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
sb.Append(" PhotoUrl: ").Append(PhotoUrl).Append("\n");
sb.Append(" Permissions: ").Append(Permissions).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public virtual string ToJson()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
}
/// <summary>
/// To validate all properties of the instance
/// </summary>
/// <param name="validationContext">Validation context</param>
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
yield break;
}
}
}

View File

@@ -0,0 +1,54 @@
/*
* Tribufu API
*
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Model
{
/// <summary>
/// Defines ClientType
/// </summary>
[JsonConverter(typeof(StringEnumConverter))]
public enum ClientType
{
/// <summary>
/// Enum Web for value: web
/// </summary>
[EnumMember(Value = "web")]
Web,
/// <summary>
/// Enum Desktop for value: desktop
/// </summary>
[EnumMember(Value = "desktop")]
Desktop,
/// <summary>
/// Enum Mobile for value: mobile
/// </summary>
[EnumMember(Value = "mobile")]
Mobile
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Defines CodeChallengeMethod

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,38 +22,48 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// LoginRequest
/// CodeResponse
/// </summary>
[DataContract(Name = "LoginRequest")]
public partial class LoginRequest : IValidatableObject
[DataContract(Name = "CodeResponse")]
public partial class CodeResponse : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="LoginRequest" /> class.
/// Initializes a new instance of the <see cref="CodeResponse" /> class.
/// </summary>
/// <param name="login">login.</param>
/// <param name="password">password.</param>
public LoginRequest(string login = default(string), string password = default(string))
[JsonConstructorAttribute]
protected CodeResponse() { }
/// <summary>
/// Initializes a new instance of the <see cref="CodeResponse" /> class.
/// </summary>
/// <param name="code">code (required).</param>
/// <param name="state">state.</param>
public CodeResponse(string code = default(string), string state = default(string))
{
this.Login = login;
this.Password = password;
// to ensure "code" is required (not null)
if (code == null)
{
throw new ArgumentNullException("code is a required property for CodeResponse and cannot be null");
}
this.Code = code;
this.State = state;
}
/// <summary>
/// Gets or Sets Login
/// Gets or Sets Code
/// </summary>
[DataMember(Name = "login", EmitDefaultValue = true)]
public string Login { get; set; }
[DataMember(Name = "code", IsRequired = true, EmitDefaultValue = true)]
public string Code { get; set; }
/// <summary>
/// Gets or Sets Password
/// Gets or Sets State
/// </summary>
[DataMember(Name = "password", EmitDefaultValue = true)]
public string Password { get; set; }
[DataMember(Name = "state", EmitDefaultValue = true)]
public string State { get; set; }
/// <summary>
/// Returns the string presentation of the object
@@ -62,9 +72,9 @@ namespace Tribufu.Generated.Model
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class LoginRequest {\n");
sb.Append(" Login: ").Append(Login).Append("\n");
sb.Append(" Password: ").Append(Password).Append("\n");
sb.Append("class CodeResponse {\n");
sb.Append(" Code: ").Append(Code).Append("\n");
sb.Append(" State: ").Append(State).Append("\n");
sb.Append("}\n");
return sb.ToString();
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,44 +22,49 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// RegisterRequest
/// CreateUser
/// </summary>
[DataContract(Name = "RegisterRequest")]
public partial class RegisterRequest : IValidatableObject
[DataContract(Name = "CreateUser")]
public partial class CreateUser : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="RegisterRequest" /> class.
/// Initializes a new instance of the <see cref="CreateUser" /> class.
/// </summary>
[JsonConstructorAttribute]
protected RegisterRequest() { }
protected CreateUser() { }
/// <summary>
/// Initializes a new instance of the <see cref="RegisterRequest" /> class.
/// Initializes a new instance of the <see cref="CreateUser" /> class.
/// </summary>
/// <param name="uuid">uuid.</param>
/// <param name="name">name (required).</param>
/// <param name="displayName">displayName.</param>
/// <param name="email">email.</param>
/// <param name="password">password (required).</param>
public RegisterRequest(Guid? uuid = default(Guid?), string name = default(string), string email = default(string), string password = default(string))
/// <param name="password">password.</param>
/// <param name="language">language.</param>
/// <param name="timezone">timezone.</param>
/// <param name="currency">currency.</param>
/// <param name="ipAddress">ipAddress.</param>
public CreateUser(Guid? uuid = default(Guid?), string name = default(string), string displayName = default(string), string email = default(string), string password = default(string), string language = default(string), string timezone = default(string), string currency = default(string), string ipAddress = default(string))
{
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for RegisterRequest and cannot be null");
throw new ArgumentNullException("name is a required property for CreateUser and cannot be null");
}
this.Name = name;
// to ensure "password" is required (not null)
if (password == null)
{
throw new ArgumentNullException("password is a required property for RegisterRequest and cannot be null");
}
this.Password = password;
this.Uuid = uuid;
this.DisplayName = displayName;
this.Email = email;
this.Password = password;
this.Language = language;
this.Timezone = timezone;
this.Currency = currency;
this.IpAddress = ipAddress;
}
/// <summary>
@@ -74,6 +79,12 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
/// Gets or Sets DisplayName
/// </summary>
[DataMember(Name = "display_name", EmitDefaultValue = true)]
public string DisplayName { get; set; }
/// <summary>
/// Gets or Sets Email
/// </summary>
@@ -83,9 +94,33 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Password
/// </summary>
[DataMember(Name = "password", IsRequired = true, EmitDefaultValue = true)]
[DataMember(Name = "password", EmitDefaultValue = true)]
public string Password { get; set; }
/// <summary>
/// Gets or Sets Language
/// </summary>
[DataMember(Name = "language", EmitDefaultValue = true)]
public string Language { get; set; }
/// <summary>
/// Gets or Sets Timezone
/// </summary>
[DataMember(Name = "timezone", EmitDefaultValue = true)]
public string Timezone { get; set; }
/// <summary>
/// Gets or Sets Currency
/// </summary>
[DataMember(Name = "currency", EmitDefaultValue = true)]
public string Currency { get; set; }
/// <summary>
/// Gets or Sets IpAddress
/// </summary>
[DataMember(Name = "ip_address", EmitDefaultValue = true)]
public string IpAddress { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
@@ -93,11 +128,16 @@ namespace Tribufu.Generated.Model
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class RegisterRequest {\n");
sb.Append("class CreateUser {\n");
sb.Append(" Uuid: ").Append(Uuid).Append("\n");
sb.Append(" Name: ").Append(Name).Append("\n");
sb.Append(" DisplayName: ").Append(DisplayName).Append("\n");
sb.Append(" Email: ").Append(Email).Append("\n");
sb.Append(" Password: ").Append(Password).Append("\n");
sb.Append(" Language: ").Append(Language).Append("\n");
sb.Append(" Timezone: ").Append(Timezone).Append("\n");
sb.Append(" Currency: ").Append(Currency).Append("\n");
sb.Append(" IpAddress: ").Append(IpAddress).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
@@ -125,9 +165,9 @@ namespace Tribufu.Generated.Model
}
// Name (string) minLength
if (this.Name != null && this.Name.Length < 3)
if (this.Name != null && this.Name.Length < 1)
{
yield return new ValidationResult("Invalid value for Name, length must be greater than 3.", new [] { "Name" });
yield return new ValidationResult("Invalid value for Name, length must be greater than 1.", new [] { "Name" });
}
if (this.Name != null) {
@@ -139,25 +179,43 @@ namespace Tribufu.Generated.Model
}
}
// DisplayName (string) maxLength
if (this.DisplayName != null && this.DisplayName.Length > 45)
{
yield return new ValidationResult("Invalid value for DisplayName, length must be less than 45.", new [] { "DisplayName" });
}
if (this.DisplayName != null) {
// DisplayName (string) pattern
Regex regexDisplayName = new Regex(@"^[a-zA-Z0-9-_ ]*$", RegexOptions.CultureInvariant);
if (!regexDisplayName.Match(this.DisplayName).Success)
{
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for DisplayName, must match a pattern of " + regexDisplayName, new [] { "DisplayName" });
}
}
// Email (string) maxLength
if (this.Email != null && this.Email.Length > 255)
{
yield return new ValidationResult("Invalid value for Email, length must be less than 255.", new [] { "Email" });
}
if (this.Email != null) {
// Email (string) pattern
Regex regexEmail = new Regex(@"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$", RegexOptions.CultureInvariant);
if (!regexEmail.Match(this.Email).Success)
{
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Email, must match a pattern of " + regexEmail, new [] { "Email" });
}
// Language (string) maxLength
if (this.Language != null && this.Language.Length > 5)
{
yield return new ValidationResult("Invalid value for Language, length must be less than 5.", new [] { "Language" });
}
// Password (string) minLength
if (this.Password != null && this.Password.Length < 1)
// Currency (string) maxLength
if (this.Currency != null && this.Currency.Length > 3)
{
yield return new ValidationResult("Invalid value for Password, length must be greater than 1.", new [] { "Password" });
yield return new ValidationResult("Invalid value for Currency, length must be less than 3.", new [] { "Currency" });
}
// IpAddress (string) maxLength
if (this.IpAddress != null && this.IpAddress.Length > 255)
{
yield return new ValidationResult("Invalid value for IpAddress, length must be less than 255.", new [] { "IpAddress" });
}
yield break;

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// CryptoViewModel

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Game
@@ -41,19 +41,13 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Initializes a new instance of the <see cref="Game" /> class.
/// </summary>
/// <param name="gamePort">gamePort.</param>
/// <param name="queryPort">queryPort.</param>
/// <param name="rconPort">rconPort.</param>
/// <param name="serverCount">serverCount.</param>
/// <param name="steamAppId">steamAppId.</param>
/// <param name="steamServerAppId">steamServerAppId.</param>
/// <param name="enableServers">enableServers.</param>
/// <param name="rustGamedigId">rustGamedigId.</param>
/// <param name="nodeGamedigId">nodeGamedigId.</param>
/// <param name="serverConnectUrl">serverConnectUrl.</param>
/// <param name="serverTags">serverTags.</param>
[JsonConstructorAttribute]
protected Game() { }
/// <summary>
/// Initializes a new instance of the <see cref="Game" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="name">name.</param>
/// <param name="name">name (required).</param>
/// <param name="description">description.</param>
/// <param name="type">type.</param>
/// <param name="organizationId">organizationId.</param>
@@ -61,32 +55,25 @@ namespace Tribufu.Generated.Model
/// <param name="bannerUrl">bannerUrl.</param>
/// <param name="capsuleImageUrl">capsuleImageUrl.</param>
/// <param name="libraryImageUrl">libraryImageUrl.</param>
/// <param name="parentId">parentId.</param>
/// <param name="slug">slug.</param>
/// <param name="visibility">visibility.</param>
/// <param name="password">password.</param>
/// <param name="primary">primary.</param>
/// <param name="userCount">userCount.</param>
/// <param name="achievementCount">achievementCount.</param>
/// <param name="badgeCount">badgeCount.</param>
/// <param name="downloadCount">downloadCount.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public Game(int? gamePort = default(int?), int? queryPort = default(int?), int? rconPort = default(int?), int serverCount = default(int), int? steamAppId = default(int?), int? steamServerAppId = default(int?), bool enableServers = default(bool), string rustGamedigId = default(string), string nodeGamedigId = default(string), string serverConnectUrl = default(string), string serverTags = default(string), string id = default(string), string name = default(string), string description = default(string), ApplicationType? type = default(ApplicationType?), string organizationId = default(string), string iconUrl = default(string), string bannerUrl = default(string), string capsuleImageUrl = default(string), string libraryImageUrl = default(string), string parentId = default(string), string slug = default(string), int visibility = default(int), string password = default(string), int primary = default(int), int userCount = default(int), int achievementCount = default(int), int? badgeCount = default(int?), int downloadCount = default(int), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
/// <param name="enableServers">enableServers.</param>
/// <param name="gamePort">gamePort.</param>
/// <param name="queryPort">queryPort.</param>
/// <param name="rconPort">rconPort.</param>
/// <param name="gamedigId">gamedigId.</param>
/// <param name="steamAppId">steamAppId.</param>
/// <param name="steamServerAppId">steamServerAppId.</param>
public Game(string id = default(string), string name = default(string), string description = default(string), ApplicationType? type = default(ApplicationType?), string organizationId = default(string), string iconUrl = default(string), string bannerUrl = default(string), string capsuleImageUrl = default(string), string libraryImageUrl = default(string), string slug = default(string), DateTime created = default(DateTime), DateTime? updated = default(DateTime?), bool enableServers = default(bool), int? gamePort = default(int?), int? queryPort = default(int?), int? rconPort = default(int?), string gamedigId = default(string), int? steamAppId = default(int?), int? steamServerAppId = default(int?))
{
this.GamePort = gamePort;
this.QueryPort = queryPort;
this.RconPort = rconPort;
this.ServerCount = serverCount;
this.SteamAppId = steamAppId;
this.SteamServerAppId = steamServerAppId;
this.EnableServers = enableServers;
this.RustGamedigId = rustGamedigId;
this.NodeGamedigId = nodeGamedigId;
this.ServerConnectUrl = serverConnectUrl;
this.ServerTags = serverTags;
this.Id = id;
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for Game and cannot be null");
}
this.Name = name;
this.Id = id;
this.Description = description;
this.Type = type;
this.OrganizationId = organizationId;
@@ -94,85 +81,18 @@ namespace Tribufu.Generated.Model
this.BannerUrl = bannerUrl;
this.CapsuleImageUrl = capsuleImageUrl;
this.LibraryImageUrl = libraryImageUrl;
this.ParentId = parentId;
this.Slug = slug;
this.Visibility = visibility;
this.Password = password;
this.Primary = primary;
this.UserCount = userCount;
this.AchievementCount = achievementCount;
this.BadgeCount = badgeCount;
this.DownloadCount = downloadCount;
this.Created = created;
this.Updated = updated;
this.EnableServers = enableServers;
this.GamePort = gamePort;
this.QueryPort = queryPort;
this.RconPort = rconPort;
this.GamedigId = gamedigId;
this.SteamAppId = steamAppId;
this.SteamServerAppId = steamServerAppId;
}
/// <summary>
/// Gets or Sets GamePort
/// </summary>
[DataMember(Name = "game_port", EmitDefaultValue = true)]
public int? GamePort { get; set; }
/// <summary>
/// Gets or Sets QueryPort
/// </summary>
[DataMember(Name = "query_port", EmitDefaultValue = true)]
public int? QueryPort { get; set; }
/// <summary>
/// Gets or Sets RconPort
/// </summary>
[DataMember(Name = "rcon_port", EmitDefaultValue = true)]
public int? RconPort { get; set; }
/// <summary>
/// Gets or Sets ServerCount
/// </summary>
[DataMember(Name = "server_count", EmitDefaultValue = false)]
public int ServerCount { get; set; }
/// <summary>
/// Gets or Sets SteamAppId
/// </summary>
[DataMember(Name = "steam_app_id", EmitDefaultValue = true)]
public int? SteamAppId { get; set; }
/// <summary>
/// Gets or Sets SteamServerAppId
/// </summary>
[DataMember(Name = "steam_server_app_id", EmitDefaultValue = true)]
public int? SteamServerAppId { get; set; }
/// <summary>
/// Gets or Sets EnableServers
/// </summary>
[DataMember(Name = "enable_servers", EmitDefaultValue = true)]
public bool EnableServers { get; set; }
/// <summary>
/// Gets or Sets RustGamedigId
/// </summary>
[DataMember(Name = "rust_gamedig_id", EmitDefaultValue = true)]
public string RustGamedigId { get; set; }
/// <summary>
/// Gets or Sets NodeGamedigId
/// </summary>
[DataMember(Name = "node_gamedig_id", EmitDefaultValue = true)]
public string NodeGamedigId { get; set; }
/// <summary>
/// Gets or Sets ServerConnectUrl
/// </summary>
[DataMember(Name = "server_connect_url", EmitDefaultValue = true)]
public string ServerConnectUrl { get; set; }
/// <summary>
/// Gets or Sets ServerTags
/// </summary>
[DataMember(Name = "server_tags", EmitDefaultValue = true)]
public string ServerTags { get; set; }
/// <summary>
/// Gets or Sets Id
/// </summary>
@@ -182,7 +102,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", EmitDefaultValue = true)]
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
@@ -221,60 +141,12 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "library_image_url", EmitDefaultValue = true)]
public string LibraryImageUrl { get; set; }
/// <summary>
/// Gets or Sets ParentId
/// </summary>
[DataMember(Name = "parent_id", EmitDefaultValue = true)]
public string ParentId { get; set; }
/// <summary>
/// Gets or Sets Slug
/// </summary>
[DataMember(Name = "slug", EmitDefaultValue = true)]
public string Slug { get; set; }
/// <summary>
/// Gets or Sets Visibility
/// </summary>
[DataMember(Name = "visibility", EmitDefaultValue = false)]
public int Visibility { get; set; }
/// <summary>
/// Gets or Sets Password
/// </summary>
[DataMember(Name = "password", EmitDefaultValue = true)]
public string Password { get; set; }
/// <summary>
/// Gets or Sets Primary
/// </summary>
[DataMember(Name = "primary", EmitDefaultValue = false)]
public int Primary { get; set; }
/// <summary>
/// Gets or Sets UserCount
/// </summary>
[DataMember(Name = "user_count", EmitDefaultValue = false)]
public int UserCount { get; set; }
/// <summary>
/// Gets or Sets AchievementCount
/// </summary>
[DataMember(Name = "achievement_count", EmitDefaultValue = false)]
public int AchievementCount { get; set; }
/// <summary>
/// Gets or Sets BadgeCount
/// </summary>
[DataMember(Name = "badge_count", EmitDefaultValue = true)]
public int? BadgeCount { get; set; }
/// <summary>
/// Gets or Sets DownloadCount
/// </summary>
[DataMember(Name = "download_count", EmitDefaultValue = false)]
public int DownloadCount { get; set; }
/// <summary>
/// Gets or Sets Created
/// </summary>
@@ -287,6 +159,48 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "updated", EmitDefaultValue = true)]
public DateTime? Updated { get; set; }
/// <summary>
/// Gets or Sets EnableServers
/// </summary>
[DataMember(Name = "enable_servers", EmitDefaultValue = true)]
public bool EnableServers { get; set; }
/// <summary>
/// Gets or Sets GamePort
/// </summary>
[DataMember(Name = "game_port", EmitDefaultValue = true)]
public int? GamePort { get; set; }
/// <summary>
/// Gets or Sets QueryPort
/// </summary>
[DataMember(Name = "query_port", EmitDefaultValue = true)]
public int? QueryPort { get; set; }
/// <summary>
/// Gets or Sets RconPort
/// </summary>
[DataMember(Name = "rcon_port", EmitDefaultValue = true)]
public int? RconPort { get; set; }
/// <summary>
/// Gets or Sets GamedigId
/// </summary>
[DataMember(Name = "gamedig_id", EmitDefaultValue = true)]
public string GamedigId { get; set; }
/// <summary>
/// Gets or Sets SteamAppId
/// </summary>
[DataMember(Name = "steam_app_id", EmitDefaultValue = true)]
public int? SteamAppId { get; set; }
/// <summary>
/// Gets or Sets SteamServerAppId
/// </summary>
[DataMember(Name = "steam_server_app_id", EmitDefaultValue = true)]
public int? SteamServerAppId { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
@@ -295,17 +209,6 @@ namespace Tribufu.Generated.Model
{
StringBuilder sb = new StringBuilder();
sb.Append("class Game {\n");
sb.Append(" GamePort: ").Append(GamePort).Append("\n");
sb.Append(" QueryPort: ").Append(QueryPort).Append("\n");
sb.Append(" RconPort: ").Append(RconPort).Append("\n");
sb.Append(" ServerCount: ").Append(ServerCount).Append("\n");
sb.Append(" SteamAppId: ").Append(SteamAppId).Append("\n");
sb.Append(" SteamServerAppId: ").Append(SteamServerAppId).Append("\n");
sb.Append(" EnableServers: ").Append(EnableServers).Append("\n");
sb.Append(" RustGamedigId: ").Append(RustGamedigId).Append("\n");
sb.Append(" NodeGamedigId: ").Append(NodeGamedigId).Append("\n");
sb.Append(" ServerConnectUrl: ").Append(ServerConnectUrl).Append("\n");
sb.Append(" ServerTags: ").Append(ServerTags).Append("\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Name: ").Append(Name).Append("\n");
sb.Append(" Description: ").Append(Description).Append("\n");
@@ -315,17 +218,16 @@ namespace Tribufu.Generated.Model
sb.Append(" BannerUrl: ").Append(BannerUrl).Append("\n");
sb.Append(" CapsuleImageUrl: ").Append(CapsuleImageUrl).Append("\n");
sb.Append(" LibraryImageUrl: ").Append(LibraryImageUrl).Append("\n");
sb.Append(" ParentId: ").Append(ParentId).Append("\n");
sb.Append(" Slug: ").Append(Slug).Append("\n");
sb.Append(" Visibility: ").Append(Visibility).Append("\n");
sb.Append(" Password: ").Append(Password).Append("\n");
sb.Append(" Primary: ").Append(Primary).Append("\n");
sb.Append(" UserCount: ").Append(UserCount).Append("\n");
sb.Append(" AchievementCount: ").Append(AchievementCount).Append("\n");
sb.Append(" BadgeCount: ").Append(BadgeCount).Append("\n");
sb.Append(" DownloadCount: ").Append(DownloadCount).Append("\n");
sb.Append(" Created: ").Append(Created).Append("\n");
sb.Append(" Updated: ").Append(Updated).Append("\n");
sb.Append(" EnableServers: ").Append(EnableServers).Append("\n");
sb.Append(" GamePort: ").Append(GamePort).Append("\n");
sb.Append(" QueryPort: ").Append(QueryPort).Append("\n");
sb.Append(" RconPort: ").Append(RconPort).Append("\n");
sb.Append(" GamedigId: ").Append(GamedigId).Append("\n");
sb.Append(" SteamAppId: ").Append(SteamAppId).Append("\n");
sb.Append(" SteamServerAppId: ").Append(SteamServerAppId).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
@@ -346,24 +248,6 @@ namespace Tribufu.Generated.Model
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
// RustGamedigId (string) maxLength
if (this.RustGamedigId != null && this.RustGamedigId.Length > 45)
{
yield return new ValidationResult("Invalid value for RustGamedigId, length must be less than 45.", new [] { "RustGamedigId" });
}
// NodeGamedigId (string) maxLength
if (this.NodeGamedigId != null && this.NodeGamedigId.Length > 45)
{
yield return new ValidationResult("Invalid value for NodeGamedigId, length must be less than 45.", new [] { "NodeGamedigId" });
}
// ServerConnectUrl (string) maxLength
if (this.ServerConnectUrl != null && this.ServerConnectUrl.Length > 255)
{
yield return new ValidationResult("Invalid value for ServerConnectUrl, length must be less than 255.", new [] { "ServerConnectUrl" });
}
// Name (string) maxLength
if (this.Name != null && this.Name.Length > 75)
{
@@ -394,6 +278,18 @@ namespace Tribufu.Generated.Model
yield return new ValidationResult("Invalid value for LibraryImageUrl, length must be less than 255.", new [] { "LibraryImageUrl" });
}
// Slug (string) maxLength
if (this.Slug != null && this.Slug.Length > 75)
{
yield return new ValidationResult("Invalid value for Slug, length must be less than 75.", new [] { "Slug" });
}
// GamedigId (string) maxLength
if (this.GamedigId != null && this.GamedigId.Length > 45)
{
yield return new ValidationResult("Invalid value for GamedigId, length must be less than 45.", new [] { "GamedigId" });
}
yield break;
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// GameServer
@@ -32,77 +32,66 @@ namespace Tribufu.Generated.Model
[DataContract(Name = "GameServer")]
public partial class GameServer : IValidatableObject
{
/// <summary>
/// Gets or Sets Status
/// Initializes a new instance of the <see cref="GameServer" /> class.
/// </summary>
[DataMember(Name = "status", EmitDefaultValue = false)]
public ServerStatus? Status { get; set; }
[JsonConstructorAttribute]
protected GameServer() { }
/// <summary>
/// Initializes a new instance of the <see cref="GameServer" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="name">name.</param>
/// <param name="name">name (required).</param>
/// <param name="description">description.</param>
/// <param name="address">address.</param>
/// <param name="ownerId">ownerId.</param>
/// <param name="address">address (required).</param>
/// <param name="queryPort">queryPort (required).</param>
/// <param name="gamePort">gamePort.</param>
/// <param name="queryPort">queryPort.</param>
/// <param name="map">map.</param>
/// <param name="varVersion">varVersion.</param>
/// <param name="gameId">gameId.</param>
/// <param name="gameIconUrl">gameIconUrl.</param>
/// <param name="varVersion">varVersion.</param>
/// <param name="featured">featured.</param>
/// <param name="clusterId">clusterId.</param>
/// <param name="websiteUrl">websiteUrl.</param>
/// <param name="bannerUrl">bannerUrl.</param>
/// <param name="ownerId">ownerId.</param>
/// <param name="uptime">uptime.</param>
/// <param name="status">status.</param>
/// <param name="ping">ping.</param>
/// <param name="map">map.</param>
/// <param name="usedSlots">usedSlots.</param>
/// <param name="maxSlots">maxSlots.</param>
/// <param name="motd">motd.</param>
/// <param name="players">players.</param>
/// <param name="lastOnline">lastOnline.</param>
/// <param name="country">country.</param>
/// <param name="steam">steam.</param>
/// <param name="discordServerId">discordServerId.</param>
/// <param name="youtubeVideoUrl">youtubeVideoUrl.</param>
/// <param name="tags">tags.</param>
/// <param name="commentCount">commentCount.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public GameServer(string id = default(string), string name = default(string), string description = default(string), string address = default(string), int? gamePort = default(int?), int queryPort = default(int), string gameId = default(string), string gameIconUrl = default(string), string varVersion = default(string), bool featured = default(bool), string clusterId = default(string), string websiteUrl = default(string), string bannerUrl = default(string), string ownerId = default(string), double uptime = default(double), ServerStatus? status = default(ServerStatus?), int? ping = default(int?), string map = default(string), int? usedSlots = default(int?), int? maxSlots = default(int?), string motd = default(string), string players = default(string), DateTime? lastOnline = default(DateTime?), string country = default(string), bool steam = default(bool), string discordServerId = default(string), string youtubeVideoUrl = default(string), string tags = default(string), int commentCount = default(int), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
public GameServer(string id = default(string), string name = default(string), string description = default(string), string ownerId = default(string), string address = default(string), int queryPort = default(int), int? gamePort = default(int?), string map = default(string), string varVersion = default(string), string gameId = default(string), string gameIconUrl = default(string), string clusterId = default(string), string websiteUrl = default(string), string bannerUrl = default(string), double uptime = default(double), string country = default(string), bool steam = default(bool), string discordServerId = default(string), string youtubeVideoUrl = default(string), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
this.Id = id;
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for GameServer and cannot be null");
}
this.Name = name;
this.Description = description;
// to ensure "address" is required (not null)
if (address == null)
{
throw new ArgumentNullException("address is a required property for GameServer and cannot be null");
}
this.Address = address;
this.GamePort = gamePort;
this.QueryPort = queryPort;
this.Id = id;
this.Description = description;
this.OwnerId = ownerId;
this.GamePort = gamePort;
this.Map = map;
this.VarVersion = varVersion;
this.GameId = gameId;
this.GameIconUrl = gameIconUrl;
this.VarVersion = varVersion;
this.Featured = featured;
this.ClusterId = clusterId;
this.WebsiteUrl = websiteUrl;
this.BannerUrl = bannerUrl;
this.OwnerId = ownerId;
this.Uptime = uptime;
this.Status = status;
this.Ping = ping;
this.Map = map;
this.UsedSlots = usedSlots;
this.MaxSlots = maxSlots;
this.Motd = motd;
this.Players = players;
this.LastOnline = lastOnline;
this.Country = country;
this.Steam = steam;
this.DiscordServerId = discordServerId;
this.YoutubeVideoUrl = youtubeVideoUrl;
this.Tags = tags;
this.CommentCount = commentCount;
this.Created = created;
this.Updated = updated;
}
@@ -116,7 +105,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", EmitDefaultValue = true)]
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
@@ -125,12 +114,24 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "description", EmitDefaultValue = true)]
public string Description { get; set; }
/// <summary>
/// Gets or Sets OwnerId
/// </summary>
[DataMember(Name = "owner_id", EmitDefaultValue = true)]
public string OwnerId { get; set; }
/// <summary>
/// Gets or Sets Address
/// </summary>
[DataMember(Name = "address", EmitDefaultValue = true)]
[DataMember(Name = "address", IsRequired = true, EmitDefaultValue = true)]
public string Address { get; set; }
/// <summary>
/// Gets or Sets QueryPort
/// </summary>
[DataMember(Name = "query_port", IsRequired = true, EmitDefaultValue = true)]
public int QueryPort { get; set; }
/// <summary>
/// Gets or Sets GamePort
/// </summary>
@@ -138,10 +139,16 @@ namespace Tribufu.Generated.Model
public int? GamePort { get; set; }
/// <summary>
/// Gets or Sets QueryPort
/// Gets or Sets Map
/// </summary>
[DataMember(Name = "query_port", EmitDefaultValue = false)]
public int QueryPort { get; set; }
[DataMember(Name = "map", EmitDefaultValue = true)]
public string Map { get; set; }
/// <summary>
/// Gets or Sets VarVersion
/// </summary>
[DataMember(Name = "version", EmitDefaultValue = true)]
public string VarVersion { get; set; }
/// <summary>
/// Gets or Sets GameId
@@ -155,18 +162,6 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "game_icon_url", EmitDefaultValue = true)]
public string GameIconUrl { get; set; }
/// <summary>
/// Gets or Sets VarVersion
/// </summary>
[DataMember(Name = "version", EmitDefaultValue = true)]
public string VarVersion { get; set; }
/// <summary>
/// Gets or Sets Featured
/// </summary>
[DataMember(Name = "featured", EmitDefaultValue = true)]
public bool Featured { get; set; }
/// <summary>
/// Gets or Sets ClusterId
/// </summary>
@@ -185,60 +180,12 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "banner_url", EmitDefaultValue = true)]
public string BannerUrl { get; set; }
/// <summary>
/// Gets or Sets OwnerId
/// </summary>
[DataMember(Name = "owner_id", EmitDefaultValue = true)]
public string OwnerId { get; set; }
/// <summary>
/// Gets or Sets Uptime
/// </summary>
[DataMember(Name = "uptime", EmitDefaultValue = false)]
public double Uptime { get; set; }
/// <summary>
/// Gets or Sets Ping
/// </summary>
[DataMember(Name = "ping", EmitDefaultValue = true)]
public int? Ping { get; set; }
/// <summary>
/// Gets or Sets Map
/// </summary>
[DataMember(Name = "map", EmitDefaultValue = true)]
public string Map { get; set; }
/// <summary>
/// Gets or Sets UsedSlots
/// </summary>
[DataMember(Name = "used_slots", EmitDefaultValue = true)]
public int? UsedSlots { get; set; }
/// <summary>
/// Gets or Sets MaxSlots
/// </summary>
[DataMember(Name = "max_slots", EmitDefaultValue = true)]
public int? MaxSlots { get; set; }
/// <summary>
/// Gets or Sets Motd
/// </summary>
[DataMember(Name = "motd", EmitDefaultValue = true)]
public string Motd { get; set; }
/// <summary>
/// Gets or Sets Players
/// </summary>
[DataMember(Name = "players", EmitDefaultValue = true)]
public string Players { get; set; }
/// <summary>
/// Gets or Sets LastOnline
/// </summary>
[DataMember(Name = "last_online", EmitDefaultValue = true)]
public DateTime? LastOnline { get; set; }
/// <summary>
/// Gets or Sets Country
/// </summary>
@@ -263,18 +210,6 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "youtube_video_url", EmitDefaultValue = true)]
public string YoutubeVideoUrl { get; set; }
/// <summary>
/// Gets or Sets Tags
/// </summary>
[DataMember(Name = "tags", EmitDefaultValue = true)]
public string Tags { get; set; }
/// <summary>
/// Gets or Sets CommentCount
/// </summary>
[DataMember(Name = "comment_count", EmitDefaultValue = false)]
public int CommentCount { get; set; }
/// <summary>
/// Gets or Sets Created
/// </summary>
@@ -298,32 +233,22 @@ namespace Tribufu.Generated.Model
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Name: ").Append(Name).Append("\n");
sb.Append(" Description: ").Append(Description).Append("\n");
sb.Append(" OwnerId: ").Append(OwnerId).Append("\n");
sb.Append(" Address: ").Append(Address).Append("\n");
sb.Append(" GamePort: ").Append(GamePort).Append("\n");
sb.Append(" QueryPort: ").Append(QueryPort).Append("\n");
sb.Append(" GamePort: ").Append(GamePort).Append("\n");
sb.Append(" Map: ").Append(Map).Append("\n");
sb.Append(" VarVersion: ").Append(VarVersion).Append("\n");
sb.Append(" GameId: ").Append(GameId).Append("\n");
sb.Append(" GameIconUrl: ").Append(GameIconUrl).Append("\n");
sb.Append(" VarVersion: ").Append(VarVersion).Append("\n");
sb.Append(" Featured: ").Append(Featured).Append("\n");
sb.Append(" ClusterId: ").Append(ClusterId).Append("\n");
sb.Append(" WebsiteUrl: ").Append(WebsiteUrl).Append("\n");
sb.Append(" BannerUrl: ").Append(BannerUrl).Append("\n");
sb.Append(" OwnerId: ").Append(OwnerId).Append("\n");
sb.Append(" Uptime: ").Append(Uptime).Append("\n");
sb.Append(" Status: ").Append(Status).Append("\n");
sb.Append(" Ping: ").Append(Ping).Append("\n");
sb.Append(" Map: ").Append(Map).Append("\n");
sb.Append(" UsedSlots: ").Append(UsedSlots).Append("\n");
sb.Append(" MaxSlots: ").Append(MaxSlots).Append("\n");
sb.Append(" Motd: ").Append(Motd).Append("\n");
sb.Append(" Players: ").Append(Players).Append("\n");
sb.Append(" LastOnline: ").Append(LastOnline).Append("\n");
sb.Append(" Country: ").Append(Country).Append("\n");
sb.Append(" Steam: ").Append(Steam).Append("\n");
sb.Append(" DiscordServerId: ").Append(DiscordServerId).Append("\n");
sb.Append(" YoutubeVideoUrl: ").Append(YoutubeVideoUrl).Append("\n");
sb.Append(" Tags: ").Append(Tags).Append("\n");
sb.Append(" CommentCount: ").Append(CommentCount).Append("\n");
sb.Append(" Created: ").Append(Created).Append("\n");
sb.Append(" Updated: ").Append(Updated).Append("\n");
sb.Append("}\n");
@@ -358,6 +283,12 @@ namespace Tribufu.Generated.Model
yield return new ValidationResult("Invalid value for Address, length must be less than 255.", new [] { "Address" });
}
// Map (string) maxLength
if (this.Map != null && this.Map.Length > 255)
{
yield return new ValidationResult("Invalid value for Map, length must be less than 255.", new [] { "Map" });
}
// VarVersion (string) maxLength
if (this.VarVersion != null && this.VarVersion.Length > 45)
{
@@ -376,18 +307,6 @@ namespace Tribufu.Generated.Model
yield return new ValidationResult("Invalid value for BannerUrl, length must be less than 255.", new [] { "BannerUrl" });
}
// Map (string) maxLength
if (this.Map != null && this.Map.Length > 45)
{
yield return new ValidationResult("Invalid value for Map, length must be less than 45.", new [] { "Map" });
}
// Motd (string) maxLength
if (this.Motd != null && this.Motd.Length > 255)
{
yield return new ValidationResult("Invalid value for Motd, length must be less than 255.", new [] { "Motd" });
}
// Country (string) maxLength
if (this.Country != null && this.Country.Length > 2)
{

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// GameServerCluster
@@ -32,11 +32,16 @@ namespace Tribufu.Generated.Model
[DataContract(Name = "GameServerCluster")]
public partial class GameServerCluster : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="GameServerCluster" /> class.
/// </summary>
[JsonConstructorAttribute]
protected GameServerCluster() { }
/// <summary>
/// Initializes a new instance of the <see cref="GameServerCluster" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="name">name.</param>
/// <param name="name">name (required).</param>
/// <param name="description">description.</param>
/// <param name="gameId">gameId.</param>
/// <param name="websiteUrl">websiteUrl.</param>
@@ -51,8 +56,13 @@ namespace Tribufu.Generated.Model
/// <param name="updated">updated.</param>
public GameServerCluster(string id = default(string), string name = default(string), string description = default(string), string gameId = default(string), string websiteUrl = default(string), string bannerUrl = default(string), string ownerId = default(string), string discordServerId = default(string), string youtubeVideoUrl = default(string), string tags = default(string), int commentCount = default(int), int serverCount = default(int), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
this.Id = id;
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for GameServerCluster and cannot be null");
}
this.Name = name;
this.Id = id;
this.Description = description;
this.GameId = gameId;
this.WebsiteUrl = websiteUrl;
@@ -76,7 +86,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", EmitDefaultValue = true)]
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>

View File

@@ -0,0 +1,152 @@
/*
* Tribufu API
*
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Model
{
/// <summary>
/// GameServerQuery
/// </summary>
[DataContract(Name = "GameServerQuery")]
public partial class GameServerQuery : IValidatableObject
{
/// <summary>
/// Gets or Sets Status
/// </summary>
[DataMember(Name = "status", EmitDefaultValue = false)]
public GameServerStatus? Status { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="GameServerQuery" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="serverId">serverId.</param>
/// <param name="status">status.</param>
/// <param name="ping">ping.</param>
/// <param name="currentPlayers">currentPlayers.</param>
/// <param name="maxPlayers">maxPlayers.</param>
/// <param name="motd">motd.</param>
/// <param name="created">created.</param>
public GameServerQuery(string id = default(string), string serverId = default(string), GameServerStatus? status = default(GameServerStatus?), int ping = default(int), int currentPlayers = default(int), int maxPlayers = default(int), string motd = default(string), DateTime created = default(DateTime))
{
this.Id = id;
this.ServerId = serverId;
this.Status = status;
this.Ping = ping;
this.CurrentPlayers = currentPlayers;
this.MaxPlayers = maxPlayers;
this.Motd = motd;
this.Created = created;
}
/// <summary>
/// Gets or Sets Id
/// </summary>
[DataMember(Name = "id", EmitDefaultValue = false)]
public string Id { get; set; }
/// <summary>
/// Gets or Sets ServerId
/// </summary>
[DataMember(Name = "server_id", EmitDefaultValue = false)]
public string ServerId { get; set; }
/// <summary>
/// Gets or Sets Ping
/// </summary>
[DataMember(Name = "ping", EmitDefaultValue = false)]
public int Ping { get; set; }
/// <summary>
/// Gets or Sets CurrentPlayers
/// </summary>
[DataMember(Name = "current_players", EmitDefaultValue = false)]
public int CurrentPlayers { get; set; }
/// <summary>
/// Gets or Sets MaxPlayers
/// </summary>
[DataMember(Name = "max_players", EmitDefaultValue = false)]
public int MaxPlayers { get; set; }
/// <summary>
/// Gets or Sets Motd
/// </summary>
[DataMember(Name = "motd", EmitDefaultValue = true)]
public string Motd { get; set; }
/// <summary>
/// Gets or Sets Created
/// </summary>
[DataMember(Name = "created", EmitDefaultValue = false)]
public DateTime Created { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class GameServerQuery {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" ServerId: ").Append(ServerId).Append("\n");
sb.Append(" Status: ").Append(Status).Append("\n");
sb.Append(" Ping: ").Append(Ping).Append("\n");
sb.Append(" CurrentPlayers: ").Append(CurrentPlayers).Append("\n");
sb.Append(" MaxPlayers: ").Append(MaxPlayers).Append("\n");
sb.Append(" Motd: ").Append(Motd).Append("\n");
sb.Append(" Created: ").Append(Created).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public virtual string ToJson()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
}
/// <summary>
/// To validate all properties of the instance
/// </summary>
/// <param name="validationContext">Validation context</param>
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
// Motd (string) maxLength
if (this.Motd != null && this.Motd.Length > 255)
{
yield return new ValidationResult("Invalid value for Motd, length must be less than 255.", new [] { "Motd" });
}
yield break;
}
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,15 +22,15 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Defines ServerStatus
/// Defines GameServerStatus
/// </summary>
[JsonConverter(typeof(StringEnumConverter))]
public enum ServerStatus
public enum GameServerStatus
{
/// <summary>
/// Enum Unknown for value: unknown

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Defines GrantType

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Group
@@ -32,12 +32,17 @@ namespace Tribufu.Generated.Model
[DataContract(Name = "Group")]
public partial class Group : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="Group" /> class.
/// </summary>
[JsonConstructorAttribute]
protected Group() { }
/// <summary>
/// Initializes a new instance of the <see cref="Group" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="uuid">uuid.</param>
/// <param name="name">name.</param>
/// <param name="name">name (required).</param>
/// <param name="tag">tag.</param>
/// <param name="description">description.</param>
/// <param name="type">type.</param>
@@ -53,9 +58,14 @@ namespace Tribufu.Generated.Model
/// <param name="updated">updated.</param>
public Group(string id = default(string), Guid uuid = default(Guid), string name = default(string), string tag = default(string), string description = default(string), int type = default(int), int privacy = default(int), string ownerId = default(string), bool verified = default(bool), string photoUrl = default(string), string bannerUrl = default(string), int memberCount = default(int), int followerCount = default(int), int viewCount = default(int), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for Group and cannot be null");
}
this.Name = name;
this.Id = id;
this.Uuid = uuid;
this.Name = name;
this.Tag = tag;
this.Description = description;
this.Type = type;
@@ -86,7 +96,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", EmitDefaultValue = true)]
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
@@ -211,6 +221,12 @@ namespace Tribufu.Generated.Model
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
// Name (string) maxLength
if (this.Name != null && this.Name.Length > 75)
{
yield return new ValidationResult("Invalid value for Name, length must be less than 75.", new [] { "Name" });
}
yield break;
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,28 +22,38 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// GroupGame
/// GroupApplication
/// </summary>
[DataContract(Name = "GroupGame")]
public partial class GroupGame : IValidatableObject
[DataContract(Name = "GroupApplication")]
public partial class GroupApplication : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="GroupGame" /> class.
/// Initializes a new instance of the <see cref="GroupApplication" /> class.
/// </summary>
/// <param name="groupId">groupId.</param>
[JsonConstructorAttribute]
protected GroupApplication() { }
/// <summary>
/// Initializes a new instance of the <see cref="GroupApplication" /> class.
/// </summary>
/// <param name="groupId">groupId (required).</param>
/// <param name="group">group.</param>
/// <param name="applicationId">applicationId.</param>
/// <param name="application">application.</param>
/// <param name="stats">stats.</param>
/// <param name="acquired">acquired.</param>
/// <param name="lastUsed">lastUsed.</param>
public GroupGame(string groupId = default(string), Group group = default(Group), string applicationId = default(string), Application application = default(Application), Object stats = default(Object), DateTime acquired = default(DateTime), DateTime? lastUsed = default(DateTime?))
public GroupApplication(string groupId = default(string), Group group = default(Group), string applicationId = default(string), Application application = default(Application), Object stats = default(Object), DateTime acquired = default(DateTime), DateTime? lastUsed = default(DateTime?))
{
// to ensure "groupId" is required (not null)
if (groupId == null)
{
throw new ArgumentNullException("groupId is a required property for GroupApplication and cannot be null");
}
this.GroupId = groupId;
this.Group = group;
this.ApplicationId = applicationId;
@@ -56,7 +66,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets GroupId
/// </summary>
[DataMember(Name = "group_id", EmitDefaultValue = false)]
[DataMember(Name = "group_id", IsRequired = true, EmitDefaultValue = true)]
public string GroupId { get; set; }
/// <summary>
@@ -102,7 +112,7 @@ namespace Tribufu.Generated.Model
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class GroupGame {\n");
sb.Append("class GroupApplication {\n");
sb.Append(" GroupId: ").Append(GroupId).Append("\n");
sb.Append(" Group: ").Append(Group).Append("\n");
sb.Append(" ApplicationId: ").Append(ApplicationId).Append("\n");

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// GroupMember

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Defines GroupRank

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// HashViewModel
@@ -35,16 +35,26 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Initializes a new instance of the <see cref="HashViewModel" /> class.
/// </summary>
/// <param name="value">value.</param>
[JsonConstructorAttribute]
protected HashViewModel() { }
/// <summary>
/// Initializes a new instance of the <see cref="HashViewModel" /> class.
/// </summary>
/// <param name="value">value (required).</param>
public HashViewModel(string value = default(string))
{
// to ensure "value" is required (not null)
if (value == null)
{
throw new ArgumentNullException("value is a required property for HashViewModel and cannot be null");
}
this.Value = value;
}
/// <summary>
/// Gets or Sets Value
/// </summary>
[DataMember(Name = "value", EmitDefaultValue = true)]
[DataMember(Name = "value", IsRequired = true, EmitDefaultValue = true)]
public string Value { get; set; }
/// <summary>

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// IntrospectRequest
@@ -36,15 +36,25 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets TokenTypeHint
/// </summary>
[DataMember(Name = "token_type_hint", EmitDefaultValue = false)]
public TokenHintType? TokenTypeHint { get; set; }
[DataMember(Name = "token_type_hint", IsRequired = true, EmitDefaultValue = true)]
public TokenHintType TokenTypeHint { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="IntrospectRequest" /> class.
/// </summary>
/// <param name="token">token.</param>
/// <param name="tokenTypeHint">tokenTypeHint.</param>
public IntrospectRequest(string token = default(string), TokenHintType? tokenTypeHint = default(TokenHintType?))
[JsonConstructorAttribute]
protected IntrospectRequest() { }
/// <summary>
/// Initializes a new instance of the <see cref="IntrospectRequest" /> class.
/// </summary>
/// <param name="token">token (required).</param>
/// <param name="tokenTypeHint">tokenTypeHint (required).</param>
public IntrospectRequest(string token = default(string), TokenHintType tokenTypeHint = default(TokenHintType))
{
// to ensure "token" is required (not null)
if (token == null)
{
throw new ArgumentNullException("token is a required property for IntrospectRequest and cannot be null");
}
this.Token = token;
this.TokenTypeHint = tokenTypeHint;
}
@@ -52,7 +62,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Token
/// </summary>
[DataMember(Name = "token", EmitDefaultValue = true)]
[DataMember(Name = "token", IsRequired = true, EmitDefaultValue = true)]
public string Token { get; set; }
/// <summary>

View File

@@ -0,0 +1,182 @@
/*
* Tribufu API
*
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Model
{
/// <summary>
/// IntrospectResponse
/// </summary>
[DataContract(Name = "IntrospectResponse")]
public partial class IntrospectResponse : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="IntrospectResponse" /> class.
/// </summary>
/// <param name="jti">jti.</param>
/// <param name="active">active.</param>
/// <param name="tokenType">tokenType.</param>
/// <param name="clientId">clientId.</param>
/// <param name="sub">sub.</param>
/// <param name="username">username.</param>
/// <param name="scope">scope.</param>
/// <param name="iss">iss.</param>
/// <param name="aud">aud.</param>
/// <param name="iat">iat.</param>
/// <param name="exp">exp.</param>
/// <param name="nbf">nbf.</param>
public IntrospectResponse(string jti = default(string), bool active = default(bool), string tokenType = default(string), string clientId = default(string), string sub = default(string), string username = default(string), string scope = default(string), string iss = default(string), string aud = default(string), long? iat = default(long?), long? exp = default(long?), long? nbf = default(long?))
{
this.Jti = jti;
this.Active = active;
this.TokenType = tokenType;
this.ClientId = clientId;
this.Sub = sub;
this.Username = username;
this.Scope = scope;
this.Iss = iss;
this.Aud = aud;
this.Iat = iat;
this.Exp = exp;
this.Nbf = nbf;
}
/// <summary>
/// Gets or Sets Jti
/// </summary>
[DataMember(Name = "jti", EmitDefaultValue = true)]
public string Jti { get; set; }
/// <summary>
/// Gets or Sets Active
/// </summary>
[DataMember(Name = "active", EmitDefaultValue = true)]
public bool Active { get; set; }
/// <summary>
/// Gets or Sets TokenType
/// </summary>
[DataMember(Name = "token_type", EmitDefaultValue = true)]
public string TokenType { get; set; }
/// <summary>
/// Gets or Sets ClientId
/// </summary>
[DataMember(Name = "client_id", EmitDefaultValue = true)]
public string ClientId { get; set; }
/// <summary>
/// Gets or Sets Sub
/// </summary>
[DataMember(Name = "sub", EmitDefaultValue = true)]
public string Sub { get; set; }
/// <summary>
/// Gets or Sets Username
/// </summary>
[DataMember(Name = "username", EmitDefaultValue = true)]
public string Username { get; set; }
/// <summary>
/// Gets or Sets Scope
/// </summary>
[DataMember(Name = "scope", EmitDefaultValue = true)]
public string Scope { get; set; }
/// <summary>
/// Gets or Sets Iss
/// </summary>
[DataMember(Name = "iss", EmitDefaultValue = true)]
public string Iss { get; set; }
/// <summary>
/// Gets or Sets Aud
/// </summary>
[DataMember(Name = "aud", EmitDefaultValue = true)]
public string Aud { get; set; }
/// <summary>
/// Gets or Sets Iat
/// </summary>
[DataMember(Name = "iat", EmitDefaultValue = true)]
public long? Iat { get; set; }
/// <summary>
/// Gets or Sets Exp
/// </summary>
[DataMember(Name = "exp", EmitDefaultValue = true)]
public long? Exp { get; set; }
/// <summary>
/// Gets or Sets Nbf
/// </summary>
[DataMember(Name = "nbf", EmitDefaultValue = true)]
public long? Nbf { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class IntrospectResponse {\n");
sb.Append(" Jti: ").Append(Jti).Append("\n");
sb.Append(" Active: ").Append(Active).Append("\n");
sb.Append(" TokenType: ").Append(TokenType).Append("\n");
sb.Append(" ClientId: ").Append(ClientId).Append("\n");
sb.Append(" Sub: ").Append(Sub).Append("\n");
sb.Append(" Username: ").Append(Username).Append("\n");
sb.Append(" Scope: ").Append(Scope).Append("\n");
sb.Append(" Iss: ").Append(Iss).Append("\n");
sb.Append(" Aud: ").Append(Aud).Append("\n");
sb.Append(" Iat: ").Append(Iat).Append("\n");
sb.Append(" Exp: ").Append(Exp).Append("\n");
sb.Append(" Nbf: ").Append(Nbf).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public virtual string ToJson()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
}
/// <summary>
/// To validate all properties of the instance
/// </summary>
/// <param name="validationContext">Validation context</param>
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
yield break;
}
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// IpAddress
@@ -39,11 +39,12 @@ namespace Tribufu.Generated.Model
/// <param name="varVersion">varVersion.</param>
/// <param name="network">network.</param>
/// <param name="reserved">reserved.</param>
/// <param name="banned">banned.</param>
/// <param name="asn">asn.</param>
/// <param name="isp">isp.</param>
/// <param name="continent">continent.</param>
/// <param name="country">country.</param>
/// <param name="region">region.</param>
/// <param name="province">province.</param>
/// <param name="city">city.</param>
/// <param name="postalCode">postalCode.</param>
/// <param name="callingCode">callingCode.</param>
@@ -53,17 +54,18 @@ namespace Tribufu.Generated.Model
/// <param name="currency">currency.</param>
/// <param name="latitude">latitude.</param>
/// <param name="longitude">longitude.</param>
public IpAddress(string address = default(string), int varVersion = default(int), string network = default(string), bool reserved = default(bool), string asn = default(string), string isp = default(string), string continent = default(string), string country = default(string), string region = default(string), string city = default(string), string postalCode = default(string), string callingCode = default(string), string tld = default(string), string language = default(string), string timezone = default(string), string currency = default(string), float? latitude = default(float?), float? longitude = default(float?))
public IpAddress(string address = default(string), int varVersion = default(int), string network = default(string), bool reserved = default(bool), bool banned = default(bool), string asn = default(string), string isp = default(string), string continent = default(string), string country = default(string), string province = default(string), string city = default(string), string postalCode = default(string), string callingCode = default(string), string tld = default(string), string language = default(string), string timezone = default(string), string currency = default(string), float? latitude = default(float?), float? longitude = default(float?))
{
this.Address = address;
this.VarVersion = varVersion;
this.Network = network;
this.Reserved = reserved;
this.Banned = banned;
this.Asn = asn;
this.Isp = isp;
this.Continent = continent;
this.Country = country;
this.Region = region;
this.Province = province;
this.City = city;
this.PostalCode = postalCode;
this.CallingCode = callingCode;
@@ -99,6 +101,12 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "reserved", EmitDefaultValue = true)]
public bool Reserved { get; set; }
/// <summary>
/// Gets or Sets Banned
/// </summary>
[DataMember(Name = "banned", EmitDefaultValue = true)]
public bool Banned { get; set; }
/// <summary>
/// Gets or Sets Asn
/// </summary>
@@ -124,10 +132,10 @@ namespace Tribufu.Generated.Model
public string Country { get; set; }
/// <summary>
/// Gets or Sets Region
/// Gets or Sets Province
/// </summary>
[DataMember(Name = "region", EmitDefaultValue = true)]
public string Region { get; set; }
[DataMember(Name = "province", EmitDefaultValue = true)]
public string Province { get; set; }
/// <summary>
/// Gets or Sets City
@@ -195,11 +203,12 @@ namespace Tribufu.Generated.Model
sb.Append(" VarVersion: ").Append(VarVersion).Append("\n");
sb.Append(" Network: ").Append(Network).Append("\n");
sb.Append(" Reserved: ").Append(Reserved).Append("\n");
sb.Append(" Banned: ").Append(Banned).Append("\n");
sb.Append(" Asn: ").Append(Asn).Append("\n");
sb.Append(" Isp: ").Append(Isp).Append("\n");
sb.Append(" Continent: ").Append(Continent).Append("\n");
sb.Append(" Country: ").Append(Country).Append("\n");
sb.Append(" Region: ").Append(Region).Append("\n");
sb.Append(" Province: ").Append(Province).Append("\n");
sb.Append(" City: ").Append(City).Append("\n");
sb.Append(" PostalCode: ").Append(PostalCode).Append("\n");
sb.Append(" CallingCode: ").Append(CallingCode).Append("\n");
@@ -265,10 +274,10 @@ namespace Tribufu.Generated.Model
yield return new ValidationResult("Invalid value for Country, length must be less than 2.", new [] { "Country" });
}
// Region (string) maxLength
if (this.Region != null && this.Region.Length > 255)
// Province (string) maxLength
if (this.Province != null && this.Province.Length > 255)
{
yield return new ValidationResult("Invalid value for Region, length must be less than 255.", new [] { "Region" });
yield return new ValidationResult("Invalid value for Province, length must be less than 255.", new [] { "Province" });
}
// City (string) maxLength

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// LeaderboardItem

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Defines LeaderboardOrder

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Defines LoginProvider

View File

@@ -0,0 +1,225 @@
/*
* Tribufu API
*
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Model
{
/// <summary>
/// ModelClient
/// </summary>
[DataContract(Name = "varClient")]
public partial class ModelClient : IValidatableObject
{
/// <summary>
/// Gets or Sets Type
/// </summary>
[DataMember(Name = "type", EmitDefaultValue = false)]
public ClientType? Type { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="ModelClient" /> class.
/// </summary>
[JsonConstructorAttribute]
protected ModelClient() { }
/// <summary>
/// Initializes a new instance of the <see cref="ModelClient" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="name">name (required).</param>
/// <param name="type">type.</param>
/// <param name="organizationId">organizationId.</param>
/// <param name="trusted">trusted.</param>
/// <param name="websiteUrl">websiteUrl.</param>
/// <param name="photoUrl">photoUrl.</param>
/// <param name="backgroundUrl">backgroundUrl.</param>
/// <param name="redirects">redirects.</param>
/// <param name="scopes">scopes.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public ModelClient(string id = default(string), string name = default(string), ClientType? type = default(ClientType?), string organizationId = default(string), bool trusted = default(bool), string websiteUrl = default(string), string photoUrl = default(string), string backgroundUrl = default(string), string redirects = default(string), string scopes = default(string), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for ModelClient and cannot be null");
}
this.Name = name;
this.Id = id;
this.Type = type;
this.OrganizationId = organizationId;
this.Trusted = trusted;
this.WebsiteUrl = websiteUrl;
this.PhotoUrl = photoUrl;
this.BackgroundUrl = backgroundUrl;
this.Redirects = redirects;
this.Scopes = scopes;
this.Created = created;
this.Updated = updated;
}
/// <summary>
/// Gets or Sets Id
/// </summary>
[DataMember(Name = "id", EmitDefaultValue = false)]
public string Id { get; set; }
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
/// Gets or Sets OrganizationId
/// </summary>
[DataMember(Name = "organization_id", EmitDefaultValue = false)]
public string OrganizationId { get; set; }
/// <summary>
/// Gets or Sets Trusted
/// </summary>
[DataMember(Name = "trusted", EmitDefaultValue = true)]
public bool Trusted { get; set; }
/// <summary>
/// Gets or Sets WebsiteUrl
/// </summary>
[DataMember(Name = "website_url", EmitDefaultValue = true)]
public string WebsiteUrl { get; set; }
/// <summary>
/// Gets or Sets PhotoUrl
/// </summary>
[DataMember(Name = "photo_url", EmitDefaultValue = true)]
public string PhotoUrl { get; set; }
/// <summary>
/// Gets or Sets BackgroundUrl
/// </summary>
[DataMember(Name = "background_url", EmitDefaultValue = true)]
public string BackgroundUrl { get; set; }
/// <summary>
/// Gets or Sets Redirects
/// </summary>
[DataMember(Name = "redirects", EmitDefaultValue = true)]
public string Redirects { get; set; }
/// <summary>
/// Gets or Sets Scopes
/// </summary>
[DataMember(Name = "scopes", EmitDefaultValue = true)]
public string Scopes { get; set; }
/// <summary>
/// Gets or Sets Permissions
/// </summary>
[DataMember(Name = "permissions", EmitDefaultValue = true)]
public List<string> Permissions { get; private set; }
/// <summary>
/// Returns false as Permissions should not be serialized given that it's read-only.
/// </summary>
/// <returns>false (boolean)</returns>
public bool ShouldSerializePermissions()
{
return false;
}
/// <summary>
/// Gets or Sets Created
/// </summary>
[DataMember(Name = "created", EmitDefaultValue = false)]
public DateTime Created { get; set; }
/// <summary>
/// Gets or Sets Updated
/// </summary>
[DataMember(Name = "updated", EmitDefaultValue = true)]
public DateTime? Updated { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class ModelClient {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Name: ").Append(Name).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
sb.Append(" OrganizationId: ").Append(OrganizationId).Append("\n");
sb.Append(" Trusted: ").Append(Trusted).Append("\n");
sb.Append(" WebsiteUrl: ").Append(WebsiteUrl).Append("\n");
sb.Append(" PhotoUrl: ").Append(PhotoUrl).Append("\n");
sb.Append(" BackgroundUrl: ").Append(BackgroundUrl).Append("\n");
sb.Append(" Redirects: ").Append(Redirects).Append("\n");
sb.Append(" Scopes: ").Append(Scopes).Append("\n");
sb.Append(" Permissions: ").Append(Permissions).Append("\n");
sb.Append(" Created: ").Append(Created).Append("\n");
sb.Append(" Updated: ").Append(Updated).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public virtual string ToJson()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
}
/// <summary>
/// To validate all properties of the instance
/// </summary>
/// <param name="validationContext">Validation context</param>
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
// Name (string) maxLength
if (this.Name != null && this.Name.Length > 75)
{
yield return new ValidationResult("Invalid value for Name, length must be less than 75.", new [] { "Name" });
}
// PhotoUrl (string) maxLength
if (this.PhotoUrl != null && this.PhotoUrl.Length > 255)
{
yield return new ValidationResult("Invalid value for PhotoUrl, length must be less than 255.", new [] { "PhotoUrl" });
}
// BackgroundUrl (string) maxLength
if (this.BackgroundUrl != null && this.BackgroundUrl.Length > 255)
{
yield return new ValidationResult("Invalid value for BackgroundUrl, length must be less than 255.", new [] { "BackgroundUrl" });
}
yield break;
}
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Package
@@ -32,33 +32,48 @@ namespace Tribufu.Generated.Model
[DataContract(Name = "Package")]
public partial class Package : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="Package" /> class.
/// </summary>
[JsonConstructorAttribute]
protected Package() { }
/// <summary>
/// Initializes a new instance of the <see cref="Package" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="name">name.</param>
/// <param name="name">name (required).</param>
/// <param name="description">description.</param>
/// <param name="imageUrl">imageUrl.</param>
/// <param name="authorId">authorId.</param>
/// <param name="varVersion">varVersion.</param>
/// <param name="fileUrl">fileUrl.</param>
/// <param name="rawSize">rawSize.</param>
/// <param name="imageUrl">imageUrl (required).</param>
/// <param name="applicationId">applicationId.</param>
/// <param name="categoryId">categoryId.</param>
/// <param name="downloadCount">downloadCount.</param>
/// <param name="lastDownload">lastDownload.</param>
/// <param name="releases">releases.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public Package(string id = default(string), string name = default(string), string description = default(string), string imageUrl = default(string), string authorId = default(string), string varVersion = default(string), string fileUrl = default(string), double rawSize = default(double), int downloadCount = default(int), DateTime? lastDownload = default(DateTime?), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
public Package(string id = default(string), string name = default(string), string description = default(string), string authorId = default(string), string imageUrl = default(string), string applicationId = default(string), string categoryId = default(string), int downloadCount = default(int), DateTime? lastDownload = default(DateTime?), List<PackageRelease> releases = default(List<PackageRelease>), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
this.Id = id;
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for Package and cannot be null");
}
this.Name = name;
this.Description = description;
// to ensure "imageUrl" is required (not null)
if (imageUrl == null)
{
throw new ArgumentNullException("imageUrl is a required property for Package and cannot be null");
}
this.ImageUrl = imageUrl;
this.Id = id;
this.Description = description;
this.AuthorId = authorId;
this.VarVersion = varVersion;
this.FileUrl = fileUrl;
this.RawSize = rawSize;
this.ApplicationId = applicationId;
this.CategoryId = categoryId;
this.DownloadCount = downloadCount;
this.LastDownload = lastDownload;
this.Releases = releases;
this.Created = created;
this.Updated = updated;
}
@@ -72,7 +87,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", EmitDefaultValue = true)]
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
@@ -81,12 +96,6 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "description", EmitDefaultValue = true)]
public string Description { get; set; }
/// <summary>
/// Gets or Sets ImageUrl
/// </summary>
[DataMember(Name = "image_url", EmitDefaultValue = true)]
public string ImageUrl { get; set; }
/// <summary>
/// Gets or Sets AuthorId
/// </summary>
@@ -94,22 +103,22 @@ namespace Tribufu.Generated.Model
public string AuthorId { get; set; }
/// <summary>
/// Gets or Sets VarVersion
/// Gets or Sets ImageUrl
/// </summary>
[DataMember(Name = "version", EmitDefaultValue = true)]
public string VarVersion { get; set; }
[DataMember(Name = "image_url", IsRequired = true, EmitDefaultValue = true)]
public string ImageUrl { get; set; }
/// <summary>
/// Gets or Sets FileUrl
/// Gets or Sets ApplicationId
/// </summary>
[DataMember(Name = "file_url", EmitDefaultValue = true)]
public string FileUrl { get; set; }
[DataMember(Name = "application_id", EmitDefaultValue = true)]
public string ApplicationId { get; set; }
/// <summary>
/// Gets or Sets RawSize
/// Gets or Sets CategoryId
/// </summary>
[DataMember(Name = "raw_size", EmitDefaultValue = false)]
public double RawSize { get; set; }
[DataMember(Name = "category_id", EmitDefaultValue = true)]
public string CategoryId { get; set; }
/// <summary>
/// Gets or Sets DownloadCount
@@ -123,6 +132,12 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "last_download", EmitDefaultValue = true)]
public DateTime? LastDownload { get; set; }
/// <summary>
/// Gets or Sets Releases
/// </summary>
[DataMember(Name = "releases", EmitDefaultValue = true)]
public List<PackageRelease> Releases { get; set; }
/// <summary>
/// Gets or Sets Created
/// </summary>
@@ -146,13 +161,13 @@ namespace Tribufu.Generated.Model
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Name: ").Append(Name).Append("\n");
sb.Append(" Description: ").Append(Description).Append("\n");
sb.Append(" ImageUrl: ").Append(ImageUrl).Append("\n");
sb.Append(" AuthorId: ").Append(AuthorId).Append("\n");
sb.Append(" VarVersion: ").Append(VarVersion).Append("\n");
sb.Append(" FileUrl: ").Append(FileUrl).Append("\n");
sb.Append(" RawSize: ").Append(RawSize).Append("\n");
sb.Append(" ImageUrl: ").Append(ImageUrl).Append("\n");
sb.Append(" ApplicationId: ").Append(ApplicationId).Append("\n");
sb.Append(" CategoryId: ").Append(CategoryId).Append("\n");
sb.Append(" DownloadCount: ").Append(DownloadCount).Append("\n");
sb.Append(" LastDownload: ").Append(LastDownload).Append("\n");
sb.Append(" Releases: ").Append(Releases).Append("\n");
sb.Append(" Created: ").Append(Created).Append("\n");
sb.Append(" Updated: ").Append(Updated).Append("\n");
sb.Append("}\n");

View File

@@ -0,0 +1,159 @@
/*
* Tribufu API
*
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Model
{
/// <summary>
/// PackageRelease
/// </summary>
[DataContract(Name = "PackageRelease")]
public partial class PackageRelease : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="PackageRelease" /> class.
/// </summary>
[JsonConstructorAttribute]
protected PackageRelease() { }
/// <summary>
/// Initializes a new instance of the <see cref="PackageRelease" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="varVersion">varVersion (required).</param>
/// <param name="packageId">packageId.</param>
/// <param name="notes">notes.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public PackageRelease(string id = default(string), string varVersion = default(string), string packageId = default(string), string notes = default(string), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
// to ensure "varVersion" is required (not null)
if (varVersion == null)
{
throw new ArgumentNullException("varVersion is a required property for PackageRelease and cannot be null");
}
this.VarVersion = varVersion;
this.Id = id;
this.PackageId = packageId;
this.Notes = notes;
this.Created = created;
this.Updated = updated;
}
/// <summary>
/// Gets or Sets Id
/// </summary>
[DataMember(Name = "id", EmitDefaultValue = false)]
public string Id { get; set; }
/// <summary>
/// Gets or Sets VarVersion
/// </summary>
[DataMember(Name = "version", IsRequired = true, EmitDefaultValue = true)]
public string VarVersion { get; set; }
/// <summary>
/// Gets or Sets PackageId
/// </summary>
[DataMember(Name = "package_id", EmitDefaultValue = false)]
public string PackageId { get; set; }
/// <summary>
/// Gets or Sets Notes
/// </summary>
[DataMember(Name = "notes", EmitDefaultValue = true)]
public string Notes { get; set; }
/// <summary>
/// Gets or Sets Files
/// </summary>
[DataMember(Name = "files", EmitDefaultValue = true)]
public List<StorageFile> Files { get; private set; }
/// <summary>
/// Returns false as Files should not be serialized given that it's read-only.
/// </summary>
/// <returns>false (boolean)</returns>
public bool ShouldSerializeFiles()
{
return false;
}
/// <summary>
/// Gets or Sets Created
/// </summary>
[DataMember(Name = "created", EmitDefaultValue = false)]
public DateTime Created { get; set; }
/// <summary>
/// Gets or Sets Updated
/// </summary>
[DataMember(Name = "updated", EmitDefaultValue = true)]
public DateTime? Updated { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class PackageRelease {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" VarVersion: ").Append(VarVersion).Append("\n");
sb.Append(" PackageId: ").Append(PackageId).Append("\n");
sb.Append(" Notes: ").Append(Notes).Append("\n");
sb.Append(" Files: ").Append(Files).Append("\n");
sb.Append(" Created: ").Append(Created).Append("\n");
sb.Append(" Updated: ").Append(Updated).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public virtual string ToJson()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
}
/// <summary>
/// To validate all properties of the instance
/// </summary>
/// <param name="validationContext">Validation context</param>
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
// VarVersion (string) maxLength
if (this.VarVersion != null && this.VarVersion.Length > 45)
{
yield return new ValidationResult("Invalid value for VarVersion, length must be less than 45.", new [] { "VarVersion" });
}
yield break;
}
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,31 +22,55 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Subscription
/// Product
/// </summary>
[DataContract(Name = "Subscription")]
public partial class Subscription : IValidatableObject
[DataContract(Name = "Product")]
public partial class Product : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="Subscription" /> class.
/// Gets or Sets Type
/// </summary>
[DataMember(Name = "type", EmitDefaultValue = false)]
public ProductType? Type { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="Product" /> class.
/// </summary>
[JsonConstructorAttribute]
protected Product() { }
/// <summary>
/// Initializes a new instance of the <see cref="Product" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="name">name.</param>
/// <param name="name">name (required).</param>
/// <param name="description">description.</param>
/// <param name="type">type.</param>
/// <param name="slug">slug.</param>
/// <param name="imageUrl">imageUrl.</param>
/// <param name="isPhysical">isPhysical.</param>
/// <param name="prices">prices.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public Subscription(string id = default(string), string name = default(string), string description = default(string), string imageUrl = default(string), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
public Product(string id = default(string), string name = default(string), string description = default(string), ProductType? type = default(ProductType?), string slug = default(string), string imageUrl = default(string), bool isPhysical = default(bool), List<ProductPrice> prices = default(List<ProductPrice>), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
this.Id = id;
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for Product and cannot be null");
}
this.Name = name;
this.Id = id;
this.Description = description;
this.Type = type;
this.Slug = slug;
this.ImageUrl = imageUrl;
this.IsPhysical = isPhysical;
this.Prices = prices;
this.Created = created;
this.Updated = updated;
}
@@ -60,7 +84,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", EmitDefaultValue = true)]
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
@@ -69,26 +93,30 @@ namespace Tribufu.Generated.Model
[DataMember(Name = "description", EmitDefaultValue = true)]
public string Description { get; set; }
/// <summary>
/// Gets or Sets Slug
/// </summary>
[DataMember(Name = "slug", EmitDefaultValue = true)]
public string Slug { get; set; }
/// <summary>
/// Gets or Sets ImageUrl
/// </summary>
[DataMember(Name = "image_url", EmitDefaultValue = true)]
public string ImageUrl { get; set; }
/// <summary>
/// Gets or Sets IsPhysical
/// </summary>
[DataMember(Name = "is_physical", EmitDefaultValue = true)]
public bool IsPhysical { get; set; }
/// <summary>
/// Gets or Sets Prices
/// </summary>
[DataMember(Name = "prices", EmitDefaultValue = true)]
public Dictionary<string, double> Prices { get; private set; }
public List<ProductPrice> Prices { get; set; }
/// <summary>
/// Returns false as Prices should not be serialized given that it's read-only.
/// </summary>
/// <returns>false (boolean)</returns>
public bool ShouldSerializePrices()
{
return false;
}
/// <summary>
/// Gets or Sets Created
/// </summary>
@@ -108,11 +136,14 @@ namespace Tribufu.Generated.Model
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class Subscription {\n");
sb.Append("class Product {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Name: ").Append(Name).Append("\n");
sb.Append(" Description: ").Append(Description).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
sb.Append(" Slug: ").Append(Slug).Append("\n");
sb.Append(" ImageUrl: ").Append(ImageUrl).Append("\n");
sb.Append(" IsPhysical: ").Append(IsPhysical).Append("\n");
sb.Append(" Prices: ").Append(Prices).Append("\n");
sb.Append(" Created: ").Append(Created).Append("\n");
sb.Append(" Updated: ").Append(Updated).Append("\n");
@@ -142,6 +173,12 @@ namespace Tribufu.Generated.Model
yield return new ValidationResult("Invalid value for Name, length must be less than 75.", new [] { "Name" });
}
// Slug (string) maxLength
if (this.Slug != null && this.Slug.Length > 75)
{
yield return new ValidationResult("Invalid value for Slug, length must be less than 75.", new [] { "Slug" });
}
// ImageUrl (string) maxLength
if (this.ImageUrl != null && this.ImageUrl.Length > 255)
{

View File

@@ -0,0 +1,117 @@
/*
* Tribufu API
*
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Model
{
/// <summary>
/// ProductPrice
/// </summary>
[DataContract(Name = "ProductPrice")]
public partial class ProductPrice : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="ProductPrice" /> class.
/// </summary>
[JsonConstructorAttribute]
protected ProductPrice() { }
/// <summary>
/// Initializes a new instance of the <see cref="ProductPrice" /> class.
/// </summary>
/// <param name="currency">currency (required).</param>
/// <param name="amount">amount.</param>
/// <param name="renewal">renewal.</param>
public ProductPrice(string currency = default(string), double amount = default(double), double? renewal = default(double?))
{
// to ensure "currency" is required (not null)
if (currency == null)
{
throw new ArgumentNullException("currency is a required property for ProductPrice and cannot be null");
}
this.Currency = currency;
this.Amount = amount;
this.Renewal = renewal;
}
/// <summary>
/// Gets or Sets Currency
/// </summary>
[DataMember(Name = "currency", IsRequired = true, EmitDefaultValue = true)]
public string Currency { get; set; }
/// <summary>
/// Gets or Sets Amount
/// </summary>
[DataMember(Name = "amount", EmitDefaultValue = false)]
public double Amount { get; set; }
/// <summary>
/// Gets or Sets Renewal
/// </summary>
[DataMember(Name = "renewal", EmitDefaultValue = true)]
public double? Renewal { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class ProductPrice {\n");
sb.Append(" Currency: ").Append(Currency).Append("\n");
sb.Append(" Amount: ").Append(Amount).Append("\n");
sb.Append(" Renewal: ").Append(Renewal).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public virtual string ToJson()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
}
/// <summary>
/// To validate all properties of the instance
/// </summary>
/// <param name="validationContext">Validation context</param>
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
// Currency (string) maxLength
if (this.Currency != null && this.Currency.Length > 3)
{
yield return new ValidationResult("Invalid value for Currency, length must be less than 3.", new [] { "Currency" });
}
yield break;
}
}
}

View File

@@ -0,0 +1,48 @@
/*
* Tribufu API
*
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Model
{
/// <summary>
/// Defines ProductType
/// </summary>
[JsonConverter(typeof(StringEnumConverter))]
public enum ProductType
{
/// <summary>
/// Enum Product for value: product
/// </summary>
[EnumMember(Value = "product")]
Product,
/// <summary>
/// Enum Subscription for value: subscription
/// </summary>
[EnumMember(Value = "subscription")]
Subscription
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Profile
@@ -53,7 +53,7 @@ namespace Tribufu.Generated.Model
/// <param name="viewCount">viewCount.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public Profile(string id = default(string), Guid uuid = default(Guid), string name = default(string), string displayName = default(string), bool verified = default(bool), int level = default(int), double experience = default(double), bool publicBirthday = default(bool), DateOnly? birthday = default(DateOnly?), double points = default(double), string location = default(string), string photoUrl = default(string), string bannerUrl = default(string), DateTime? lastOnline = default(DateTime?), string biography = default(string), int viewCount = default(int), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
public Profile(string id = default(string), Guid uuid = default(Guid), string name = default(string), string displayName = default(string), bool verified = default(bool), int level = default(int), double experience = default(double), bool publicBirthday = default(bool), DateTime? birthday = default(DateTime?), double points = default(double), string location = default(string), string photoUrl = default(string), string bannerUrl = default(string), DateTime? lastOnline = default(DateTime?), string biography = default(string), int viewCount = default(int), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
this.Id = id;
this.Uuid = uuid;
@@ -127,7 +127,8 @@ namespace Tribufu.Generated.Model
/// Gets or Sets Birthday
/// </summary>
[DataMember(Name = "birthday", EmitDefaultValue = true)]
public DateOnly? Birthday { get; set; }
[JsonConverter(typeof(OpenAPIDateConverter))]
public DateTime? Birthday { get; set; }
/// <summary>
/// Gets or Sets Points

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// ProfileGame

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// ProfileGroup

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Defines ResponseType

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// RevokeRequest
@@ -36,15 +36,25 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets TokenTypeHint
/// </summary>
[DataMember(Name = "token_type_hint", EmitDefaultValue = false)]
public TokenHintType? TokenTypeHint { get; set; }
[DataMember(Name = "token_type_hint", IsRequired = true, EmitDefaultValue = true)]
public TokenHintType TokenTypeHint { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="RevokeRequest" /> class.
/// </summary>
/// <param name="token">token.</param>
/// <param name="tokenTypeHint">tokenTypeHint.</param>
public RevokeRequest(string token = default(string), TokenHintType? tokenTypeHint = default(TokenHintType?))
[JsonConstructorAttribute]
protected RevokeRequest() { }
/// <summary>
/// Initializes a new instance of the <see cref="RevokeRequest" /> class.
/// </summary>
/// <param name="token">token (required).</param>
/// <param name="tokenTypeHint">tokenTypeHint (required).</param>
public RevokeRequest(string token = default(string), TokenHintType tokenTypeHint = default(TokenHintType))
{
// to ensure "token" is required (not null)
if (token == null)
{
throw new ArgumentNullException("token is a required property for RevokeRequest and cannot be null");
}
this.Token = token;
this.TokenTypeHint = tokenTypeHint;
}
@@ -52,7 +62,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Token
/// </summary>
[DataMember(Name = "token", EmitDefaultValue = true)]
[DataMember(Name = "token", IsRequired = true, EmitDefaultValue = true)]
public string Token { get; set; }
/// <summary>

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,32 +22,42 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// SearchRequest
/// Search
/// </summary>
[DataContract(Name = "SearchRequest")]
public partial class SearchRequest : IValidatableObject
[DataContract(Name = "Search")]
public partial class Search : IValidatableObject
{
/// <summary>
/// Gets or Sets Type
/// </summary>
[DataMember(Name = "type", EmitDefaultValue = false)]
public SearchType? Type { get; set; }
[DataMember(Name = "type", IsRequired = true, EmitDefaultValue = true)]
public SearchType Type { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="SearchRequest" /> class.
/// Initializes a new instance of the <see cref="Search" /> class.
/// </summary>
/// <param name="type">type.</param>
/// <param name="query">query.</param>
[JsonConstructorAttribute]
protected Search() { }
/// <summary>
/// Initializes a new instance of the <see cref="Search" /> class.
/// </summary>
/// <param name="type">type (required).</param>
/// <param name="query">query (required).</param>
/// <param name="page">page.</param>
/// <param name="gameId">gameId.</param>
public SearchRequest(SearchType? type = default(SearchType?), string query = default(string), int? page = default(int?), string gameId = default(string))
public Search(SearchType type = default(SearchType), string query = default(string), int? page = default(int?), string gameId = default(string))
{
this.Type = type;
// to ensure "query" is required (not null)
if (query == null)
{
throw new ArgumentNullException("query is a required property for Search and cannot be null");
}
this.Query = query;
this.Page = page;
this.GameId = gameId;
@@ -56,7 +66,7 @@ namespace Tribufu.Generated.Model
/// <summary>
/// Gets or Sets Query
/// </summary>
[DataMember(Name = "query", EmitDefaultValue = true)]
[DataMember(Name = "query", IsRequired = true, EmitDefaultValue = true)]
public string Query { get; set; }
/// <summary>
@@ -78,7 +88,7 @@ namespace Tribufu.Generated.Model
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class SearchRequest {\n");
sb.Append("class Search {\n");
sb.Append(" Type: ").Append(Type).Append("\n");
sb.Append(" Query: ").Append(Query).Append("\n");
sb.Append(" Page: ").Append(Page).Append("\n");

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// Defines SearchType
@@ -45,16 +45,16 @@ namespace Tribufu.Generated.Model
Group,
/// <summary>
/// Enum Server for value: server
/// Enum GameServer for value: game_server
/// </summary>
[EnumMember(Value = "server")]
Server,
[EnumMember(Value = "game_server")]
GameServer,
/// <summary>
/// Enum Cluster for value: cluster
/// Enum GameServerCluster for value: game_server_cluster
/// </summary>
[EnumMember(Value = "cluster")]
Cluster
[EnumMember(Value = "game_server_cluster")]
GameServerCluster
}
}

View File

@@ -1,9 +1,9 @@
/*
* Tribufu API
*
* REST API to access Tribufu services.
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.1.0
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Generated.Model
namespace Tribufu.Model
{
/// <summary>
/// ServerMetrics

View File

@@ -0,0 +1,205 @@
/*
* Tribufu API
*
* API to access Tribufu services.
*
* The version of the OpenAPI document: 1.3.0
* Contact: contact@tribufu.com
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.IO;
using System.Runtime.Serialization;
using System.Text;
using System.Text.RegularExpressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
namespace Tribufu.Model
{
/// <summary>
/// StorageFile
/// </summary>
[DataContract(Name = "StorageFile")]
public partial class StorageFile : IValidatableObject
{
/// <summary>
/// Initializes a new instance of the <see cref="StorageFile" /> class.
/// </summary>
[JsonConstructorAttribute]
protected StorageFile() { }
/// <summary>
/// Initializes a new instance of the <see cref="StorageFile" /> class.
/// </summary>
/// <param name="id">id.</param>
/// <param name="name">name (required).</param>
/// <param name="contentType">contentType (required).</param>
/// <param name="url">url (required).</param>
/// <param name="size">size.</param>
/// <param name="hash">hash.</param>
/// <param name="etag">etag.</param>
/// <param name="created">created.</param>
/// <param name="updated">updated.</param>
public StorageFile(string id = default(string), string name = default(string), string contentType = default(string), string url = default(string), long size = default(long), string hash = default(string), string etag = default(string), DateTime created = default(DateTime), DateTime? updated = default(DateTime?))
{
// to ensure "name" is required (not null)
if (name == null)
{
throw new ArgumentNullException("name is a required property for StorageFile and cannot be null");
}
this.Name = name;
// to ensure "contentType" is required (not null)
if (contentType == null)
{
throw new ArgumentNullException("contentType is a required property for StorageFile and cannot be null");
}
this.ContentType = contentType;
// to ensure "url" is required (not null)
if (url == null)
{
throw new ArgumentNullException("url is a required property for StorageFile and cannot be null");
}
this.Url = url;
this.Id = id;
this.Size = size;
this.Hash = hash;
this.Etag = etag;
this.Created = created;
this.Updated = updated;
}
/// <summary>
/// Gets or Sets Id
/// </summary>
[DataMember(Name = "id", EmitDefaultValue = false)]
public string Id { get; set; }
/// <summary>
/// Gets or Sets Name
/// </summary>
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
public string Name { get; set; }
/// <summary>
/// Gets or Sets ContentType
/// </summary>
[DataMember(Name = "content_type", IsRequired = true, EmitDefaultValue = true)]
public string ContentType { get; set; }
/// <summary>
/// Gets or Sets Url
/// </summary>
[DataMember(Name = "url", IsRequired = true, EmitDefaultValue = true)]
public string Url { get; set; }
/// <summary>
/// Gets or Sets Size
/// </summary>
[DataMember(Name = "size", EmitDefaultValue = false)]
public long Size { get; set; }
/// <summary>
/// Gets or Sets Hash
/// </summary>
[DataMember(Name = "hash", EmitDefaultValue = true)]
public string Hash { get; set; }
/// <summary>
/// Gets or Sets Etag
/// </summary>
[DataMember(Name = "etag", EmitDefaultValue = true)]
public string Etag { get; set; }
/// <summary>
/// Gets or Sets Created
/// </summary>
[DataMember(Name = "created", EmitDefaultValue = false)]
public DateTime Created { get; set; }
/// <summary>
/// Gets or Sets Updated
/// </summary>
[DataMember(Name = "updated", EmitDefaultValue = true)]
public DateTime? Updated { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("class StorageFile {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Name: ").Append(Name).Append("\n");
sb.Append(" ContentType: ").Append(ContentType).Append("\n");
sb.Append(" Url: ").Append(Url).Append("\n");
sb.Append(" Size: ").Append(Size).Append("\n");
sb.Append(" Hash: ").Append(Hash).Append("\n");
sb.Append(" Etag: ").Append(Etag).Append("\n");
sb.Append(" Created: ").Append(Created).Append("\n");
sb.Append(" Updated: ").Append(Updated).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public virtual string ToJson()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
}
/// <summary>
/// To validate all properties of the instance
/// </summary>
/// <param name="validationContext">Validation context</param>
/// <returns>Validation Result</returns>
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{
// Name (string) maxLength
if (this.Name != null && this.Name.Length > 45)
{
yield return new ValidationResult("Invalid value for Name, length must be less than 45.", new [] { "Name" });
}
// ContentType (string) maxLength
if (this.ContentType != null && this.ContentType.Length > 45)
{
yield return new ValidationResult("Invalid value for ContentType, length must be less than 45.", new [] { "ContentType" });
}
// Url (string) maxLength
if (this.Url != null && this.Url.Length > 255)
{
yield return new ValidationResult("Invalid value for Url, length must be less than 255.", new [] { "Url" });
}
// Hash (string) maxLength
if (this.Hash != null && this.Hash.Length > 64)
{
yield return new ValidationResult("Invalid value for Hash, length must be less than 64.", new [] { "Hash" });
}
// Etag (string) maxLength
if (this.Etag != null && this.Etag.Length > 32)
{
yield return new ValidationResult("Invalid value for Etag, length must be less than 32.", new [] { "Etag" });
}
yield break;
}
}
}

Some files were not shown because too many files have changed in this diff Show More