mirror of
https://github.com/tribufu/tribufu-dotnet
synced 2026-02-04 10:46:34 +00:00
Compare commits
41 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 87334bb28c | |||
| d26c3bd11a | |||
| e3c42a9911 | |||
| 93301110b7 | |||
| 44dc36430a | |||
| 765b6319bb | |||
| 1c570ce666 | |||
| 6238191512 | |||
| b6c7166b8e | |||
| 92a7bb3252 | |||
| 32a2a20fb1 | |||
| 3edec858a8 | |||
| 936f7f0f5e | |||
| 0a88bf2ac6 | |||
| 817d89a57a | |||
| 2b6270264b | |||
| e8d842bf34 | |||
| 672fe601f7 | |||
| eda5b1894b | |||
| e4986367e7 | |||
| 58f300e39b | |||
| 479f719816 | |||
| eb9e939fc8 | |||
| c8bb2d95b5 | |||
| e63812204d | |||
| 4b694a4031 | |||
| 5fdd52265b | |||
| f45e827ba4 | |||
| ffc4079881 | |||
| 374a634949 | |||
| 13c5d6a71c | |||
| f6c296d9b6 | |||
| 5b2588b47f | |||
| 6ebfde013a | |||
| 9ff743097b | |||
| 42e14fc07b | |||
| ed2dfa2b8f | |||
| 1815ca6bcd | |||
| 8994fc13d6 | |||
| 549e7bcbe3 | |||
| aede8c7ac2 |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -1,7 +1,9 @@
|
|||||||
.vs/
|
.vs/
|
||||||
bin/
|
bin/
|
||||||
obj/
|
obj/
|
||||||
|
releases/*
|
||||||
|
|
||||||
|
!releases/.gitkeep
|
||||||
.DS_Store
|
.DS_Store
|
||||||
.env
|
.env
|
||||||
*.filters
|
*.filters
|
||||||
|
|||||||
@@ -1,60 +1,66 @@
|
|||||||
src/Tribufu.Generated/Api/TribufuGeneratedApi.cs
|
src/Tribufu/Api/TribufuGeneratedApi.cs
|
||||||
src/Tribufu.Generated/Client/ApiClient.cs
|
src/Tribufu/Client/ApiClient.cs
|
||||||
src/Tribufu.Generated/Client/ApiException.cs
|
src/Tribufu/Client/ApiException.cs
|
||||||
src/Tribufu.Generated/Client/ApiResponse.cs
|
src/Tribufu/Client/ApiResponse.cs
|
||||||
src/Tribufu.Generated/Client/ClientUtils.cs
|
src/Tribufu/Client/ClientUtils.cs
|
||||||
src/Tribufu.Generated/Client/Configuration.cs
|
src/Tribufu/Client/Configuration.cs
|
||||||
src/Tribufu.Generated/Client/ExceptionFactory.cs
|
src/Tribufu/Client/ExceptionFactory.cs
|
||||||
src/Tribufu.Generated/Client/GlobalConfiguration.cs
|
src/Tribufu/Client/GlobalConfiguration.cs
|
||||||
src/Tribufu.Generated/Client/HttpMethod.cs
|
src/Tribufu/Client/HttpMethod.cs
|
||||||
src/Tribufu.Generated/Client/IApiAccessor.cs
|
src/Tribufu/Client/IApiAccessor.cs
|
||||||
src/Tribufu.Generated/Client/IAsynchronousClient.cs
|
src/Tribufu/Client/IAsynchronousClient.cs
|
||||||
src/Tribufu.Generated/Client/IReadableConfiguration.cs
|
src/Tribufu/Client/IReadableConfiguration.cs
|
||||||
src/Tribufu.Generated/Client/ISynchronousClient.cs
|
src/Tribufu/Client/ISynchronousClient.cs
|
||||||
src/Tribufu.Generated/Client/Multimap.cs
|
src/Tribufu/Client/Multimap.cs
|
||||||
src/Tribufu.Generated/Client/OpenAPIDateConverter.cs
|
src/Tribufu/Client/OpenAPIDateConverter.cs
|
||||||
src/Tribufu.Generated/Client/RequestOptions.cs
|
src/Tribufu/Client/RequestOptions.cs
|
||||||
src/Tribufu.Generated/Client/RetryConfiguration.cs
|
src/Tribufu/Client/RetryConfiguration.cs
|
||||||
src/Tribufu.Generated/Model/AbstractOpenAPISchema.cs
|
src/Tribufu/Model/AbstractOpenAPISchema.cs
|
||||||
src/Tribufu.Generated/Model/Account.cs
|
src/Tribufu/Model/Account.cs
|
||||||
src/Tribufu.Generated/Model/Application.cs
|
src/Tribufu/Model/Application.cs
|
||||||
src/Tribufu.Generated/Model/ApplicationType.cs
|
src/Tribufu/Model/ApplicationType.cs
|
||||||
src/Tribufu.Generated/Model/AuthorizeRequest.cs
|
src/Tribufu/Model/AuthorizeRequest.cs
|
||||||
src/Tribufu.Generated/Model/CodeChallengeMethod.cs
|
src/Tribufu/Model/ClientInfo.cs
|
||||||
src/Tribufu.Generated/Model/CryptoViewModel.cs
|
src/Tribufu/Model/ClientType.cs
|
||||||
src/Tribufu.Generated/Model/Game.cs
|
src/Tribufu/Model/CodeChallengeMethod.cs
|
||||||
src/Tribufu.Generated/Model/GameServer.cs
|
src/Tribufu/Model/CodeResponse.cs
|
||||||
src/Tribufu.Generated/Model/GameServerCluster.cs
|
src/Tribufu/Model/CreateUser.cs
|
||||||
src/Tribufu.Generated/Model/GrantType.cs
|
src/Tribufu/Model/CryptoViewModel.cs
|
||||||
src/Tribufu.Generated/Model/Group.cs
|
src/Tribufu/Model/File.cs
|
||||||
src/Tribufu.Generated/Model/GroupGame.cs
|
src/Tribufu/Model/Game.cs
|
||||||
src/Tribufu.Generated/Model/GroupMember.cs
|
src/Tribufu/Model/GameServer.cs
|
||||||
src/Tribufu.Generated/Model/GroupRank.cs
|
src/Tribufu/Model/GameServerCluster.cs
|
||||||
src/Tribufu.Generated/Model/HashViewModel.cs
|
src/Tribufu/Model/GameServerQuery.cs
|
||||||
src/Tribufu.Generated/Model/IntrospectRequest.cs
|
src/Tribufu/Model/GameServerStatus.cs
|
||||||
src/Tribufu.Generated/Model/IpAddress.cs
|
src/Tribufu/Model/GrantType.cs
|
||||||
src/Tribufu.Generated/Model/LeaderboardItem.cs
|
src/Tribufu/Model/Group.cs
|
||||||
src/Tribufu.Generated/Model/LeaderboardOrder.cs
|
src/Tribufu/Model/GroupGame.cs
|
||||||
src/Tribufu.Generated/Model/LoginProvider.cs
|
src/Tribufu/Model/GroupMember.cs
|
||||||
src/Tribufu.Generated/Model/LoginRequest.cs
|
src/Tribufu/Model/GroupRank.cs
|
||||||
src/Tribufu.Generated/Model/LoginResponse.cs
|
src/Tribufu/Model/HashViewModel.cs
|
||||||
src/Tribufu.Generated/Model/Package.cs
|
src/Tribufu/Model/IntrospectRequest.cs
|
||||||
src/Tribufu.Generated/Model/Profile.cs
|
src/Tribufu/Model/IntrospectResponse.cs
|
||||||
src/Tribufu.Generated/Model/ProfileGame.cs
|
src/Tribufu/Model/IpAddress.cs
|
||||||
src/Tribufu.Generated/Model/ProfileGroup.cs
|
src/Tribufu/Model/LeaderboardItem.cs
|
||||||
src/Tribufu.Generated/Model/RefreshRequest.cs
|
src/Tribufu/Model/LeaderboardOrder.cs
|
||||||
src/Tribufu.Generated/Model/RegisterRequest.cs
|
src/Tribufu/Model/LoginProvider.cs
|
||||||
src/Tribufu.Generated/Model/ResponseType.cs
|
src/Tribufu/Model/ModelClient.cs
|
||||||
src/Tribufu.Generated/Model/RevokeRequest.cs
|
src/Tribufu/Model/Package.cs
|
||||||
src/Tribufu.Generated/Model/SearchRequest.cs
|
src/Tribufu/Model/PackageRelease.cs
|
||||||
src/Tribufu.Generated/Model/SearchType.cs
|
src/Tribufu/Model/Profile.cs
|
||||||
src/Tribufu.Generated/Model/ServerMetrics.cs
|
src/Tribufu/Model/ProfileGame.cs
|
||||||
src/Tribufu.Generated/Model/ServerStatus.cs
|
src/Tribufu/Model/ProfileGroup.cs
|
||||||
src/Tribufu.Generated/Model/Subscription.cs
|
src/Tribufu/Model/ResponseType.cs
|
||||||
src/Tribufu.Generated/Model/TokenHintType.cs
|
src/Tribufu/Model/RevokeRequest.cs
|
||||||
src/Tribufu.Generated/Model/TokenRequest.cs
|
src/Tribufu/Model/Search.cs
|
||||||
src/Tribufu.Generated/Model/TokenResponse.cs
|
src/Tribufu/Model/SearchType.cs
|
||||||
src/Tribufu.Generated/Model/TokenType.cs
|
src/Tribufu/Model/ServerMetrics.cs
|
||||||
src/Tribufu.Generated/Model/UpdateProfile.cs
|
src/Tribufu/Model/Subscription.cs
|
||||||
src/Tribufu.Generated/Model/UserInfo.cs
|
src/Tribufu/Model/SubscriptionPrice.cs
|
||||||
src/Tribufu.Generated/Model/UserType.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
|
||||||
|
|||||||
@@ -5,8 +5,8 @@
|
|||||||
<Copyright>Copyright (c) Tribufu. All Rights Reserved.</Copyright>
|
<Copyright>Copyright (c) Tribufu. All Rights Reserved.</Copyright>
|
||||||
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
||||||
<RepositoryType>git</RepositoryType>
|
<RepositoryType>git</RepositoryType>
|
||||||
<RepositoryUrl>https://github.com/tribufu/sdk-dotnet</RepositoryUrl>
|
<RepositoryUrl>https://github.com/tribufu/tribufu-dotnet</RepositoryUrl>
|
||||||
<Version>1.1.0</Version>
|
<Version>1.2.1</Version>
|
||||||
<AssemblyVersion>$(Version).0</AssemblyVersion>
|
<AssemblyVersion>$(Version).0</AssemblyVersion>
|
||||||
<NoWarn>$(NoWarn);0618;1591;1998;2002;8767</NoWarn>
|
<NoWarn>$(NoWarn);0618;1591;1998;2002;8767</NoWarn>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|||||||
@@ -3,11 +3,22 @@
|
|||||||
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
|
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<PackageVersion Include="CppAst.CodeGen" Version="0.4.1" />
|
||||||
<PackageVersion Include="dotenv.net" Version="3.2.0" />
|
<PackageVersion Include="dotenv.net" Version="3.2.0" />
|
||||||
|
<PackageVersion Include="IdGen" Version="3.0.7" />
|
||||||
<PackageVersion Include="JsonSubTypes" Version="2.0.1" />
|
<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" />
|
||||||
|
<PackageVersion Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
|
||||||
|
<PackageVersion Include="Microsoft.Extensions.Configuration.Ini" Version="8.0.0" />
|
||||||
|
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="8.0.0" />
|
||||||
|
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
|
||||||
|
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="8.0.1" />
|
||||||
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
|
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
|
||||||
<PackageVersion Include="Polly" Version="8.1.0" />
|
<PackageVersion Include="Polly" Version="8.1.0" />
|
||||||
<PackageVersion Include="RestSharp" Version="112.1.0" />
|
<PackageVersion Include="RestSharp" Version="112.1.0" />
|
||||||
<PackageVersion Include="System.ComponentModel.Annotations" Version="5.0.0" />
|
<PackageVersion Include="System.ComponentModel.Annotations" Version="5.0.0" />
|
||||||
|
<PackageVersion Include="Tomlyn.Extensions.Configuration" Version="1.0.6" />
|
||||||
|
<PackageVersion Include="Tomlyn" Version="0.17.0" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
288
README.md
288
README.md
@@ -1,279 +1,23 @@
|
|||||||
# Tribufu - the C# library for the Tribufu API
|
# Tribufu .NET
|
||||||
|
|
||||||
REST API to access Tribufu services.
|
.NET SDK to access Tribufu APIs and services.
|
||||||
|
|
||||||
This C# SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
[![nuget][nuget-badge]][nuget-url]
|
||||||
|
[![MIT License][mit-badge]][mit-url]
|
||||||
|
[![Discord Chat][discord-badge]][discord-url]
|
||||||
|
|
||||||
- API version: 1.1.0
|
[nuget-badge]: https://img.shields.io/nuget/v/Tribufu.svg
|
||||||
- SDK version: 1.0.0
|
[nuget-url]: https://www.nuget.org/packages/Tribufu
|
||||||
- Generator version: 7.8.0
|
[mit-badge]: https://img.shields.io/badge/license-MIT-blue.svg
|
||||||
- Build package: org.openapitools.codegen.languages.CSharpClientCodegen
|
[mit-url]: https://github.com/tribufu/tribufu-dotnet/blob/main/LICENSE.txt
|
||||||
For more information, please visit [https://www.tribufu.com/contact](https://www.tribufu.com/contact)
|
[discord-badge]: https://img.shields.io/discord/276504514616623104.svg?logo=discord&style=flat-square
|
||||||
|
[discord-url]: https://www.tribufu.com/discord
|
||||||
|
|
||||||
<a id="frameworks-supported"></a>
|
[Website](https://www.tribufu.com) |
|
||||||
## Frameworks supported
|
[Discord](https://www.tribufu.com/discord)
|
||||||
|
|
||||||
<a id="dependencies"></a>
|
## License
|
||||||
## Dependencies
|
|
||||||
|
|
||||||
- [Json.NET](https://www.nuget.org/packages/Newtonsoft.Json/) - 13.0.2 or later
|
This project is licensed under the [MIT License].
|
||||||
- [JsonSubTypes](https://www.nuget.org/packages/JsonSubTypes/) - 1.8.0 or later
|
|
||||||
- [System.ComponentModel.Annotations](https://www.nuget.org/packages/System.ComponentModel.Annotations) - 5.0.0 or later
|
|
||||||
|
|
||||||
The DLLs included in the package may not be the latest version. We recommend using [NuGet](https://docs.nuget.org/consume/installing-nuget) to obtain the latest version of the packages:
|
|
||||||
```
|
|
||||||
Install-Package Newtonsoft.Json
|
|
||||||
Install-Package JsonSubTypes
|
|
||||||
Install-Package System.ComponentModel.Annotations
|
|
||||||
```
|
|
||||||
<a id="installation"></a>
|
|
||||||
## Installation
|
|
||||||
Run the following command to generate the DLL
|
|
||||||
- [Mac/Linux] `/bin/sh build.sh`
|
|
||||||
- [Windows] `build.bat`
|
|
||||||
|
|
||||||
Then include the DLL (under the `bin` folder) in the C# project, and use the namespaces:
|
|
||||||
```csharp
|
|
||||||
using Tribufu.Api;
|
|
||||||
using Tribufu.Client;
|
|
||||||
using Tribufu.Model;
|
|
||||||
```
|
|
||||||
<a id="packaging"></a>
|
|
||||||
## Packaging
|
|
||||||
|
|
||||||
A `.nuspec` is included with the project. You can follow the Nuget quickstart to [create](https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package#create-the-package) and [publish](https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package#publish-the-package) packages.
|
|
||||||
|
|
||||||
This `.nuspec` uses placeholders from the `.csproj`, so build the `.csproj` directly:
|
|
||||||
|
|
||||||
```
|
|
||||||
nuget pack -Build -OutputDirectory out Tribufu.csproj
|
|
||||||
```
|
|
||||||
|
|
||||||
Then, publish to a [local feed](https://docs.microsoft.com/en-us/nuget/hosting-packages/local-feeds) or [other host](https://docs.microsoft.com/en-us/nuget/hosting-packages/overview) and consume the new package via Nuget as usual.
|
|
||||||
|
|
||||||
<a id="usage"></a>
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
To use the API client with a HTTP proxy, setup a `System.Net.WebProxy`
|
|
||||||
```csharp
|
|
||||||
Configuration c = new Configuration();
|
|
||||||
System.Net.WebProxy webProxy = new System.Net.WebProxy("http://myProxyUrl:80/");
|
|
||||||
webProxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
|
|
||||||
c.Proxy = webProxy;
|
|
||||||
```
|
|
||||||
|
|
||||||
### Connections
|
|
||||||
Each ApiClass (properly the ApiClient inside it) will create an instance of HttpClient. It will use that for the entire lifecycle and dispose it when called the Dispose method.
|
|
||||||
|
|
||||||
To better manager the connections it's a common practice to reuse the HttpClient and HttpClientHandler (see [here](https://docs.microsoft.com/en-us/dotnet/architecture/microservices/implement-resilient-applications/use-httpclientfactory-to-implement-resilient-http-requests#issues-with-the-original-httpclient-class-available-in-net) for details). To use your own HttpClient instance just pass it to the ApiClass constructor.
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
HttpClientHandler yourHandler = new HttpClientHandler();
|
|
||||||
HttpClient yourHttpClient = new HttpClient(yourHandler);
|
|
||||||
var api = new YourApiClass(yourHttpClient, yourHandler);
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to use an HttpClient and don't have access to the handler, for example in a DI context in Asp.net Core when using IHttpClientFactory.
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
HttpClient yourHttpClient = new HttpClient();
|
|
||||||
var api = new YourApiClass(yourHttpClient);
|
|
||||||
```
|
|
||||||
You'll loose some configuration settings, the features affected are: Setting and Retrieving Cookies, Client Certificates, Proxy settings. You need to either manually handle those in your setup of the HttpClient or they won't be available.
|
|
||||||
|
|
||||||
Here an example of DI setup in a sample web project:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
services.AddHttpClient<YourApiClass>(httpClient =>
|
|
||||||
new PetApi(httpClient));
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
<a id="getting-started"></a>
|
|
||||||
## Getting Started
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Diagnostics;
|
|
||||||
using System.Net.Http;
|
|
||||||
using Tribufu.Api;
|
|
||||||
using Tribufu.Client;
|
|
||||||
using Tribufu.Model;
|
|
||||||
|
|
||||||
namespace Example
|
|
||||||
{
|
|
||||||
public class Example
|
|
||||||
{
|
|
||||||
public static void Main()
|
|
||||||
{
|
|
||||||
|
|
||||||
Configuration config = new Configuration();
|
|
||||||
config.BasePath = "http://localhost";
|
|
||||||
// Configure API key authorization: ApiKey
|
|
||||||
config.ApiKey.Add("Authorization", "YOUR_API_KEY");
|
|
||||||
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
|
|
||||||
// config.ApiKeyPrefix.Add("Authorization", "Bearer");
|
|
||||||
|
|
||||||
// create instances of HttpClient, HttpClientHandler to be reused later with different Api classes
|
|
||||||
HttpClient httpClient = new HttpClient();
|
|
||||||
HttpClientHandler httpClientHandler = new HttpClientHandler();
|
|
||||||
var apiInstance = new TribufuApi(httpClient, config, httpClientHandler);
|
|
||||||
var authorizeRequest = new AuthorizeRequest?(); // AuthorizeRequest? | (optional)
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
// Authorize the client to access the user information.
|
|
||||||
apiInstance.Authorize(authorizeRequest);
|
|
||||||
}
|
|
||||||
catch (ApiException e)
|
|
||||||
{
|
|
||||||
Debug.Print("Exception when calling TribufuApi.Authorize: " + e.Message );
|
|
||||||
Debug.Print("Status Code: "+ e.ErrorCode);
|
|
||||||
Debug.Print(e.StackTrace);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
<a id="documentation-for-api-endpoints"></a>
|
|
||||||
## Documentation for API Endpoints
|
|
||||||
|
|
||||||
All URIs are relative to *http://localhost*
|
|
||||||
|
|
||||||
Class | Method | HTTP request | Description
|
|
||||||
------------ | ------------- | ------------- | -------------
|
|
||||||
*TribufuApi* | [**Authorize**](docs/TribufuApi.md#authorize) | **POST** /v1/oauth2/authorize | Authorize the client to access the user information.
|
|
||||||
*TribufuApi* | [**ChangeEmail**](docs/TribufuApi.md#changeemail) | **PUT** /v1/users/{id}/email | Change the email of a user.
|
|
||||||
*TribufuApi* | [**ChangePassword**](docs/TribufuApi.md#changepassword) | **PUT** /v1/users/{id}/password | Change the password of a user.
|
|
||||||
*TribufuApi* | [**ClaimGameServer**](docs/TribufuApi.md#claimgameserver) | **PUT** /v1/servers/{id}/claim | Claim a game server.
|
|
||||||
*TribufuApi* | [**ConvertBase64**](docs/TribufuApi.md#convertbase64) | **POST** /v1/utils/base64 | Convert a string to base64 or vice versa.
|
|
||||||
*TribufuApi* | [**CreateGameServer**](docs/TribufuApi.md#creategameserver) | **POST** /v1/servers | Create a new game server.
|
|
||||||
*TribufuApi* | [**CreateGameServerCluster**](docs/TribufuApi.md#creategameservercluster) | **POST** /v1/clusters | Create a new game server cluster.
|
|
||||||
*TribufuApi* | [**CreateGroup**](docs/TribufuApi.md#creategroup) | **POST** /v1/groups | Create a new group.
|
|
||||||
*TribufuApi* | [**CreateToken**](docs/TribufuApi.md#createtoken) | **POST** /v1/oauth2/token | Create a new token with grant type.
|
|
||||||
*TribufuApi* | [**DeleteGameServer**](docs/TribufuApi.md#deletegameserver) | **DELETE** /v1/servers/{id} | Delete a game server.
|
|
||||||
*TribufuApi* | [**DeleteGameServerCluster**](docs/TribufuApi.md#deletegameservercluster) | **DELETE** /v1/clusters/{id} | Delete a game server cluster.
|
|
||||||
*TribufuApi* | [**DeleteGroup**](docs/TribufuApi.md#deletegroup) | **DELETE** /v1/groups/{id} | Delete a group.
|
|
||||||
*TribufuApi* | [**GenerateFlakeId**](docs/TribufuApi.md#generateflakeid) | **GET** /v1/utils/flake | Generate one or more flake ids.
|
|
||||||
*TribufuApi* | [**GenerateFlakeIdFromTimestamp**](docs/TribufuApi.md#generateflakeidfromtimestamp) | **GET** /v1/utils/flake/{timestamp} | Generate one or more flake ids from a timestamp.
|
|
||||||
*TribufuApi* | [**GeneratePassword**](docs/TribufuApi.md#generatepassword) | **GET** /v1/utils/password | Generate a random password.
|
|
||||||
*TribufuApi* | [**GenerateUuid**](docs/TribufuApi.md#generateuuid) | **GET** /v1/utils/uuid | Generate one or more uuids with a specific version.
|
|
||||||
*TribufuApi* | [**GetClientInfo**](docs/TribufuApi.md#getclientinfo) | **GET** /v1/oauth2/clientinfo | Get current client information.
|
|
||||||
*TribufuApi* | [**GetCurrentIpAddress**](docs/TribufuApi.md#getcurrentipaddress) | **GET** /v1/geoip | Get current ip address location.
|
|
||||||
*TribufuApi* | [**GetGameById**](docs/TribufuApi.md#getgamebyid) | **GET** /v1/games/{id} | Get a game by id.
|
|
||||||
*TribufuApi* | [**GetGameClustersByGameId**](docs/TribufuApi.md#getgameclustersbygameid) | **GET** /v1/games/{id}/clusters | Get a list of game server clusters of a game.
|
|
||||||
*TribufuApi* | [**GetGameItems**](docs/TribufuApi.md#getgameitems) | **GET** /v1/games/{id}/items | Get a list of game items.
|
|
||||||
*TribufuApi* | [**GetGameServerByAddressAndQueryPort**](docs/TribufuApi.md#getgameserverbyaddressandqueryport) | **GET** /v1/servers/address/{address}:{port} | Get a game server by address and query port.
|
|
||||||
*TribufuApi* | [**GetGameServerById**](docs/TribufuApi.md#getgameserverbyid) | **GET** /v1/servers/{id} | Get a game server by id.
|
|
||||||
*TribufuApi* | [**GetGameServerClusterById**](docs/TribufuApi.md#getgameserverclusterbyid) | **GET** /v1/clusters/{id} | Get a game server cluster by id.
|
|
||||||
*TribufuApi* | [**GetGameServerClusters**](docs/TribufuApi.md#getgameserverclusters) | **GET** /v1/clusters | Get a list of game server clusters.
|
|
||||||
*TribufuApi* | [**GetGameServers**](docs/TribufuApi.md#getgameservers) | **GET** /v1/servers | Get a list of game servers.
|
|
||||||
*TribufuApi* | [**GetGameServersByCountry**](docs/TribufuApi.md#getgameserversbycountry) | **GET** /v1/servers/country/{country} | Get a list of game servers from a country.
|
|
||||||
*TribufuApi* | [**GetGameServersByGameId**](docs/TribufuApi.md#getgameserversbygameid) | **GET** /v1/games/{id}/servers | Get a list of game servers of a game.
|
|
||||||
*TribufuApi* | [**GetGameServersCountries**](docs/TribufuApi.md#getgameserverscountries) | **GET** /v1/servers/countries | Get a list of countries with the number of game servers.
|
|
||||||
*TribufuApi* | [**GetGameServersMetrics**](docs/TribufuApi.md#getgameserversmetrics) | **GET** /v1/servers/metrics | Get metrics about the tracked game servers.
|
|
||||||
*TribufuApi* | [**GetGames**](docs/TribufuApi.md#getgames) | **GET** /v1/games | Get a list of games.
|
|
||||||
*TribufuApi* | [**GetGroupById**](docs/TribufuApi.md#getgroupbyid) | **GET** /v1/groups/{id} | Get a group by id.
|
|
||||||
*TribufuApi* | [**GetGroupByTag**](docs/TribufuApi.md#getgroupbytag) | **GET** /v1/groups/tag/{tag} | Get a group by tag.
|
|
||||||
*TribufuApi* | [**GetGroupByUuid**](docs/TribufuApi.md#getgroupbyuuid) | **GET** /v1/groups/uuid/{uuid} | Get a group by uuid.
|
|
||||||
*TribufuApi* | [**GetGroupGames**](docs/TribufuApi.md#getgroupgames) | **GET** /v1/groups/{id}/games | Get a list of games of a group.
|
|
||||||
*TribufuApi* | [**GetGroupMembers**](docs/TribufuApi.md#getgroupmembers) | **GET** /v1/groups/{id}/members | Get a list of members in a group.
|
|
||||||
*TribufuApi* | [**GetGroups**](docs/TribufuApi.md#getgroups) | **GET** /v1/groups | Get a list of groups.
|
|
||||||
*TribufuApi* | [**GetIpAddress**](docs/TribufuApi.md#getipaddress) | **GET** /v1/geoip/addresses/{address} | Get a ip address location.
|
|
||||||
*TribufuApi* | [**GetIpAddresses**](docs/TribufuApi.md#getipaddresses) | **GET** /v1/geoip/addresses | Get a list of ip addresses.
|
|
||||||
*TribufuApi* | [**GetLeaderboard**](docs/TribufuApi.md#getleaderboard) | **GET** /v1/leaderboard | Get the top 20 leaderboard users.
|
|
||||||
*TribufuApi* | [**GetMe**](docs/TribufuApi.md#getme) | **GET** /v1/me | Get current user information.
|
|
||||||
*TribufuApi* | [**GetPackageById**](docs/TribufuApi.md#getpackagebyid) | **GET** /v1/packages/{id} | Get a package by id.
|
|
||||||
*TribufuApi* | [**GetPackages**](docs/TribufuApi.md#getpackages) | **GET** /v1/packages | Get a list of packages.
|
|
||||||
*TribufuApi* | [**GetPublicKeys**](docs/TribufuApi.md#getpublickeys) | **GET** /v1/oauth2/jwks | Get the public keys for the client.
|
|
||||||
*TribufuApi* | [**GetSubscriptionById**](docs/TribufuApi.md#getsubscriptionbyid) | **GET** /v1/subscriptions/{id} | Get a subscription by id.
|
|
||||||
*TribufuApi* | [**GetSubscriptions**](docs/TribufuApi.md#getsubscriptions) | **GET** /v1/subscriptions | Get a list of subscriptions.
|
|
||||||
*TribufuApi* | [**GetUserAccounts**](docs/TribufuApi.md#getuseraccounts) | **GET** /v1/users/{id}/accounts | Get a list of connected accounts of the user.
|
|
||||||
*TribufuApi* | [**GetUserById**](docs/TribufuApi.md#getuserbyid) | **GET** /v1/users/{id} | Get a user profile by id.
|
|
||||||
*TribufuApi* | [**GetUserByName**](docs/TribufuApi.md#getuserbyname) | **GET** /v1/users/name/{name} | Get a user profile by name.
|
|
||||||
*TribufuApi* | [**GetUserByUuid**](docs/TribufuApi.md#getuserbyuuid) | **GET** /v1/users/uuid/{uuid} | Get a user profile by uuid.
|
|
||||||
*TribufuApi* | [**GetUserFriends**](docs/TribufuApi.md#getuserfriends) | **GET** /v1/users/{id}/friends | Get a list of friends of the user.
|
|
||||||
*TribufuApi* | [**GetUserGames**](docs/TribufuApi.md#getusergames) | **GET** /v1/users/{id}/games | Get a list of games the user has played.
|
|
||||||
*TribufuApi* | [**GetUserGroups**](docs/TribufuApi.md#getusergroups) | **GET** /v1/users/{id}/groups | Get a list of groups the user is a member of.
|
|
||||||
*TribufuApi* | [**GetUserInfo**](docs/TribufuApi.md#getuserinfo) | **GET** /v1/oauth2/userinfo | Get current user information.
|
|
||||||
*TribufuApi* | [**GetUserPunishments**](docs/TribufuApi.md#getuserpunishments) | **GET** /v1/users/{id}/punishments | Get a list of punishments the user has received.
|
|
||||||
*TribufuApi* | [**GetUserServers**](docs/TribufuApi.md#getuserservers) | **GET** /v1/users/{id}/servers | Get a list of servers the user is owner of.
|
|
||||||
*TribufuApi* | [**GetUsers**](docs/TribufuApi.md#getusers) | **GET** /v1/users | Get a list of user profiles.
|
|
||||||
*TribufuApi* | [**HashArgon2**](docs/TribufuApi.md#hashargon2) | **POST** /v1/utils/argon2 | Hash a string using argon2.
|
|
||||||
*TribufuApi* | [**HashBcrypt**](docs/TribufuApi.md#hashbcrypt) | **POST** /v1/utils/bcrypt | Hash a string using bcrypt.
|
|
||||||
*TribufuApi* | [**HashMd5**](docs/TribufuApi.md#hashmd5) | **POST** /v1/utils/md5 | Hash a string using md5.
|
|
||||||
*TribufuApi* | [**HashSha256**](docs/TribufuApi.md#hashsha256) | **POST** /v1/utils/sha256 | Hash a string using sha256.
|
|
||||||
*TribufuApi* | [**IntrospectToken**](docs/TribufuApi.md#introspecttoken) | **POST** /v1/oauth2/introspect | Introspect a token.
|
|
||||||
*TribufuApi* | [**Login**](docs/TribufuApi.md#login) | **POST** /v1/login | Login with name or email and password.
|
|
||||||
*TribufuApi* | [**Logout**](docs/TribufuApi.md#logout) | **POST** /v1/logout | Invalidate credentials.
|
|
||||||
*TribufuApi* | [**Refresh**](docs/TribufuApi.md#refresh) | **POST** /v1/refresh | Refresh credentials.
|
|
||||||
*TribufuApi* | [**Register**](docs/TribufuApi.md#register) | **POST** /v1/register | Create a new user.
|
|
||||||
*TribufuApi* | [**RevokeToken**](docs/TribufuApi.md#revoketoken) | **POST** /v1/oauth2/revoke | Revoke a token.
|
|
||||||
*TribufuApi* | [**Search**](docs/TribufuApi.md#search) | **POST** /v1/search | Advanced search for servers or players.
|
|
||||||
*TribufuApi* | [**UpdateGameServer**](docs/TribufuApi.md#updategameserver) | **PUT** /v1/servers/{id} | Update a game server.
|
|
||||||
*TribufuApi* | [**UpdateGameServerCluster**](docs/TribufuApi.md#updategameservercluster) | **PUT** /v1/clusters/{id} | Update a game server cluster.
|
|
||||||
*TribufuApi* | [**UpdateGroup**](docs/TribufuApi.md#updategroup) | **PUT** /v1/groups/{id} | Update a group.
|
|
||||||
*TribufuApi* | [**UpdateUserProfile**](docs/TribufuApi.md#updateuserprofile) | **PUT** /v1/users/{id}/profile | Update a user profile.
|
|
||||||
|
|
||||||
|
|
||||||
<a id="documentation-for-models"></a>
|
|
||||||
## Documentation for Models
|
|
||||||
|
|
||||||
- [Model.Account](docs/Account.md)
|
|
||||||
- [Model.Application](docs/Application.md)
|
|
||||||
- [Model.ApplicationType](docs/ApplicationType.md)
|
|
||||||
- [Model.AuthorizeRequest](docs/AuthorizeRequest.md)
|
|
||||||
- [Model.CodeChallengeMethod](docs/CodeChallengeMethod.md)
|
|
||||||
- [Model.CryptoViewModel](docs/CryptoViewModel.md)
|
|
||||||
- [Model.Game](docs/Game.md)
|
|
||||||
- [Model.GameServer](docs/GameServer.md)
|
|
||||||
- [Model.GameServerCluster](docs/GameServerCluster.md)
|
|
||||||
- [Model.GrantType](docs/GrantType.md)
|
|
||||||
- [Model.Group](docs/Group.md)
|
|
||||||
- [Model.GroupGame](docs/GroupGame.md)
|
|
||||||
- [Model.GroupMember](docs/GroupMember.md)
|
|
||||||
- [Model.GroupRank](docs/GroupRank.md)
|
|
||||||
- [Model.HashViewModel](docs/HashViewModel.md)
|
|
||||||
- [Model.IntrospectRequest](docs/IntrospectRequest.md)
|
|
||||||
- [Model.IpAddress](docs/IpAddress.md)
|
|
||||||
- [Model.LeaderboardItem](docs/LeaderboardItem.md)
|
|
||||||
- [Model.LeaderboardOrder](docs/LeaderboardOrder.md)
|
|
||||||
- [Model.LoginProvider](docs/LoginProvider.md)
|
|
||||||
- [Model.LoginRequest](docs/LoginRequest.md)
|
|
||||||
- [Model.LoginResponse](docs/LoginResponse.md)
|
|
||||||
- [Model.Package](docs/Package.md)
|
|
||||||
- [Model.Profile](docs/Profile.md)
|
|
||||||
- [Model.ProfileGame](docs/ProfileGame.md)
|
|
||||||
- [Model.ProfileGroup](docs/ProfileGroup.md)
|
|
||||||
- [Model.RefreshRequest](docs/RefreshRequest.md)
|
|
||||||
- [Model.RegisterRequest](docs/RegisterRequest.md)
|
|
||||||
- [Model.ResponseType](docs/ResponseType.md)
|
|
||||||
- [Model.RevokeRequest](docs/RevokeRequest.md)
|
|
||||||
- [Model.SearchRequest](docs/SearchRequest.md)
|
|
||||||
- [Model.SearchType](docs/SearchType.md)
|
|
||||||
- [Model.ServerMetrics](docs/ServerMetrics.md)
|
|
||||||
- [Model.ServerStatus](docs/ServerStatus.md)
|
|
||||||
- [Model.Subscription](docs/Subscription.md)
|
|
||||||
- [Model.TokenHintType](docs/TokenHintType.md)
|
|
||||||
- [Model.TokenRequest](docs/TokenRequest.md)
|
|
||||||
- [Model.TokenResponse](docs/TokenResponse.md)
|
|
||||||
- [Model.TokenType](docs/TokenType.md)
|
|
||||||
- [Model.UpdateProfile](docs/UpdateProfile.md)
|
|
||||||
- [Model.UserInfo](docs/UserInfo.md)
|
|
||||||
- [Model.UserType](docs/UserType.md)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="documentation-for-authorization"></a>
|
|
||||||
## Documentation for Authorization
|
|
||||||
|
|
||||||
|
|
||||||
Authentication schemes defined for the API:
|
|
||||||
<a id="ApiKey"></a>
|
|
||||||
### ApiKey
|
|
||||||
|
|
||||||
- **Type**: API key
|
|
||||||
- **API key parameter name**: Authorization
|
|
||||||
- **Location**: HTTP header
|
|
||||||
|
|
||||||
|
[MIT License]: https://github.com/tribufu/tribufu-dotnet/blob/main/LICENSE.txt
|
||||||
|
|||||||
112
Tribufu.sln
112
Tribufu.sln
@@ -3,10 +3,22 @@ Microsoft Visual Studio Solution File, Format Version 12.00
|
|||||||
# Visual Studio Version 16
|
# Visual Studio Version 16
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu", "src\Tribufu\Tribufu.csproj", "{7B7890D8-863A-4F1D-98C0-4B7D8C46CB52}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu", "src\Tribufu\Tribufu.csproj", "{7B7890D8-863A-4F1D-98C0-4B7D8C46CB52}"
|
||||||
EndProject
|
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}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Example", "src\Tribufu.Example\Tribufu.Example.csproj", "{D6392A29-E2DC-4050-B4C1-B279DD2D226D}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Logging", "src\Tribufu.Logging\Tribufu.Logging.csproj", "{CFD80847-9B98-4991-BADF-8714E7D8D81C}"
|
||||||
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tribufu.Configuration", "src\Tribufu.Configuration\Tribufu.Configuration.csproj", "{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}"
|
||||||
|
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.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
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
@@ -29,18 +41,6 @@ Global
|
|||||||
{7B7890D8-863A-4F1D-98C0-4B7D8C46CB52}.Release|x64.Build.0 = Release|Any CPU
|
{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.ActiveCfg = Release|Any CPU
|
||||||
{7B7890D8-863A-4F1D-98C0-4B7D8C46CB52}.Release|x86.Build.0 = 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.ActiveCfg = Debug|Any CPU
|
||||||
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Debug|Any CPU.Build.0 = 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
|
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
@@ -53,6 +53,90 @@ Global
|
|||||||
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Release|x64.Build.0 = Release|Any CPU
|
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Release|x64.Build.0 = Release|Any CPU
|
||||||
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Release|x86.ActiveCfg = Release|Any CPU
|
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Release|x86.Build.0 = Release|Any CPU
|
{D6392A29-E2DC-4050-B4C1-B279DD2D226D}.Release|x86.Build.0 = Release|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Debug|x86.Build.0 = Debug|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Release|x64.Build.0 = Release|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
|
{CFD80847-9B98-4991-BADF-8714E7D8D81C}.Release|x86.Build.0 = Release|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Debug|x86.Build.0 = Debug|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Release|x64.Build.0 = Release|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
|
{C0A841C8-9FC5-4AC0-B9AD-6BBFCEDCBE5F}.Release|x86.Build.0 = Release|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Debug|x86.Build.0 = Debug|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Release|x64.Build.0 = Release|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
|
{26EEB407-733C-4383-9211-B083CD5F593B}.Release|x86.Build.0 = Release|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Debug|x86.Build.0 = Debug|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Release|x64.Build.0 = Release|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
|
{E7F9A76F-C087-410B-B4B5-A928A6CDC2BA}.Release|x86.Build.0 = Release|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Debug|x86.Build.0 = Debug|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Release|x64.Build.0 = Release|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
|
{D6DAE078-2F80-49DD-97A3-B1223FE04F91}.Release|x86.Build.0 = Release|Any CPU
|
||||||
|
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
|
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Debug|x86.Build.0 = Debug|Any CPU
|
||||||
|
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{7CB04FFD-8F4B-4B40-BB4B-2BAA19D783E1}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{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
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|||||||
0
releases/.gitkeep
Normal file
0
releases/.gitkeep
Normal file
@@ -7,6 +7,6 @@ java -jar ./vendor/openapi-generator/openapi-generator-cli.jar generate `
|
|||||||
-g csharp `
|
-g csharp `
|
||||||
-o . `
|
-o . `
|
||||||
--global-property apis,models,supportingFiles,apiDocs=false,modelDocs=false,apiTests=false,modelTests=false `
|
--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 `
|
--openapi-normalizer SET_TAGS_FOR_ALL_OPERATIONS=TribufuGenerated `
|
||||||
--skip-validate-spec
|
--skip-validate-spec
|
||||||
|
|||||||
7
scripts/package.ps1
Normal file
7
scripts/package.ps1
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/env pwsh
|
||||||
|
|
||||||
|
Get-ChildItem ./releases -Filter *.nupkg -Recurse -Force | Remove-Item -Force
|
||||||
|
|
||||||
|
dotnet clean
|
||||||
|
dotnet build -c Release
|
||||||
|
dotnet pack -c Release -o ./releases
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/usr/bin/env sh
|
|
||||||
|
|
||||||
dotnet pack
|
|
||||||
33
src/Tribufu.AspNetCore/Extensions/HttpContextExtensions.cs
Normal file
33
src/Tribufu.AspNetCore/Extensions/HttpContextExtensions.cs
Normal 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";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
1
src/Tribufu.AspNetCore/README.md
Normal file
1
src/Tribufu.AspNetCore/README.md
Normal file
@@ -0,0 +1 @@
|
|||||||
|
# Tribufu AspNetCore
|
||||||
28
src/Tribufu.AspNetCore/Tribufu.AspNetCore.csproj
Normal file
28
src/Tribufu.AspNetCore/Tribufu.AspNetCore.csproj
Normal 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>
|
||||||
30
src/Tribufu.ComponentModel/EnumMemberConverter.cs
Normal file
30
src/Tribufu.ComponentModel/EnumMemberConverter.cs
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Globalization;
|
||||||
|
using System.Runtime.Serialization;
|
||||||
|
|
||||||
|
namespace Tribufu.ComponentModel
|
||||||
|
{
|
||||||
|
public class EnumMemberConverter<T> : EnumConverter
|
||||||
|
{
|
||||||
|
public EnumMemberConverter(Type type) : base(type) { }
|
||||||
|
|
||||||
|
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
|
||||||
|
{
|
||||||
|
var type = typeof(T);
|
||||||
|
|
||||||
|
foreach (var field in type.GetFields())
|
||||||
|
{
|
||||||
|
if (Attribute.GetCustomAttribute(field, typeof(EnumMemberAttribute)) is EnumMemberAttribute attribute && value is string enumValue && attribute.Value == enumValue)
|
||||||
|
{
|
||||||
|
return field.GetValue(null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return base.ConvertFrom(context, culture, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
1
src/Tribufu.ComponentModel/README.md
Normal file
1
src/Tribufu.ComponentModel/README.md
Normal file
@@ -0,0 +1 @@
|
|||||||
|
# Tribufu ComponentModel
|
||||||
17
src/Tribufu.ComponentModel/Tribufu.ComponentModel.csproj
Normal file
17
src/Tribufu.ComponentModel/Tribufu.ComponentModel.csproj
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<PackageId>Tribufu.ComponentModel</PackageId>
|
||||||
|
<Description>Tribufu ComponentModel</Description>
|
||||||
|
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||||
|
<IsPublishable>false</IsPublishable>
|
||||||
|
<OutputType>Library</OutputType>
|
||||||
|
<TargetFrameworks>netstandard2.0;net45;net5.0</TargetFrameworks>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="README.md" Pack="true" PackagePath="\" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
50
src/Tribufu.Configuration/ConfigurationLoader.cs
Normal file
50
src/Tribufu.Configuration/ConfigurationLoader.cs
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using Microsoft.Extensions.Configuration;
|
||||||
|
using System.IO;
|
||||||
|
using Tomlyn.Extensions.Configuration;
|
||||||
|
using Tribufu.Logging;
|
||||||
|
using Tribufu.Platform;
|
||||||
|
|
||||||
|
namespace Tribufu.Configuration
|
||||||
|
{
|
||||||
|
public static class ConfigurationLoader
|
||||||
|
{
|
||||||
|
public static IConfiguration Load(string[] fileNames)
|
||||||
|
{
|
||||||
|
var configDirectory = Paths.GetApplicationConfigDirectory();
|
||||||
|
var configurationBuilder = new ConfigurationBuilder();
|
||||||
|
configurationBuilder.AddEnvironmentVariables();
|
||||||
|
|
||||||
|
foreach (var fileName in fileNames)
|
||||||
|
{
|
||||||
|
var fullPath = Path.Combine(configDirectory, fileName);
|
||||||
|
if (!File.Exists(fullPath))
|
||||||
|
{
|
||||||
|
Logger.Debug($"Config file '{fullPath}' not found, skipping.");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
var extension = Path.GetExtension(fullPath).ToLowerInvariant();
|
||||||
|
switch (extension)
|
||||||
|
{
|
||||||
|
case ".ini":
|
||||||
|
configurationBuilder.AddIniFile(fullPath, true, false);
|
||||||
|
break;
|
||||||
|
case ".json":
|
||||||
|
configurationBuilder.AddJsonFile(fullPath, true, false);
|
||||||
|
break;
|
||||||
|
case ".toml":
|
||||||
|
configurationBuilder.AddTomlFile(fullPath, true, false);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
Logger.Warn($"Unsupported config file extension: {extension}");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return configurationBuilder.Build();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
1
src/Tribufu.Configuration/README.md
Normal file
1
src/Tribufu.Configuration/README.md
Normal file
@@ -0,0 +1 @@
|
|||||||
|
# Tribufu Configuration
|
||||||
32
src/Tribufu.Configuration/Tribufu.Configuration.csproj
Normal file
32
src/Tribufu.Configuration/Tribufu.Configuration.csproj
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<PackageId>Tribufu.Configuration</PackageId>
|
||||||
|
<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>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="README.md" Pack="true" PackagePath="\" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" />
|
||||||
|
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" />
|
||||||
|
<PackageReference Include="Microsoft.Extensions.Configuration.Ini" />
|
||||||
|
<PackageReference Include="Microsoft.Extensions.Configuration.Json" />
|
||||||
|
<PackageReference Include="Microsoft.Extensions.Configuration" />
|
||||||
|
<PackageReference Include="Newtonsoft.Json" />
|
||||||
|
<PackageReference Include="Tomlyn.Extensions.Configuration" />
|
||||||
|
<PackageReference Include="Tomlyn" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\Tribufu.Logging\Tribufu.Logging.csproj" />
|
||||||
|
<ProjectReference Include="..\Tribufu.Platform\Tribufu.Platform.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
105
src/Tribufu.EntityFrameworkCore/DatabaseConfiguration.cs
Normal file
105
src/Tribufu.EntityFrameworkCore/DatabaseConfiguration.cs
Normal 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}");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
}
|
||||||
12
src/Tribufu.EntityFrameworkCore/DatabaseConstants.cs
Normal file
12
src/Tribufu.EntityFrameworkCore/DatabaseConstants.cs
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
namespace Tribufu.EntityFrameworkCore
|
||||||
|
{
|
||||||
|
public static class DatabaseConstants
|
||||||
|
{
|
||||||
|
public const uint DEFAULT_PAGINATION = 20;
|
||||||
|
|
||||||
|
public const uint MAX_PAGINATION = 100;
|
||||||
|
}
|
||||||
|
}
|
||||||
22
src/Tribufu.EntityFrameworkCore/DatabaseDriver.cs
Normal file
22
src/Tribufu.EntityFrameworkCore/DatabaseDriver.cs
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
namespace Tribufu.EntityFrameworkCore
|
||||||
|
{
|
||||||
|
public enum DatabaseDriver : byte
|
||||||
|
{
|
||||||
|
MySql = 0,
|
||||||
|
|
||||||
|
Postgres = 1,
|
||||||
|
|
||||||
|
SqlServer = 2,
|
||||||
|
|
||||||
|
Oracle = 3,
|
||||||
|
|
||||||
|
Firebird = 4,
|
||||||
|
|
||||||
|
Sqlite = 5,
|
||||||
|
|
||||||
|
MongoDb = 6,
|
||||||
|
}
|
||||||
|
}
|
||||||
1
src/Tribufu.EntityFrameworkCore/README.md
Normal file
1
src/Tribufu.EntityFrameworkCore/README.md
Normal file
@@ -0,0 +1 @@
|
|||||||
|
# Tribufu EntityFrameworkCore
|
||||||
41
src/Tribufu.EntityFrameworkCore/Repositories/IRepository.cs
Normal file
41
src/Tribufu.EntityFrameworkCore/Repositories/IRepository.cs
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace Tribufu.EntityFrameworkCore.Repositories
|
||||||
|
{
|
||||||
|
public interface IRepository<T, K> where T : class
|
||||||
|
{
|
||||||
|
Task SeedAsync();
|
||||||
|
|
||||||
|
IList<T> GetAll();
|
||||||
|
|
||||||
|
Task<IList<T>> GetAllAsync();
|
||||||
|
|
||||||
|
IList<T> GetPage(uint page, uint limit);
|
||||||
|
|
||||||
|
Task<IList<T>> GetPageAsync(uint page, uint limit);
|
||||||
|
|
||||||
|
T? GetOne(K key);
|
||||||
|
|
||||||
|
Task<T?> GetOneAsync(K key);
|
||||||
|
|
||||||
|
T? Create(T entity);
|
||||||
|
|
||||||
|
Task<T?> CreateAsync(T entity);
|
||||||
|
|
||||||
|
T? Update(T entity);
|
||||||
|
|
||||||
|
Task<T?> UpdateAsync(T entity);
|
||||||
|
|
||||||
|
void Delete(K key);
|
||||||
|
|
||||||
|
Task DeleteAsync(K key);
|
||||||
|
|
||||||
|
void Delete(T entity);
|
||||||
|
|
||||||
|
Task DeleteAsync(T entity);
|
||||||
|
}
|
||||||
|
}
|
||||||
117
src/Tribufu.EntityFrameworkCore/Repositories/Repository.cs
Normal file
117
src/Tribufu.EntityFrameworkCore/Repositories/Repository.cs
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace Tribufu.EntityFrameworkCore.Repositories
|
||||||
|
{
|
||||||
|
public class Repository<C, T, K> : IRepository<T, K> where C : DbContext where T : class
|
||||||
|
{
|
||||||
|
protected readonly C _context;
|
||||||
|
|
||||||
|
protected readonly DbSet<T> _dbSet;
|
||||||
|
|
||||||
|
public Repository(C context)
|
||||||
|
{
|
||||||
|
_context = context ?? throw new ArgumentNullException(nameof(context));
|
||||||
|
_dbSet = context.Set<T>();
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual async Task SeedAsync()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual IList<T> GetAll()
|
||||||
|
{
|
||||||
|
return [.. _dbSet];
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual async Task<IList<T>> GetAllAsync()
|
||||||
|
{
|
||||||
|
return await _dbSet.ToListAsync();
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual IList<T> GetPage(uint page, uint limit)
|
||||||
|
{
|
||||||
|
return _dbSet.Skip((int)((page < 1 ? 0 : page - 1) * limit)).Take((int)limit).ToList();
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual async Task<IList<T>> GetPageAsync(uint page, uint limit)
|
||||||
|
{
|
||||||
|
return await _dbSet.Skip((int)((page < 1 ? 0 : page - 1) * limit)).Take((int)limit).ToListAsync();
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual T? GetOne(K key)
|
||||||
|
{
|
||||||
|
return _dbSet.Find(key);
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual async Task<T?> GetOneAsync(K key)
|
||||||
|
{
|
||||||
|
return await _dbSet.FindAsync(key);
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual T? Create(T entity)
|
||||||
|
{
|
||||||
|
_dbSet.Add(entity);
|
||||||
|
|
||||||
|
var result = _context.SaveChanges();
|
||||||
|
return result > 0 ? entity : null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual async Task<T?> CreateAsync(T entity)
|
||||||
|
{
|
||||||
|
await _dbSet.AddAsync(entity);
|
||||||
|
var result = await _context.SaveChangesAsync();
|
||||||
|
return result > 0 ? entity : null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual T? Update(T entity)
|
||||||
|
{
|
||||||
|
_dbSet.Update(entity);
|
||||||
|
var result = _context.SaveChanges();
|
||||||
|
return result > 0 ? entity : null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual async Task<T?> UpdateAsync(T entity)
|
||||||
|
{
|
||||||
|
_dbSet.Update(entity);
|
||||||
|
var result = await _context.SaveChangesAsync();
|
||||||
|
return result > 0 ? entity : null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual void Delete(K key)
|
||||||
|
{
|
||||||
|
var entity = _dbSet.Find(key);
|
||||||
|
if (entity != null)
|
||||||
|
{
|
||||||
|
Delete(entity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual async Task DeleteAsync(K key)
|
||||||
|
{
|
||||||
|
var entity = await _dbSet.FindAsync(key);
|
||||||
|
if (entity != null)
|
||||||
|
{
|
||||||
|
await DeleteAsync(entity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual void Delete(T entity)
|
||||||
|
{
|
||||||
|
_dbSet.Remove(entity);
|
||||||
|
_context.SaveChanges();
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual async Task DeleteAsync(T entity)
|
||||||
|
{
|
||||||
|
_dbSet.Remove(entity);
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<PackageId>Tribufu.EntityFrameworkCore</PackageId>
|
||||||
|
<Description>Tribufu EntityFrameworkCore</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>
|
||||||
|
<PackageReference Include="Microsoft.EntityFrameworkCore" />
|
||||||
|
</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>
|
||||||
@@ -1,8 +1,11 @@
|
|||||||
// Copyright (c) Tribufu. All Rights Reserved.
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
// SPDX-License-Identifier: UNLICENSED
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
using dotenv.net;
|
using dotenv.net;
|
||||||
using Tribufu.Generated.Client;
|
using System;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Tribufu.Client;
|
||||||
|
using Tribufu.Logging;
|
||||||
|
|
||||||
namespace Tribufu.Test
|
namespace Tribufu.Test
|
||||||
{
|
{
|
||||||
@@ -10,21 +13,23 @@ namespace Tribufu.Test
|
|||||||
{
|
{
|
||||||
public static async Task Main(string[] args)
|
public static async Task Main(string[] args)
|
||||||
{
|
{
|
||||||
|
Logger.Initialize(LogLevel.Trace);
|
||||||
|
|
||||||
DotEnv.Load(new DotEnvOptions(ignoreExceptions: true, envFilePaths: [".env", "../../.env"]));
|
DotEnv.Load(new DotEnvOptions(ignoreExceptions: true, envFilePaths: [".env", "../../.env"]));
|
||||||
|
|
||||||
var apiKey = Environment.GetEnvironmentVariable("TRIBUFU_API_KEY");
|
var apiKey = Environment.GetEnvironmentVariable("TRIBUFU_API_KEY");
|
||||||
var tribufu = new TribufuApi(apiKey ?? "");
|
var tribufu = new TribufuApi(apiKey ?? "");
|
||||||
|
|
||||||
Console.WriteLine(TribufuApi.GetVersion());
|
Logger.Debug(TribufuApi.GetUserAgent());
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var result = await tribufu.GetUserInfoAsync();
|
var result = await tribufu.GetUserInfoAsync();
|
||||||
Console.WriteLine(result);
|
Logger.Debug(result.ToString());
|
||||||
}
|
}
|
||||||
catch (ApiException e)
|
catch (ApiException e)
|
||||||
{
|
{
|
||||||
Console.WriteLine(e.Message);
|
Logger.Debug(e.Message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,16 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<IsPackable>false</IsPackable>
|
||||||
|
<IsPublishable>false</IsPublishable>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<OutputType>Exe</OutputType>
|
<OutputType>Exe</OutputType>
|
||||||
<TargetFramework>net8.0</TargetFramework>
|
<TargetFramework>net8.0</TargetFramework>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<PackageReference Include="dotenv.net" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\Tribufu.Logging\Tribufu.Logging.csproj" />
|
||||||
<ProjectReference Include="..\Tribufu\Tribufu.csproj" />
|
<ProjectReference Include="..\Tribufu\Tribufu.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
# Tribufu
|
|
||||||
@@ -1,27 +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>
|
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
|
||||||
<Nullable>annotations</Nullable>
|
|
||||||
<OutputType>Library</OutputType>
|
|
||||||
<TargetFrameworks>net6.0</TargetFrameworks>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="README.md" Pack="true" PackagePath="\" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="dotenv.net" />
|
|
||||||
<PackageReference Include="JsonSubTypes" />
|
|
||||||
<PackageReference Include="Newtonsoft.Json" />
|
|
||||||
<PackageReference Include="Polly" />
|
|
||||||
<PackageReference Include="RestSharp" />
|
|
||||||
<PackageReference Include="System.ComponentModel.Annotations" />
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
|
||||||
20
src/Tribufu.Logging/LogLevel.cs
Normal file
20
src/Tribufu.Logging/LogLevel.cs
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
namespace Tribufu.Logging
|
||||||
|
{
|
||||||
|
public enum LogLevel : byte
|
||||||
|
{
|
||||||
|
Off = 0,
|
||||||
|
|
||||||
|
Error = 1,
|
||||||
|
|
||||||
|
Warn = 2,
|
||||||
|
|
||||||
|
Info = 3,
|
||||||
|
|
||||||
|
Debug = 4,
|
||||||
|
|
||||||
|
Trace = 5,
|
||||||
|
}
|
||||||
|
}
|
||||||
79
src/Tribufu.Logging/Logger.cs
Normal file
79
src/Tribufu.Logging/Logger.cs
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Tribufu.Logging
|
||||||
|
{
|
||||||
|
public static class Logger
|
||||||
|
{
|
||||||
|
private static LogLevel _level = LogLevel.Off;
|
||||||
|
|
||||||
|
public static void Initialize(LogLevel level = LogLevel.Off)
|
||||||
|
{
|
||||||
|
_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);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void Warn(string message)
|
||||||
|
{
|
||||||
|
Log(LogLevel.Warn, message, ConsoleColor.Yellow);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void Error(string message)
|
||||||
|
{
|
||||||
|
Log(LogLevel.Error, message, ConsoleColor.Red);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void Debug(string message)
|
||||||
|
{
|
||||||
|
Log(LogLevel.Debug, message, ConsoleColor.White);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void Trace(string message)
|
||||||
|
{
|
||||||
|
Log(LogLevel.Trace, message, ConsoleColor.DarkGray);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void Log(LogLevel level, string message, ConsoleColor color)
|
||||||
|
{
|
||||||
|
if (level <= _level)
|
||||||
|
{
|
||||||
|
var defaultColor = Console.ForegroundColor;
|
||||||
|
Console.ForegroundColor = color;
|
||||||
|
var timestamp = DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss");
|
||||||
|
Console.WriteLine($"[{timestamp}] [{level.ToString().ToUpper()}]: {message}");
|
||||||
|
Console.ForegroundColor = defaultColor;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
1
src/Tribufu.Logging/README.md
Normal file
1
src/Tribufu.Logging/README.md
Normal file
@@ -0,0 +1 @@
|
|||||||
|
# Tribufu Logging
|
||||||
19
src/Tribufu.Logging/Tribufu.Logging.csproj
Normal file
19
src/Tribufu.Logging/Tribufu.Logging.csproj
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<PackageId>Tribufu.Logging</PackageId>
|
||||||
|
<Description>Tribufu Logging</Description>
|
||||||
|
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||||
|
<IsPublishable>false</IsPublishable>
|
||||||
|
<OutputType>Library</OutputType>
|
||||||
|
<TargetFrameworks>netstandard2.0;net45;net5.0</TargetFrameworks>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="README.md" Pack="true" PackagePath="\" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
45
src/Tribufu.Platform/FlakeGenerator.cs
Normal file
45
src/Tribufu.Platform/FlakeGenerator.cs
Normal 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
122
src/Tribufu.Platform/Paths.cs
Normal file
122
src/Tribufu.Platform/Paths.cs
Normal file
@@ -0,0 +1,122 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.IO;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
using Tribufu.Logging;
|
||||||
|
|
||||||
|
namespace Tribufu.Platform
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Provides standardized access to important directories, such as config, saved data, logs, and platform-specific binaries.
|
||||||
|
/// This is especially useful for abstracting file path logic across environments (development, production, etc).
|
||||||
|
/// </summary>
|
||||||
|
public static class Paths
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the root base directory of the application.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// - In development, this resolves to the root of the repository (five levels above bin/Debug or bin/Release).
|
||||||
|
/// - In production, it resolves to two levels above the binary location.
|
||||||
|
/// - It uses case-insensitive checks and runtime heuristics to improve accuracy.
|
||||||
|
/// </remarks>
|
||||||
|
/// <returns>The absolute path to the base directory.</returns>
|
||||||
|
public static string GetApplicationDirectory()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
string baseDirectory;
|
||||||
|
string defaultBaseDirectory = AppContext.BaseDirectory;
|
||||||
|
|
||||||
|
bool isDevelopment = defaultBaseDirectory.ToLowerInvariant().Contains("debug");
|
||||||
|
|
||||||
|
if (isDevelopment)
|
||||||
|
{
|
||||||
|
// Go 5 levels up to simulate project root
|
||||||
|
baseDirectory = Path.Combine(defaultBaseDirectory, "..", "..", "..", "..", "..");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
baseDirectory = Path.Combine(defaultBaseDirectory, "..", "..");
|
||||||
|
}
|
||||||
|
|
||||||
|
return Path.GetFullPath(baseDirectory);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
Logger.Warn($"(Paths) Failed to resolve base directory: {ex.Message}");
|
||||||
|
return AppContext.BaseDirectory;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the path to the platform-specific binary directory.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>
|
||||||
|
/// The absolute path to <c>bin/<runtime-identifier></c> if available,
|
||||||
|
/// otherwise falls back to <c>bin/dotnet</c>.
|
||||||
|
/// </returns>
|
||||||
|
public static string GetApplicationBinDirectory()
|
||||||
|
{
|
||||||
|
var binDirectory = Path.Combine(GetApplicationDirectory(), "bin");
|
||||||
|
|
||||||
|
if (!string.IsNullOrEmpty(RuntimeInformation.RuntimeIdentifier))
|
||||||
|
{
|
||||||
|
binDirectory = Path.Combine(binDirectory, RuntimeInformation.RuntimeIdentifier);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
binDirectory = Path.Combine(binDirectory, "dotnet");
|
||||||
|
}
|
||||||
|
|
||||||
|
return binDirectory;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the path to the configuration directory.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>The absolute path to the <c>config</c> directory.</returns>
|
||||||
|
public static string GetApplicationConfigDirectory()
|
||||||
|
{
|
||||||
|
return Path.Combine(GetApplicationDirectory(), "config");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the path to the assets directory.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>The absolute path to the <c>assets</c> directory.</returns>
|
||||||
|
public static string GetApplicationAssetsDirectory()
|
||||||
|
{
|
||||||
|
return Path.Combine(GetApplicationDirectory(), "assets");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the path to the saved data directory.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>The absolute path to the <c>saved</c> directory.</returns>
|
||||||
|
public static string GetApplicationSavedDirectory()
|
||||||
|
{
|
||||||
|
return Path.Combine(GetApplicationDirectory(), "saved");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the path to the cache directory inside <c>saved</c>.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>The absolute path to the <c>saved/cache</c> directory.</returns>
|
||||||
|
public static string GetApplicationCacheDirectory()
|
||||||
|
{
|
||||||
|
return Path.Combine(GetApplicationSavedDirectory(), "cache");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the path to the logs directory inside <c>saved</c>.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>The absolute path to the <c>saved/logs</c> directory.</returns>
|
||||||
|
public static string GetApplicationLogsDirectory()
|
||||||
|
{
|
||||||
|
return Path.Combine(GetApplicationSavedDirectory(), "logs");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
1
src/Tribufu.Platform/README.md
Normal file
1
src/Tribufu.Platform/README.md
Normal file
@@ -0,0 +1 @@
|
|||||||
|
# Tribufu Runtime
|
||||||
24
src/Tribufu.Platform/Tribufu.Platform.csproj
Normal file
24
src/Tribufu.Platform/Tribufu.Platform.csproj
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<PackageId>Tribufu.Platform</PackageId>
|
||||||
|
<Description>Tribufu Platform</Description>
|
||||||
|
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||||
|
<IsPublishable>false</IsPublishable>
|
||||||
|
<OutputType>Library</OutputType>
|
||||||
|
<TargetFrameworks>net5.0</TargetFrameworks>
|
||||||
|
</PropertyGroup>
|
||||||
|
<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" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
20
src/Tribufu.Serialization/BaseClassFirstContractResolver.cs
Normal file
20
src/Tribufu.Serialization/BaseClassFirstContractResolver.cs
Normal 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();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
35
src/Tribufu.Serialization/CustomSerializerSettings.cs
Normal file
35
src/Tribufu.Serialization/CustomSerializerSettings.cs
Normal 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
46
src/Tribufu.Serialization/DecimalNullableStringConverter.cs
Normal file
46
src/Tribufu.Serialization/DecimalNullableStringConverter.cs
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using Newtonsoft.Json;
|
||||||
|
using System;
|
||||||
|
using System.Globalization;
|
||||||
|
|
||||||
|
namespace Tribufu.Serialization
|
||||||
|
{
|
||||||
|
public class DecimalNullableStringConverter : JsonConverter<decimal?>
|
||||||
|
{
|
||||||
|
public override decimal? ReadJson(JsonReader reader, Type objectType, decimal? existingValue, bool hasExistingValue, JsonSerializer serializer)
|
||||||
|
{
|
||||||
|
if (reader.TokenType == JsonToken.Null)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (reader.TokenType == JsonToken.String || reader.TokenType == JsonToken.Integer)
|
||||||
|
{
|
||||||
|
string value = reader.Value?.ToString();
|
||||||
|
|
||||||
|
if (string.IsNullOrWhiteSpace(value))
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return decimal.Parse(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
throw new JsonSerializationException($"Unexpected token {reader.TokenType} when parsing decimal?.");
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void WriteJson(JsonWriter writer, decimal? value, JsonSerializer serializer)
|
||||||
|
{
|
||||||
|
if (value.HasValue)
|
||||||
|
{
|
||||||
|
writer.WriteValue(value.Value.ToString(CultureInfo.InvariantCulture));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
writer.WriteNull();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
32
src/Tribufu.Serialization/DecimalStringConverter.cs
Normal file
32
src/Tribufu.Serialization/DecimalStringConverter.cs
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using Newtonsoft.Json;
|
||||||
|
using System;
|
||||||
|
using System.Globalization;
|
||||||
|
|
||||||
|
namespace Tribufu.Serialization
|
||||||
|
{
|
||||||
|
public class DecimalStringConverter : JsonConverter<decimal>
|
||||||
|
{
|
||||||
|
public override decimal ReadJson(JsonReader reader, Type objectType, decimal existingValue, bool hasExistingValue, JsonSerializer serializer)
|
||||||
|
{
|
||||||
|
if (reader.TokenType == JsonToken.String && decimal.TryParse(reader.Value?.ToString(), out var result))
|
||||||
|
{
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (reader.TokenType == JsonToken.Integer)
|
||||||
|
{
|
||||||
|
return Convert.ToUInt64(reader.Value);
|
||||||
|
}
|
||||||
|
|
||||||
|
throw new JsonSerializationException($"Unexpected token {reader.TokenType} when parsing decimal.");
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void WriteJson(JsonWriter writer, decimal value, JsonSerializer serializer)
|
||||||
|
{
|
||||||
|
writer.WriteValue(value.ToString(CultureInfo.InvariantCulture));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
1
src/Tribufu.Serialization/README.md
Normal file
1
src/Tribufu.Serialization/README.md
Normal file
@@ -0,0 +1 @@
|
|||||||
|
# Tribufu Serialization
|
||||||
20
src/Tribufu.Serialization/Tribufu.Serialization.csproj
Normal file
20
src/Tribufu.Serialization/Tribufu.Serialization.csproj
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<PackageId>Tribufu.Serialization</PackageId>
|
||||||
|
<Description>Tribufu Serialization</Description>
|
||||||
|
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||||
|
<IsPublishable>false</IsPublishable>
|
||||||
|
<OutputType>Library</OutputType>
|
||||||
|
<TargetFrameworks>netstandard2.0;net45;net5.0</TargetFrameworks>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="README.md" Pack="true" PackagePath="\" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Newtonsoft.Json" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
45
src/Tribufu.Serialization/ULongNullableStringConverter.cs
Normal file
45
src/Tribufu.Serialization/ULongNullableStringConverter.cs
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using Newtonsoft.Json;
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Tribufu.Serialization
|
||||||
|
{
|
||||||
|
public class ULongNullableStringConverter : JsonConverter<ulong?>
|
||||||
|
{
|
||||||
|
public override ulong? ReadJson(JsonReader reader, Type objectType, ulong? existingValue, bool hasExistingValue, JsonSerializer serializer)
|
||||||
|
{
|
||||||
|
if (reader.TokenType == JsonToken.Null)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (reader.TokenType == JsonToken.String || reader.TokenType == JsonToken.Integer)
|
||||||
|
{
|
||||||
|
string value = reader.Value?.ToString();
|
||||||
|
|
||||||
|
if (string.IsNullOrWhiteSpace(value))
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return ulong.Parse(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
throw new JsonSerializationException($"Unexpected token {reader.TokenType} when parsing ulong?.");
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void WriteJson(JsonWriter writer, ulong? value, JsonSerializer serializer)
|
||||||
|
{
|
||||||
|
if (value.HasValue)
|
||||||
|
{
|
||||||
|
writer.WriteValue(value.Value.ToString());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
writer.WriteNull();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
31
src/Tribufu.Serialization/ULongStringConverter.cs
Normal file
31
src/Tribufu.Serialization/ULongStringConverter.cs
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
// Copyright (c) Tribufu. All Rights Reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
using Newtonsoft.Json;
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Tribufu.Serialization
|
||||||
|
{
|
||||||
|
public class ULongStringConverter : JsonConverter<ulong>
|
||||||
|
{
|
||||||
|
public override ulong ReadJson(JsonReader reader, Type objectType, ulong existingValue, bool hasExistingValue, JsonSerializer serializer)
|
||||||
|
{
|
||||||
|
if (reader.TokenType == JsonToken.String && ulong.TryParse(reader.Value?.ToString(), out var result))
|
||||||
|
{
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (reader.TokenType == JsonToken.Integer)
|
||||||
|
{
|
||||||
|
return Convert.ToUInt64(reader.Value);
|
||||||
|
}
|
||||||
|
|
||||||
|
throw new JsonSerializationException($"Unexpected token {reader.TokenType} when parsing ulong.");
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void WriteJson(JsonWriter writer, ulong value, JsonSerializer serializer)
|
||||||
|
{
|
||||||
|
writer.WriteValue(value.ToString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
21419
src/Tribufu/Api/TribufuGeneratedApi.cs
Normal file
21419
src/Tribufu/Api/TribufuGeneratedApi.cs
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -23,6 +23,7 @@ using System.Text;
|
|||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
using System.Web;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using Newtonsoft.Json.Serialization;
|
using Newtonsoft.Json.Serialization;
|
||||||
using RestSharp;
|
using RestSharp;
|
||||||
@@ -30,9 +31,9 @@ using RestSharp.Serializers;
|
|||||||
using RestSharpMethod = RestSharp.Method;
|
using RestSharpMethod = RestSharp.Method;
|
||||||
using FileIO = System.IO.File;
|
using FileIO = System.IO.File;
|
||||||
using Polly;
|
using Polly;
|
||||||
using Tribufu.Generated.Model;
|
using Tribufu.Model;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Allows RestSharp to Serialize/Deserialize JSON using our custom logic, but only when ContentType is JSON.
|
/// Allows RestSharp to Serialize/Deserialize JSON using our custom logic, but only when ContentType is JSON.
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// API Exception
|
/// API Exception
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -13,7 +13,7 @@ using System;
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Provides a non-generic contract for the ApiResponse wrapper.
|
/// Provides a non-generic contract for the ApiResponse wrapper.
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -19,7 +19,7 @@ using System.Runtime.Serialization;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Utility functions providing some benefit to API client consumers.
|
/// 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
|
// https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx#Anchor_8
|
||||||
// For example: 2009-06-15T13:45:30.0000000
|
// For example: 2009-06-15T13:45:30.0000000
|
||||||
return dateTimeOffset.ToString((configuration ?? GlobalConfiguration.Instance).DateTimeFormat);
|
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)
|
if (obj is bool boolean)
|
||||||
return boolean ? "true" : "false";
|
return boolean ? "true" : "false";
|
||||||
if (obj is ICollection collection) {
|
if (obj is ICollection collection) {
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -21,7 +21,7 @@ using System.Text;
|
|||||||
using System.Net.Http;
|
using System.Net.Http;
|
||||||
using System.Net.Security;
|
using System.Net.Security;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a set of configuration settings
|
/// Represents a set of configuration settings
|
||||||
@@ -537,10 +537,10 @@ namespace Tribufu.Generated.Client
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public static string ToDebugReport()
|
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 += " OS: " + System.Environment.OSVersion + "\n";
|
||||||
report += " .NET Framework Version: " + System.Environment.Version + "\n";
|
report += " .NET Framework Version: " + System.Environment.Version + "\n";
|
||||||
report += " Version of the API: 1.1.0\n";
|
report += " Version of the API: 1.2.6\n";
|
||||||
report += " SDK Package Version: 1.0.0\n";
|
report += " SDK Package Version: 1.0.0\n";
|
||||||
|
|
||||||
return report;
|
return report;
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A delegate to ExceptionFactory method
|
/// A delegate to ExceptionFactory method
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="GlobalConfiguration"/> provides a compile-time extension point for globally configuring
|
/// <see cref="GlobalConfiguration"/> provides a compile-time extension point for globally configuring
|
||||||
@@ -1,15 +1,15 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Http methods supported by swagger
|
/// Http methods supported by swagger
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents configuration aspects required to interact with the API endpoints.
|
/// Represents configuration aspects required to interact with the API endpoints.
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -12,7 +12,7 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Contract for Asynchronous RESTful API interactions.
|
/// Contract for Asynchronous RESTful API interactions.
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -15,7 +15,7 @@ using System.Net;
|
|||||||
using System.Net.Security;
|
using System.Net.Security;
|
||||||
using System.Security.Cryptography.X509Certificates;
|
using System.Security.Cryptography.X509Certificates;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a readable-only configuration contract.
|
/// Represents a readable-only configuration contract.
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -12,7 +12,7 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Contract for Synchronous RESTful API interactions.
|
/// Contract for Synchronous RESTful API interactions.
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -13,7 +13,7 @@ using System;
|
|||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A dictionary in which one key has many associated values.
|
/// A dictionary in which one key has many associated values.
|
||||||
@@ -1,16 +1,16 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Formatter for 'date' openapi formats ss defined by full-date - RFC3339
|
/// Formatter for 'date' openapi formats ss defined by full-date - RFC3339
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -14,7 +14,7 @@ using System.Collections.Generic;
|
|||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A container for generalized request inputs. This type allows consumers to extend the request functionality
|
/// A container for generalized request inputs. This type allows consumers to extend the request functionality
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -12,7 +12,7 @@
|
|||||||
using Polly;
|
using Polly;
|
||||||
using RestSharp;
|
using RestSharp;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Client
|
namespace Tribufu.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Configuration class to set the polly retry policies to be applied to the requests.
|
/// Configuration class to set the polly retry policies to be applied to the requests.
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -13,7 +13,7 @@ using System;
|
|||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using Newtonsoft.Json.Serialization;
|
using Newtonsoft.Json.Serialization;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Abstract base class for oneOf, anyOf schemas in the OpenAPI specification
|
/// Abstract base class for oneOf, anyOf schemas in the OpenAPI specification
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Account
|
/// Account
|
||||||
@@ -36,24 +36,34 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Provider
|
/// Gets or Sets Provider
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "provider", EmitDefaultValue = false)]
|
[DataMember(Name = "provider", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public LoginProvider? Provider { get; set; }
|
public LoginProvider Provider { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="Account" /> class.
|
/// Initializes a new instance of the <see cref="Account" /> class.
|
||||||
/// </summary>
|
/// </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="name">name.</param>
|
||||||
/// <param name="provider">provider.</param>
|
/// <param name="provider">provider (required).</param>
|
||||||
/// <param name="userId">userId.</param>
|
/// <param name="userId">userId.</param>
|
||||||
/// <param name="authorized">authorized.</param>
|
/// <param name="authorized">authorized.</param>
|
||||||
/// <param name="fields">fields.</param>
|
/// <param name="fields">fields.</param>
|
||||||
/// <param name="created">created.</param>
|
/// <param name="created">created.</param>
|
||||||
/// <param name="updated">updated.</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.Id = id;
|
||||||
this.Name = name;
|
|
||||||
this.Provider = provider;
|
this.Provider = provider;
|
||||||
|
this.Name = name;
|
||||||
this.UserId = userId;
|
this.UserId = userId;
|
||||||
this.Authorized = authorized;
|
this.Authorized = authorized;
|
||||||
this.Fields = fields;
|
this.Fields = fields;
|
||||||
@@ -64,7 +74,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Id
|
/// Gets or Sets Id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "id", EmitDefaultValue = true)]
|
[DataMember(Name = "id", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Id { get; set; }
|
public string Id { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Application
|
/// Application
|
||||||
@@ -41,8 +41,13 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="Application" /> class.
|
/// Initializes a new instance of the <see cref="Application" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[JsonConstructorAttribute]
|
||||||
|
protected Application() { }
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes a new instance of the <see cref="Application" /> class.
|
||||||
|
/// </summary>
|
||||||
/// <param name="id">id.</param>
|
/// <param name="id">id.</param>
|
||||||
/// <param name="name">name.</param>
|
/// <param name="name">name (required).</param>
|
||||||
/// <param name="description">description.</param>
|
/// <param name="description">description.</param>
|
||||||
/// <param name="type">type.</param>
|
/// <param name="type">type.</param>
|
||||||
/// <param name="organizationId">organizationId.</param>
|
/// <param name="organizationId">organizationId.</param>
|
||||||
@@ -50,21 +55,18 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <param name="bannerUrl">bannerUrl.</param>
|
/// <param name="bannerUrl">bannerUrl.</param>
|
||||||
/// <param name="capsuleImageUrl">capsuleImageUrl.</param>
|
/// <param name="capsuleImageUrl">capsuleImageUrl.</param>
|
||||||
/// <param name="libraryImageUrl">libraryImageUrl.</param>
|
/// <param name="libraryImageUrl">libraryImageUrl.</param>
|
||||||
/// <param name="parentId">parentId.</param>
|
|
||||||
/// <param name="slug">slug.</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="created">created.</param>
|
||||||
/// <param name="updated">updated.</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.Name = name;
|
||||||
|
this.Id = id;
|
||||||
this.Description = description;
|
this.Description = description;
|
||||||
this.Type = type;
|
this.Type = type;
|
||||||
this.OrganizationId = organizationId;
|
this.OrganizationId = organizationId;
|
||||||
@@ -72,15 +74,7 @@ namespace Tribufu.Generated.Model
|
|||||||
this.BannerUrl = bannerUrl;
|
this.BannerUrl = bannerUrl;
|
||||||
this.CapsuleImageUrl = capsuleImageUrl;
|
this.CapsuleImageUrl = capsuleImageUrl;
|
||||||
this.LibraryImageUrl = libraryImageUrl;
|
this.LibraryImageUrl = libraryImageUrl;
|
||||||
this.ParentId = parentId;
|
|
||||||
this.Slug = slug;
|
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.Created = created;
|
||||||
this.Updated = updated;
|
this.Updated = updated;
|
||||||
}
|
}
|
||||||
@@ -94,7 +88,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Name
|
/// Gets or Sets Name
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "name", EmitDefaultValue = true)]
|
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -133,60 +127,12 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "library_image_url", EmitDefaultValue = true)]
|
[DataMember(Name = "library_image_url", EmitDefaultValue = true)]
|
||||||
public string LibraryImageUrl { get; set; }
|
public string LibraryImageUrl { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or Sets ParentId
|
|
||||||
/// </summary>
|
|
||||||
[DataMember(Name = "parent_id", EmitDefaultValue = true)]
|
|
||||||
public string ParentId { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Slug
|
/// Gets or Sets Slug
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "slug", EmitDefaultValue = true)]
|
[DataMember(Name = "slug", EmitDefaultValue = true)]
|
||||||
public string Slug { get; set; }
|
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>
|
/// <summary>
|
||||||
/// Gets or Sets Created
|
/// Gets or Sets Created
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -216,15 +162,7 @@ namespace Tribufu.Generated.Model
|
|||||||
sb.Append(" BannerUrl: ").Append(BannerUrl).Append("\n");
|
sb.Append(" BannerUrl: ").Append(BannerUrl).Append("\n");
|
||||||
sb.Append(" CapsuleImageUrl: ").Append(CapsuleImageUrl).Append("\n");
|
sb.Append(" CapsuleImageUrl: ").Append(CapsuleImageUrl).Append("\n");
|
||||||
sb.Append(" LibraryImageUrl: ").Append(LibraryImageUrl).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(" 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(" Created: ").Append(Created).Append("\n");
|
||||||
sb.Append(" Updated: ").Append(Updated).Append("\n");
|
sb.Append(" Updated: ").Append(Updated).Append("\n");
|
||||||
sb.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" });
|
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;
|
yield break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines ApplicationType
|
/// Defines ApplicationType
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// AuthorizeRequest
|
/// AuthorizeRequest
|
||||||
@@ -47,20 +47,35 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="AuthorizeRequest" /> class.
|
/// Initializes a new instance of the <see cref="AuthorizeRequest" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[JsonConstructorAttribute]
|
||||||
|
protected AuthorizeRequest() { }
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes a new instance of the <see cref="AuthorizeRequest" /> class.
|
||||||
|
/// </summary>
|
||||||
/// <param name="responseType">responseType.</param>
|
/// <param name="responseType">responseType.</param>
|
||||||
/// <param name="clientId">clientId.</param>
|
/// <param name="clientId">clientId (required).</param>
|
||||||
/// <param name="codeChallenge">codeChallenge.</param>
|
/// <param name="codeChallenge">codeChallenge.</param>
|
||||||
/// <param name="codeChallengeMethod">codeChallengeMethod.</param>
|
/// <param name="codeChallengeMethod">codeChallengeMethod.</param>
|
||||||
/// <param name="redirectUri">redirectUri.</param>
|
/// <param name="redirectUri">redirectUri (required).</param>
|
||||||
/// <param name="scope">scope.</param>
|
/// <param name="scope">scope.</param>
|
||||||
/// <param name="state">state.</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))
|
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;
|
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.CodeChallenge = codeChallenge;
|
||||||
this.CodeChallengeMethod = codeChallengeMethod;
|
this.CodeChallengeMethod = codeChallengeMethod;
|
||||||
this.RedirectUri = redirectUri;
|
|
||||||
this.Scope = scope;
|
this.Scope = scope;
|
||||||
this.State = state;
|
this.State = state;
|
||||||
}
|
}
|
||||||
@@ -68,7 +83,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets ClientId
|
/// Gets or Sets ClientId
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "client_id", EmitDefaultValue = true)]
|
[DataMember(Name = "client_id", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string ClientId { get; set; }
|
public string ClientId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -80,7 +95,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets RedirectUri
|
/// Gets or Sets RedirectUri
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "redirect_uri", EmitDefaultValue = true)]
|
[DataMember(Name = "redirect_uri", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string RedirectUri { get; set; }
|
public string RedirectUri { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
129
src/Tribufu/Model/ClientInfo.cs
Normal file
129
src/Tribufu/Model/ClientInfo.cs
Normal file
@@ -0,0 +1,129 @@
|
|||||||
|
/*
|
||||||
|
* Tribufu API
|
||||||
|
*
|
||||||
|
* API to access Tribufu services.
|
||||||
|
*
|
||||||
|
* The version of the OpenAPI document: 1.2.6
|
||||||
|
* 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
54
src/Tribufu/Model/ClientType.cs
Normal file
54
src/Tribufu/Model/ClientType.cs
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
/*
|
||||||
|
* Tribufu API
|
||||||
|
*
|
||||||
|
* API to access Tribufu services.
|
||||||
|
*
|
||||||
|
* The version of the OpenAPI document: 1.2.6
|
||||||
|
* 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
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines CodeChallengeMethod
|
/// Defines CodeChallengeMethod
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,38 +22,48 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// LoginRequest
|
/// CodeResponse
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "LoginRequest")]
|
[DataContract(Name = "CodeResponse")]
|
||||||
public partial class LoginRequest : IValidatableObject
|
public partial class CodeResponse : IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="LoginRequest" /> class.
|
/// Initializes a new instance of the <see cref="CodeResponse" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="login">login.</param>
|
[JsonConstructorAttribute]
|
||||||
/// <param name="password">password.</param>
|
protected CodeResponse() { }
|
||||||
public LoginRequest(string login = default(string), string password = default(string))
|
/// <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;
|
// to ensure "code" is required (not null)
|
||||||
this.Password = password;
|
if (code == null)
|
||||||
|
{
|
||||||
|
throw new ArgumentNullException("code is a required property for CodeResponse and cannot be null");
|
||||||
|
}
|
||||||
|
this.Code = code;
|
||||||
|
this.State = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Login
|
/// Gets or Sets Code
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "login", EmitDefaultValue = true)]
|
[DataMember(Name = "code", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Login { get; set; }
|
public string Code { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Password
|
/// Gets or Sets State
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "password", EmitDefaultValue = true)]
|
[DataMember(Name = "state", EmitDefaultValue = true)]
|
||||||
public string Password { get; set; }
|
public string State { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns the string presentation of the object
|
/// Returns the string presentation of the object
|
||||||
@@ -62,9 +72,9 @@ namespace Tribufu.Generated.Model
|
|||||||
public override string ToString()
|
public override string ToString()
|
||||||
{
|
{
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.Append("class LoginRequest {\n");
|
sb.Append("class CodeResponse {\n");
|
||||||
sb.Append(" Login: ").Append(Login).Append("\n");
|
sb.Append(" Code: ").Append(Code).Append("\n");
|
||||||
sb.Append(" Password: ").Append(Password).Append("\n");
|
sb.Append(" State: ").Append(State).Append("\n");
|
||||||
sb.Append("}\n");
|
sb.Append("}\n");
|
||||||
return sb.ToString();
|
return sb.ToString();
|
||||||
}
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,44 +22,49 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// RegisterRequest
|
/// CreateUser
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataContract(Name = "RegisterRequest")]
|
[DataContract(Name = "CreateUser")]
|
||||||
public partial class RegisterRequest : IValidatableObject
|
public partial class CreateUser : IValidatableObject
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="RegisterRequest" /> class.
|
/// Initializes a new instance of the <see cref="CreateUser" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[JsonConstructorAttribute]
|
[JsonConstructorAttribute]
|
||||||
protected RegisterRequest() { }
|
protected CreateUser() { }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="RegisterRequest" /> class.
|
/// Initializes a new instance of the <see cref="CreateUser" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="uuid">uuid.</param>
|
/// <param name="uuid">uuid.</param>
|
||||||
/// <param name="name">name (required).</param>
|
/// <param name="name">name (required).</param>
|
||||||
|
/// <param name="displayName">displayName.</param>
|
||||||
/// <param name="email">email.</param>
|
/// <param name="email">email.</param>
|
||||||
/// <param name="password">password (required).</param>
|
/// <param name="password">password.</param>
|
||||||
public RegisterRequest(Guid? uuid = default(Guid?), string name = default(string), string email = default(string), string password = default(string))
|
/// <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)
|
// to ensure "name" is required (not null)
|
||||||
if (name == 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;
|
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.Uuid = uuid;
|
||||||
|
this.DisplayName = displayName;
|
||||||
this.Email = email;
|
this.Email = email;
|
||||||
|
this.Password = password;
|
||||||
|
this.Language = language;
|
||||||
|
this.Timezone = timezone;
|
||||||
|
this.Currency = currency;
|
||||||
|
this.IpAddress = ipAddress;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -74,6 +79,12 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
|
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or Sets DisplayName
|
||||||
|
/// </summary>
|
||||||
|
[DataMember(Name = "display_name", EmitDefaultValue = true)]
|
||||||
|
public string DisplayName { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Email
|
/// Gets or Sets Email
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -83,9 +94,33 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Password
|
/// Gets or Sets Password
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "password", IsRequired = true, EmitDefaultValue = true)]
|
[DataMember(Name = "password", EmitDefaultValue = true)]
|
||||||
public string Password { get; set; }
|
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>
|
/// <summary>
|
||||||
/// Returns the string presentation of the object
|
/// Returns the string presentation of the object
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -93,11 +128,16 @@ namespace Tribufu.Generated.Model
|
|||||||
public override string ToString()
|
public override string ToString()
|
||||||
{
|
{
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.Append("class RegisterRequest {\n");
|
sb.Append("class CreateUser {\n");
|
||||||
sb.Append(" Uuid: ").Append(Uuid).Append("\n");
|
sb.Append(" Uuid: ").Append(Uuid).Append("\n");
|
||||||
sb.Append(" Name: ").Append(Name).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(" Email: ").Append(Email).Append("\n");
|
||||||
sb.Append(" Password: ").Append(Password).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");
|
sb.Append("}\n");
|
||||||
return sb.ToString();
|
return sb.ToString();
|
||||||
}
|
}
|
||||||
@@ -125,9 +165,9 @@ namespace Tribufu.Generated.Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Name (string) minLength
|
// 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) {
|
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
|
// Email (string) maxLength
|
||||||
if (this.Email != null && this.Email.Length > 255)
|
if (this.Email != null && this.Email.Length > 255)
|
||||||
{
|
{
|
||||||
yield return new ValidationResult("Invalid value for Email, length must be less than 255.", new [] { "Email" });
|
yield return new ValidationResult("Invalid value for Email, length must be less than 255.", new [] { "Email" });
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.Email != null) {
|
// Language (string) maxLength
|
||||||
// Email (string) pattern
|
if (this.Language != null && this.Language.Length > 5)
|
||||||
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" });
|
yield return new ValidationResult("Invalid value for Language, length must be less than 5.", new [] { "Language" });
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Password (string) minLength
|
// Currency (string) maxLength
|
||||||
if (this.Password != null && this.Password.Length < 1)
|
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;
|
yield break;
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// CryptoViewModel
|
/// CryptoViewModel
|
||||||
205
src/Tribufu/Model/File.cs
Normal file
205
src/Tribufu/Model/File.cs
Normal file
@@ -0,0 +1,205 @@
|
|||||||
|
/*
|
||||||
|
* Tribufu API
|
||||||
|
*
|
||||||
|
* API to access Tribufu services.
|
||||||
|
*
|
||||||
|
* The version of the OpenAPI document: 1.2.6
|
||||||
|
* 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>
|
||||||
|
/// File
|
||||||
|
/// </summary>
|
||||||
|
[DataContract(Name = "File")]
|
||||||
|
public partial class File : IValidatableObject
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes a new instance of the <see cref="File" /> class.
|
||||||
|
/// </summary>
|
||||||
|
[JsonConstructorAttribute]
|
||||||
|
protected File() { }
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes a new instance of the <see cref="File" /> 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="hash">hash.</param>
|
||||||
|
/// <param name="etag">etag.</param>
|
||||||
|
/// <param name="size">size.</param>
|
||||||
|
/// <param name="created">created.</param>
|
||||||
|
/// <param name="updated">updated.</param>
|
||||||
|
public File(string id = default(string), string name = default(string), string contentType = default(string), string url = default(string), string hash = default(string), string etag = default(string), long size = default(long), 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 File 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 File 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 File and cannot be null");
|
||||||
|
}
|
||||||
|
this.Url = url;
|
||||||
|
this.Id = id;
|
||||||
|
this.Hash = hash;
|
||||||
|
this.Etag = etag;
|
||||||
|
this.Size = size;
|
||||||
|
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 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 Size
|
||||||
|
/// </summary>
|
||||||
|
[DataMember(Name = "size", EmitDefaultValue = false)]
|
||||||
|
public long Size { 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 File {\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(" Hash: ").Append(Hash).Append("\n");
|
||||||
|
sb.Append(" Etag: ").Append(Etag).Append("\n");
|
||||||
|
sb.Append(" Size: ").Append(Size).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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Game
|
/// Game
|
||||||
@@ -41,19 +41,13 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="Game" /> class.
|
/// Initializes a new instance of the <see cref="Game" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="gamePort">gamePort.</param>
|
[JsonConstructorAttribute]
|
||||||
/// <param name="queryPort">queryPort.</param>
|
protected Game() { }
|
||||||
/// <param name="rconPort">rconPort.</param>
|
/// <summary>
|
||||||
/// <param name="serverCount">serverCount.</param>
|
/// Initializes a new instance of the <see cref="Game" /> class.
|
||||||
/// <param name="steamAppId">steamAppId.</param>
|
/// </summary>
|
||||||
/// <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>
|
|
||||||
/// <param name="id">id.</param>
|
/// <param name="id">id.</param>
|
||||||
/// <param name="name">name.</param>
|
/// <param name="name">name (required).</param>
|
||||||
/// <param name="description">description.</param>
|
/// <param name="description">description.</param>
|
||||||
/// <param name="type">type.</param>
|
/// <param name="type">type.</param>
|
||||||
/// <param name="organizationId">organizationId.</param>
|
/// <param name="organizationId">organizationId.</param>
|
||||||
@@ -61,32 +55,25 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <param name="bannerUrl">bannerUrl.</param>
|
/// <param name="bannerUrl">bannerUrl.</param>
|
||||||
/// <param name="capsuleImageUrl">capsuleImageUrl.</param>
|
/// <param name="capsuleImageUrl">capsuleImageUrl.</param>
|
||||||
/// <param name="libraryImageUrl">libraryImageUrl.</param>
|
/// <param name="libraryImageUrl">libraryImageUrl.</param>
|
||||||
/// <param name="parentId">parentId.</param>
|
|
||||||
/// <param name="slug">slug.</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="created">created.</param>
|
||||||
/// <param name="updated">updated.</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;
|
// to ensure "name" is required (not null)
|
||||||
this.QueryPort = queryPort;
|
if (name == null)
|
||||||
this.RconPort = rconPort;
|
{
|
||||||
this.ServerCount = serverCount;
|
throw new ArgumentNullException("name is a required property for Game and cannot be null");
|
||||||
this.SteamAppId = steamAppId;
|
}
|
||||||
this.SteamServerAppId = steamServerAppId;
|
|
||||||
this.EnableServers = enableServers;
|
|
||||||
this.RustGamedigId = rustGamedigId;
|
|
||||||
this.NodeGamedigId = nodeGamedigId;
|
|
||||||
this.ServerConnectUrl = serverConnectUrl;
|
|
||||||
this.ServerTags = serverTags;
|
|
||||||
this.Id = id;
|
|
||||||
this.Name = name;
|
this.Name = name;
|
||||||
|
this.Id = id;
|
||||||
this.Description = description;
|
this.Description = description;
|
||||||
this.Type = type;
|
this.Type = type;
|
||||||
this.OrganizationId = organizationId;
|
this.OrganizationId = organizationId;
|
||||||
@@ -94,85 +81,18 @@ namespace Tribufu.Generated.Model
|
|||||||
this.BannerUrl = bannerUrl;
|
this.BannerUrl = bannerUrl;
|
||||||
this.CapsuleImageUrl = capsuleImageUrl;
|
this.CapsuleImageUrl = capsuleImageUrl;
|
||||||
this.LibraryImageUrl = libraryImageUrl;
|
this.LibraryImageUrl = libraryImageUrl;
|
||||||
this.ParentId = parentId;
|
|
||||||
this.Slug = slug;
|
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.Created = created;
|
||||||
this.Updated = updated;
|
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>
|
/// <summary>
|
||||||
/// Gets or Sets Id
|
/// Gets or Sets Id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -182,7 +102,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Name
|
/// Gets or Sets Name
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "name", EmitDefaultValue = true)]
|
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -221,60 +141,12 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "library_image_url", EmitDefaultValue = true)]
|
[DataMember(Name = "library_image_url", EmitDefaultValue = true)]
|
||||||
public string LibraryImageUrl { get; set; }
|
public string LibraryImageUrl { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or Sets ParentId
|
|
||||||
/// </summary>
|
|
||||||
[DataMember(Name = "parent_id", EmitDefaultValue = true)]
|
|
||||||
public string ParentId { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Slug
|
/// Gets or Sets Slug
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "slug", EmitDefaultValue = true)]
|
[DataMember(Name = "slug", EmitDefaultValue = true)]
|
||||||
public string Slug { get; set; }
|
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>
|
/// <summary>
|
||||||
/// Gets or Sets Created
|
/// Gets or Sets Created
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -287,6 +159,48 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "updated", EmitDefaultValue = true)]
|
[DataMember(Name = "updated", EmitDefaultValue = true)]
|
||||||
public DateTime? Updated { get; set; }
|
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>
|
/// <summary>
|
||||||
/// Returns the string presentation of the object
|
/// Returns the string presentation of the object
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -295,17 +209,6 @@ namespace Tribufu.Generated.Model
|
|||||||
{
|
{
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.Append("class Game {\n");
|
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(" Id: ").Append(Id).Append("\n");
|
||||||
sb.Append(" Name: ").Append(Name).Append("\n");
|
sb.Append(" Name: ").Append(Name).Append("\n");
|
||||||
sb.Append(" Description: ").Append(Description).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(" BannerUrl: ").Append(BannerUrl).Append("\n");
|
||||||
sb.Append(" CapsuleImageUrl: ").Append(CapsuleImageUrl).Append("\n");
|
sb.Append(" CapsuleImageUrl: ").Append(CapsuleImageUrl).Append("\n");
|
||||||
sb.Append(" LibraryImageUrl: ").Append(LibraryImageUrl).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(" 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(" Created: ").Append(Created).Append("\n");
|
||||||
sb.Append(" Updated: ").Append(Updated).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");
|
sb.Append("}\n");
|
||||||
return sb.ToString();
|
return sb.ToString();
|
||||||
}
|
}
|
||||||
@@ -346,24 +248,6 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <returns>Validation Result</returns>
|
/// <returns>Validation Result</returns>
|
||||||
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
|
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
|
// Name (string) maxLength
|
||||||
if (this.Name != null && this.Name.Length > 75)
|
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" });
|
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;
|
yield break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// GameServer
|
/// GameServer
|
||||||
@@ -32,77 +32,66 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataContract(Name = "GameServer")]
|
[DataContract(Name = "GameServer")]
|
||||||
public partial class GameServer : IValidatableObject
|
public partial class GameServer : IValidatableObject
|
||||||
{
|
{
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Status
|
/// Initializes a new instance of the <see cref="GameServer" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "status", EmitDefaultValue = false)]
|
[JsonConstructorAttribute]
|
||||||
public ServerStatus? Status { get; set; }
|
protected GameServer() { }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="GameServer" /> class.
|
/// Initializes a new instance of the <see cref="GameServer" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="id">id.</param>
|
/// <param name="id">id.</param>
|
||||||
/// <param name="name">name.</param>
|
/// <param name="name">name (required).</param>
|
||||||
/// <param name="description">description.</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="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="gameId">gameId.</param>
|
||||||
/// <param name="gameIconUrl">gameIconUrl.</param>
|
/// <param name="gameIconUrl">gameIconUrl.</param>
|
||||||
/// <param name="varVersion">varVersion.</param>
|
|
||||||
/// <param name="featured">featured.</param>
|
|
||||||
/// <param name="clusterId">clusterId.</param>
|
/// <param name="clusterId">clusterId.</param>
|
||||||
/// <param name="websiteUrl">websiteUrl.</param>
|
/// <param name="websiteUrl">websiteUrl.</param>
|
||||||
/// <param name="bannerUrl">bannerUrl.</param>
|
/// <param name="bannerUrl">bannerUrl.</param>
|
||||||
/// <param name="ownerId">ownerId.</param>
|
|
||||||
/// <param name="uptime">uptime.</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="country">country.</param>
|
||||||
/// <param name="steam">steam.</param>
|
/// <param name="steam">steam.</param>
|
||||||
/// <param name="discordServerId">discordServerId.</param>
|
/// <param name="discordServerId">discordServerId.</param>
|
||||||
/// <param name="youtubeVideoUrl">youtubeVideoUrl.</param>
|
/// <param name="youtubeVideoUrl">youtubeVideoUrl.</param>
|
||||||
/// <param name="tags">tags.</param>
|
|
||||||
/// <param name="commentCount">commentCount.</param>
|
|
||||||
/// <param name="created">created.</param>
|
/// <param name="created">created.</param>
|
||||||
/// <param name="updated">updated.</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.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.Address = address;
|
||||||
this.GamePort = gamePort;
|
|
||||||
this.QueryPort = queryPort;
|
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.GameId = gameId;
|
||||||
this.GameIconUrl = gameIconUrl;
|
this.GameIconUrl = gameIconUrl;
|
||||||
this.VarVersion = varVersion;
|
|
||||||
this.Featured = featured;
|
|
||||||
this.ClusterId = clusterId;
|
this.ClusterId = clusterId;
|
||||||
this.WebsiteUrl = websiteUrl;
|
this.WebsiteUrl = websiteUrl;
|
||||||
this.BannerUrl = bannerUrl;
|
this.BannerUrl = bannerUrl;
|
||||||
this.OwnerId = ownerId;
|
|
||||||
this.Uptime = uptime;
|
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.Country = country;
|
||||||
this.Steam = steam;
|
this.Steam = steam;
|
||||||
this.DiscordServerId = discordServerId;
|
this.DiscordServerId = discordServerId;
|
||||||
this.YoutubeVideoUrl = youtubeVideoUrl;
|
this.YoutubeVideoUrl = youtubeVideoUrl;
|
||||||
this.Tags = tags;
|
|
||||||
this.CommentCount = commentCount;
|
|
||||||
this.Created = created;
|
this.Created = created;
|
||||||
this.Updated = updated;
|
this.Updated = updated;
|
||||||
}
|
}
|
||||||
@@ -116,7 +105,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Name
|
/// Gets or Sets Name
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "name", EmitDefaultValue = true)]
|
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -125,12 +114,24 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "description", EmitDefaultValue = true)]
|
[DataMember(Name = "description", EmitDefaultValue = true)]
|
||||||
public string Description { get; set; }
|
public string Description { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or Sets OwnerId
|
||||||
|
/// </summary>
|
||||||
|
[DataMember(Name = "owner_id", EmitDefaultValue = true)]
|
||||||
|
public string OwnerId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Address
|
/// Gets or Sets Address
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "address", EmitDefaultValue = true)]
|
[DataMember(Name = "address", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Address { get; set; }
|
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>
|
/// <summary>
|
||||||
/// Gets or Sets GamePort
|
/// Gets or Sets GamePort
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -138,10 +139,16 @@ namespace Tribufu.Generated.Model
|
|||||||
public int? GamePort { get; set; }
|
public int? GamePort { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets QueryPort
|
/// Gets or Sets Map
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "query_port", EmitDefaultValue = false)]
|
[DataMember(Name = "map", EmitDefaultValue = true)]
|
||||||
public int QueryPort { get; set; }
|
public string Map { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or Sets VarVersion
|
||||||
|
/// </summary>
|
||||||
|
[DataMember(Name = "version", EmitDefaultValue = true)]
|
||||||
|
public string VarVersion { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets GameId
|
/// Gets or Sets GameId
|
||||||
@@ -155,18 +162,6 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "game_icon_url", EmitDefaultValue = true)]
|
[DataMember(Name = "game_icon_url", EmitDefaultValue = true)]
|
||||||
public string GameIconUrl { get; set; }
|
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>
|
/// <summary>
|
||||||
/// Gets or Sets ClusterId
|
/// Gets or Sets ClusterId
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -185,60 +180,12 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "banner_url", EmitDefaultValue = true)]
|
[DataMember(Name = "banner_url", EmitDefaultValue = true)]
|
||||||
public string BannerUrl { get; set; }
|
public string BannerUrl { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or Sets OwnerId
|
|
||||||
/// </summary>
|
|
||||||
[DataMember(Name = "owner_id", EmitDefaultValue = true)]
|
|
||||||
public string OwnerId { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Uptime
|
/// Gets or Sets Uptime
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "uptime", EmitDefaultValue = false)]
|
[DataMember(Name = "uptime", EmitDefaultValue = false)]
|
||||||
public double Uptime { get; set; }
|
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>
|
/// <summary>
|
||||||
/// Gets or Sets Country
|
/// Gets or Sets Country
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -263,18 +210,6 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "youtube_video_url", EmitDefaultValue = true)]
|
[DataMember(Name = "youtube_video_url", EmitDefaultValue = true)]
|
||||||
public string YoutubeVideoUrl { get; set; }
|
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>
|
/// <summary>
|
||||||
/// Gets or Sets Created
|
/// Gets or Sets Created
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -298,32 +233,22 @@ namespace Tribufu.Generated.Model
|
|||||||
sb.Append(" Id: ").Append(Id).Append("\n");
|
sb.Append(" Id: ").Append(Id).Append("\n");
|
||||||
sb.Append(" Name: ").Append(Name).Append("\n");
|
sb.Append(" Name: ").Append(Name).Append("\n");
|
||||||
sb.Append(" Description: ").Append(Description).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(" Address: ").Append(Address).Append("\n");
|
||||||
sb.Append(" GamePort: ").Append(GamePort).Append("\n");
|
|
||||||
sb.Append(" QueryPort: ").Append(QueryPort).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(" GameId: ").Append(GameId).Append("\n");
|
||||||
sb.Append(" GameIconUrl: ").Append(GameIconUrl).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(" ClusterId: ").Append(ClusterId).Append("\n");
|
||||||
sb.Append(" WebsiteUrl: ").Append(WebsiteUrl).Append("\n");
|
sb.Append(" WebsiteUrl: ").Append(WebsiteUrl).Append("\n");
|
||||||
sb.Append(" BannerUrl: ").Append(BannerUrl).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(" 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(" Country: ").Append(Country).Append("\n");
|
||||||
sb.Append(" Steam: ").Append(Steam).Append("\n");
|
sb.Append(" Steam: ").Append(Steam).Append("\n");
|
||||||
sb.Append(" DiscordServerId: ").Append(DiscordServerId).Append("\n");
|
sb.Append(" DiscordServerId: ").Append(DiscordServerId).Append("\n");
|
||||||
sb.Append(" YoutubeVideoUrl: ").Append(YoutubeVideoUrl).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(" Created: ").Append(Created).Append("\n");
|
||||||
sb.Append(" Updated: ").Append(Updated).Append("\n");
|
sb.Append(" Updated: ").Append(Updated).Append("\n");
|
||||||
sb.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" });
|
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
|
// VarVersion (string) maxLength
|
||||||
if (this.VarVersion != null && this.VarVersion.Length > 45)
|
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" });
|
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
|
// Country (string) maxLength
|
||||||
if (this.Country != null && this.Country.Length > 2)
|
if (this.Country != null && this.Country.Length > 2)
|
||||||
{
|
{
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// GameServerCluster
|
/// GameServerCluster
|
||||||
@@ -32,11 +32,16 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataContract(Name = "GameServerCluster")]
|
[DataContract(Name = "GameServerCluster")]
|
||||||
public partial class GameServerCluster : IValidatableObject
|
public partial class GameServerCluster : IValidatableObject
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes a new instance of the <see cref="GameServerCluster" /> class.
|
||||||
|
/// </summary>
|
||||||
|
[JsonConstructorAttribute]
|
||||||
|
protected GameServerCluster() { }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="GameServerCluster" /> class.
|
/// Initializes a new instance of the <see cref="GameServerCluster" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="id">id.</param>
|
/// <param name="id">id.</param>
|
||||||
/// <param name="name">name.</param>
|
/// <param name="name">name (required).</param>
|
||||||
/// <param name="description">description.</param>
|
/// <param name="description">description.</param>
|
||||||
/// <param name="gameId">gameId.</param>
|
/// <param name="gameId">gameId.</param>
|
||||||
/// <param name="websiteUrl">websiteUrl.</param>
|
/// <param name="websiteUrl">websiteUrl.</param>
|
||||||
@@ -51,8 +56,13 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <param name="updated">updated.</param>
|
/// <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?))
|
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.Name = name;
|
||||||
|
this.Id = id;
|
||||||
this.Description = description;
|
this.Description = description;
|
||||||
this.GameId = gameId;
|
this.GameId = gameId;
|
||||||
this.WebsiteUrl = websiteUrl;
|
this.WebsiteUrl = websiteUrl;
|
||||||
@@ -76,7 +86,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Name
|
/// Gets or Sets Name
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "name", EmitDefaultValue = true)]
|
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
152
src/Tribufu/Model/GameServerQuery.cs
Normal file
152
src/Tribufu/Model/GameServerQuery.cs
Normal file
@@ -0,0 +1,152 @@
|
|||||||
|
/*
|
||||||
|
* Tribufu API
|
||||||
|
*
|
||||||
|
* API to access Tribufu services.
|
||||||
|
*
|
||||||
|
* The version of the OpenAPI document: 1.2.6
|
||||||
|
* 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,15 +22,15 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines ServerStatus
|
/// Defines GameServerStatus
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[JsonConverter(typeof(StringEnumConverter))]
|
[JsonConverter(typeof(StringEnumConverter))]
|
||||||
public enum ServerStatus
|
public enum GameServerStatus
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Enum Unknown for value: unknown
|
/// Enum Unknown for value: unknown
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines GrantType
|
/// Defines GrantType
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Group
|
/// Group
|
||||||
@@ -32,12 +32,17 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataContract(Name = "Group")]
|
[DataContract(Name = "Group")]
|
||||||
public partial class Group : IValidatableObject
|
public partial class Group : IValidatableObject
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes a new instance of the <see cref="Group" /> class.
|
||||||
|
/// </summary>
|
||||||
|
[JsonConstructorAttribute]
|
||||||
|
protected Group() { }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="Group" /> class.
|
/// Initializes a new instance of the <see cref="Group" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="id">id.</param>
|
/// <param name="id">id.</param>
|
||||||
/// <param name="uuid">uuid.</param>
|
/// <param name="uuid">uuid.</param>
|
||||||
/// <param name="name">name.</param>
|
/// <param name="name">name (required).</param>
|
||||||
/// <param name="tag">tag.</param>
|
/// <param name="tag">tag.</param>
|
||||||
/// <param name="description">description.</param>
|
/// <param name="description">description.</param>
|
||||||
/// <param name="type">type.</param>
|
/// <param name="type">type.</param>
|
||||||
@@ -53,9 +58,14 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <param name="updated">updated.</param>
|
/// <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?))
|
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.Id = id;
|
||||||
this.Uuid = uuid;
|
this.Uuid = uuid;
|
||||||
this.Name = name;
|
|
||||||
this.Tag = tag;
|
this.Tag = tag;
|
||||||
this.Description = description;
|
this.Description = description;
|
||||||
this.Type = type;
|
this.Type = type;
|
||||||
@@ -86,7 +96,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Name
|
/// Gets or Sets Name
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "name", EmitDefaultValue = true)]
|
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// GroupGame
|
/// GroupGame
|
||||||
@@ -35,7 +35,12 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="GroupGame" /> class.
|
/// Initializes a new instance of the <see cref="GroupGame" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="groupId">groupId.</param>
|
[JsonConstructorAttribute]
|
||||||
|
protected GroupGame() { }
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes a new instance of the <see cref="GroupGame" /> class.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="groupId">groupId (required).</param>
|
||||||
/// <param name="group">group.</param>
|
/// <param name="group">group.</param>
|
||||||
/// <param name="applicationId">applicationId.</param>
|
/// <param name="applicationId">applicationId.</param>
|
||||||
/// <param name="application">application.</param>
|
/// <param name="application">application.</param>
|
||||||
@@ -44,6 +49,11 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <param name="lastUsed">lastUsed.</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 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?))
|
||||||
{
|
{
|
||||||
|
// to ensure "groupId" is required (not null)
|
||||||
|
if (groupId == null)
|
||||||
|
{
|
||||||
|
throw new ArgumentNullException("groupId is a required property for GroupGame and cannot be null");
|
||||||
|
}
|
||||||
this.GroupId = groupId;
|
this.GroupId = groupId;
|
||||||
this.Group = group;
|
this.Group = group;
|
||||||
this.ApplicationId = applicationId;
|
this.ApplicationId = applicationId;
|
||||||
@@ -56,7 +66,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets GroupId
|
/// Gets or Sets GroupId
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "group_id", EmitDefaultValue = false)]
|
[DataMember(Name = "group_id", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string GroupId { get; set; }
|
public string GroupId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// GroupMember
|
/// GroupMember
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines GroupRank
|
/// Defines GroupRank
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// HashViewModel
|
/// HashViewModel
|
||||||
@@ -35,16 +35,26 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="HashViewModel" /> class.
|
/// Initializes a new instance of the <see cref="HashViewModel" /> class.
|
||||||
/// </summary>
|
/// </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))
|
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;
|
this.Value = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Value
|
/// Gets or Sets Value
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "value", EmitDefaultValue = true)]
|
[DataMember(Name = "value", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Value { get; set; }
|
public string Value { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// IntrospectRequest
|
/// IntrospectRequest
|
||||||
@@ -36,15 +36,25 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets TokenTypeHint
|
/// Gets or Sets TokenTypeHint
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "token_type_hint", EmitDefaultValue = false)]
|
[DataMember(Name = "token_type_hint", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public TokenHintType? TokenTypeHint { get; set; }
|
public TokenHintType TokenTypeHint { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="IntrospectRequest" /> class.
|
/// Initializes a new instance of the <see cref="IntrospectRequest" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="token">token.</param>
|
[JsonConstructorAttribute]
|
||||||
/// <param name="tokenTypeHint">tokenTypeHint.</param>
|
protected IntrospectRequest() { }
|
||||||
public IntrospectRequest(string token = default(string), TokenHintType? tokenTypeHint = default(TokenHintType?))
|
/// <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.Token = token;
|
||||||
this.TokenTypeHint = tokenTypeHint;
|
this.TokenTypeHint = tokenTypeHint;
|
||||||
}
|
}
|
||||||
@@ -52,7 +62,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Token
|
/// Gets or Sets Token
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "token", EmitDefaultValue = true)]
|
[DataMember(Name = "token", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Token { get; set; }
|
public string Token { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
182
src/Tribufu/Model/IntrospectResponse.cs
Normal file
182
src/Tribufu/Model/IntrospectResponse.cs
Normal file
@@ -0,0 +1,182 @@
|
|||||||
|
/*
|
||||||
|
* Tribufu API
|
||||||
|
*
|
||||||
|
* API to access Tribufu services.
|
||||||
|
*
|
||||||
|
* The version of the OpenAPI document: 1.2.6
|
||||||
|
* 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// IpAddress
|
/// IpAddress
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// LeaderboardItem
|
/// LeaderboardItem
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines LeaderboardOrder
|
/// Defines LeaderboardOrder
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines LoginProvider
|
/// Defines LoginProvider
|
||||||
225
src/Tribufu/Model/ModelClient.cs
Normal file
225
src/Tribufu/Model/ModelClient.cs
Normal file
@@ -0,0 +1,225 @@
|
|||||||
|
/*
|
||||||
|
* Tribufu API
|
||||||
|
*
|
||||||
|
* API to access Tribufu services.
|
||||||
|
*
|
||||||
|
* The version of the OpenAPI document: 1.2.6
|
||||||
|
* 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Tribufu API
|
* 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.2.6
|
||||||
* Contact: contact@tribufu.com
|
* Contact: contact@tribufu.com
|
||||||
* Generated by: https://github.com/openapitools/openapi-generator.git
|
* Generated by: https://github.com/openapitools/openapi-generator.git
|
||||||
*/
|
*/
|
||||||
@@ -22,9 +22,9 @@ using Newtonsoft.Json;
|
|||||||
using Newtonsoft.Json.Converters;
|
using Newtonsoft.Json.Converters;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using OpenAPIDateConverter = Tribufu.Generated.Client.OpenAPIDateConverter;
|
using OpenAPIDateConverter = Tribufu.Client.OpenAPIDateConverter;
|
||||||
|
|
||||||
namespace Tribufu.Generated.Model
|
namespace Tribufu.Model
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Package
|
/// Package
|
||||||
@@ -32,33 +32,48 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataContract(Name = "Package")]
|
[DataContract(Name = "Package")]
|
||||||
public partial class Package : IValidatableObject
|
public partial class Package : IValidatableObject
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes a new instance of the <see cref="Package" /> class.
|
||||||
|
/// </summary>
|
||||||
|
[JsonConstructorAttribute]
|
||||||
|
protected Package() { }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="Package" /> class.
|
/// Initializes a new instance of the <see cref="Package" /> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="id">id.</param>
|
/// <param name="id">id.</param>
|
||||||
/// <param name="name">name.</param>
|
/// <param name="name">name (required).</param>
|
||||||
/// <param name="description">description.</param>
|
/// <param name="description">description.</param>
|
||||||
/// <param name="imageUrl">imageUrl.</param>
|
|
||||||
/// <param name="authorId">authorId.</param>
|
/// <param name="authorId">authorId.</param>
|
||||||
/// <param name="varVersion">varVersion.</param>
|
/// <param name="imageUrl">imageUrl (required).</param>
|
||||||
/// <param name="fileUrl">fileUrl.</param>
|
/// <param name="applicationId">applicationId.</param>
|
||||||
/// <param name="rawSize">rawSize.</param>
|
/// <param name="categoryId">categoryId.</param>
|
||||||
/// <param name="downloadCount">downloadCount.</param>
|
/// <param name="downloadCount">downloadCount.</param>
|
||||||
/// <param name="lastDownload">lastDownload.</param>
|
/// <param name="lastDownload">lastDownload.</param>
|
||||||
|
/// <param name="releases">releases.</param>
|
||||||
/// <param name="created">created.</param>
|
/// <param name="created">created.</param>
|
||||||
/// <param name="updated">updated.</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.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.ImageUrl = imageUrl;
|
||||||
|
this.Id = id;
|
||||||
|
this.Description = description;
|
||||||
this.AuthorId = authorId;
|
this.AuthorId = authorId;
|
||||||
this.VarVersion = varVersion;
|
this.ApplicationId = applicationId;
|
||||||
this.FileUrl = fileUrl;
|
this.CategoryId = categoryId;
|
||||||
this.RawSize = rawSize;
|
|
||||||
this.DownloadCount = downloadCount;
|
this.DownloadCount = downloadCount;
|
||||||
this.LastDownload = lastDownload;
|
this.LastDownload = lastDownload;
|
||||||
|
this.Releases = releases;
|
||||||
this.Created = created;
|
this.Created = created;
|
||||||
this.Updated = updated;
|
this.Updated = updated;
|
||||||
}
|
}
|
||||||
@@ -72,7 +87,7 @@ namespace Tribufu.Generated.Model
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Name
|
/// Gets or Sets Name
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "name", EmitDefaultValue = true)]
|
[DataMember(Name = "name", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -81,12 +96,6 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "description", EmitDefaultValue = true)]
|
[DataMember(Name = "description", EmitDefaultValue = true)]
|
||||||
public string Description { get; set; }
|
public string Description { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or Sets ImageUrl
|
|
||||||
/// </summary>
|
|
||||||
[DataMember(Name = "image_url", EmitDefaultValue = true)]
|
|
||||||
public string ImageUrl { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets AuthorId
|
/// Gets or Sets AuthorId
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -94,22 +103,22 @@ namespace Tribufu.Generated.Model
|
|||||||
public string AuthorId { get; set; }
|
public string AuthorId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets VarVersion
|
/// Gets or Sets ImageUrl
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "version", EmitDefaultValue = true)]
|
[DataMember(Name = "image_url", IsRequired = true, EmitDefaultValue = true)]
|
||||||
public string VarVersion { get; set; }
|
public string ImageUrl { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets FileUrl
|
/// Gets or Sets ApplicationId
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "file_url", EmitDefaultValue = true)]
|
[DataMember(Name = "application_id", EmitDefaultValue = true)]
|
||||||
public string FileUrl { get; set; }
|
public string ApplicationId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets RawSize
|
/// Gets or Sets CategoryId
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataMember(Name = "raw_size", EmitDefaultValue = false)]
|
[DataMember(Name = "category_id", EmitDefaultValue = true)]
|
||||||
public double RawSize { get; set; }
|
public string CategoryId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets DownloadCount
|
/// Gets or Sets DownloadCount
|
||||||
@@ -123,6 +132,12 @@ namespace Tribufu.Generated.Model
|
|||||||
[DataMember(Name = "last_download", EmitDefaultValue = true)]
|
[DataMember(Name = "last_download", EmitDefaultValue = true)]
|
||||||
public DateTime? LastDownload { get; set; }
|
public DateTime? LastDownload { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or Sets Releases
|
||||||
|
/// </summary>
|
||||||
|
[DataMember(Name = "releases", EmitDefaultValue = true)]
|
||||||
|
public List<PackageRelease> Releases { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets Created
|
/// Gets or Sets Created
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -146,13 +161,13 @@ namespace Tribufu.Generated.Model
|
|||||||
sb.Append(" Id: ").Append(Id).Append("\n");
|
sb.Append(" Id: ").Append(Id).Append("\n");
|
||||||
sb.Append(" Name: ").Append(Name).Append("\n");
|
sb.Append(" Name: ").Append(Name).Append("\n");
|
||||||
sb.Append(" Description: ").Append(Description).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(" AuthorId: ").Append(AuthorId).Append("\n");
|
||||||
sb.Append(" VarVersion: ").Append(VarVersion).Append("\n");
|
sb.Append(" ImageUrl: ").Append(ImageUrl).Append("\n");
|
||||||
sb.Append(" FileUrl: ").Append(FileUrl).Append("\n");
|
sb.Append(" ApplicationId: ").Append(ApplicationId).Append("\n");
|
||||||
sb.Append(" RawSize: ").Append(RawSize).Append("\n");
|
sb.Append(" CategoryId: ").Append(CategoryId).Append("\n");
|
||||||
sb.Append(" DownloadCount: ").Append(DownloadCount).Append("\n");
|
sb.Append(" DownloadCount: ").Append(DownloadCount).Append("\n");
|
||||||
sb.Append(" LastDownload: ").Append(LastDownload).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(" Created: ").Append(Created).Append("\n");
|
||||||
sb.Append(" Updated: ").Append(Updated).Append("\n");
|
sb.Append(" Updated: ").Append(Updated).Append("\n");
|
||||||
sb.Append("}\n");
|
sb.Append("}\n");
|
||||||
159
src/Tribufu/Model/PackageRelease.cs
Normal file
159
src/Tribufu/Model/PackageRelease.cs
Normal file
@@ -0,0 +1,159 @@
|
|||||||
|
/*
|
||||||
|
* Tribufu API
|
||||||
|
*
|
||||||
|
* API to access Tribufu services.
|
||||||
|
*
|
||||||
|
* The version of the OpenAPI document: 1.2.6
|
||||||
|
* 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<File> 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user