Updates to API Client
This commit is contained in:
@@ -5,16 +5,16 @@ using System;
|
||||
using System.IO;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Skuld.API
|
||||
namespace Skuld.API.Client;
|
||||
|
||||
public interface ISkuldAPIClient : IDisposable
|
||||
{
|
||||
public interface ISkuldAPIClient : IDisposable
|
||||
{
|
||||
#region Guild
|
||||
/// <summary>
|
||||
/// Get a guild
|
||||
/// </summary>
|
||||
/// <param name="id">Guild Id</param>
|
||||
/// <returns><see cref="EventResult{T}"/> wrapped <see cref="Guild"/></returns>
|
||||
/// <returns><see cref="EventResult"/> wrapped <see cref="Guild"/></returns>
|
||||
[Get("/guild/{id}")]
|
||||
public Task<EventResult> GetGuildAsync([Path] ulong id);
|
||||
#endregion Guild
|
||||
@@ -24,7 +24,7 @@ namespace Skuld.API
|
||||
/// Get a user
|
||||
/// </summary>
|
||||
/// <param name="id">User Id</param>
|
||||
/// <returns><see cref="EventResult{T}"/> wrapped <see cref="User"/></returns>
|
||||
/// <returns><see cref="EventResult"/> wrapped <see cref="User"/></returns>
|
||||
[Get("/user/{id}")]
|
||||
public Task<EventResult> GetUserAsync([Path] ulong id);
|
||||
#endregion User
|
||||
@@ -35,7 +35,7 @@ namespace Skuld.API
|
||||
/// </summary>
|
||||
/// <param name="guildId">Guild Id, Accepts 0 for all</param>
|
||||
/// <param name="page">%10 offset page</param>
|
||||
/// <returns><see cref="EventResult{T}"/> wrapped <see cref="UserExperience"/></returns>
|
||||
/// <returns><see cref="EventResult"/> wrapped <see cref="UserExperience"/></returns>
|
||||
[Get("/experience/{guildId}/{page}")]
|
||||
public Task<EventResult> GetExperienceLeaderboardAsync([Path] ulong guildId, [Path] int page = 0);
|
||||
#endregion Experience
|
||||
@@ -46,7 +46,7 @@ namespace Skuld.API
|
||||
/// </summary>
|
||||
/// <param name="guildId">Guild Id, Accepts 0 for all</param>
|
||||
/// <param name="page">%10 offset page</param>
|
||||
/// <returns><see cref="EventResult{T}"/> wrapped <see cref="User"/></returns>
|
||||
/// <returns><see cref="EventResult"/> wrapped <see cref="User"/></returns>
|
||||
[Get("/money/{guildId}/{page}")]
|
||||
public Task<EventResult> GetMoneyLeaderboardAsync([Path] ulong guildId, [Path] int page = 0);
|
||||
#endregion Money
|
||||
@@ -117,5 +117,4 @@ namespace Skuld.API
|
||||
|
||||
[Get("/image/magik")]
|
||||
public Task<Stream> GetLiquidRescaledAsync([Query] string image);
|
||||
}
|
||||
}
|
||||
16
Skuld.API.Client.csproj
Normal file
16
Skuld.API.Client.csproj
Normal file
@@ -0,0 +1,16 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="RestEase" Version="1.5.7" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\submodules\Skuld.Core\Skuld.Core\Skuld.Core.csproj" />
|
||||
<ProjectReference Include="..\..\submodules\Skuld.Models\Skuld.Models\Skuld.Models.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -1,15 +0,0 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="RestEase" Version="1.5.5" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Skuld.Models\Skuld.Models\Skuld.Models.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
17
SkuldAPI.cs
17
SkuldAPI.cs
@@ -7,10 +7,10 @@ using System.Net.Http;
|
||||
using System.Reflection;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Skuld.API
|
||||
namespace Skuld.API.Client;
|
||||
|
||||
public class SkuldAPI : ISkuldAPIClient, IDisposable
|
||||
{
|
||||
public class SkuldAPI : ISkuldAPIClient, IDisposable
|
||||
{
|
||||
public static string WrapperVersion { get; } =
|
||||
typeof(SkuldAPI).GetTypeInfo().Assembly.GetCustomAttribute<AssemblyInformationalVersionAttribute>()?.InformationalVersion ??
|
||||
typeof(SkuldAPI).GetTypeInfo().Assembly.GetName().Version.ToString(3) ??
|
||||
@@ -36,7 +36,7 @@ namespace Skuld.API
|
||||
{
|
||||
BaseAddress = new Uri(ApiBase)
|
||||
};
|
||||
httpClient.DefaultRequestHeaders.Add("User-Agent", $"Skuld.API.Client/v{WrapperVersion} (https://github.com/skuldbot/Skuld)");
|
||||
httpClient.DefaultRequestHeaders.Add("User-Agent", $"Skuld.API.Client.Client/v{WrapperVersion} (https://github.com/skuldbot/Skuld)");
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(Token))
|
||||
{
|
||||
@@ -59,7 +59,7 @@ namespace Skuld.API
|
||||
/// Get a guild
|
||||
/// </summary>
|
||||
/// <param name="id">Guild Id</param>
|
||||
/// <returns><see cref="EventResult{T}"/> wrapped <see cref="Guild"/></returns>
|
||||
/// <returns><see cref="EventResult"/> wrapped <see cref="Guild"/></returns>
|
||||
public Task<EventResult> GetGuildAsync(ulong id)
|
||||
=> !string.IsNullOrWhiteSpace(Token) ? _api.GetGuildAsync(id) : null;
|
||||
|
||||
@@ -67,7 +67,7 @@ namespace Skuld.API
|
||||
/// Get a user
|
||||
/// </summary>
|
||||
/// <param name="id">User Id</param>
|
||||
/// <returns><see cref="EventResult{T}"/> wrapped <see cref="User"/></returns>
|
||||
/// <returns><see cref="EventResult"/> wrapped <see cref="User"/></returns>
|
||||
public Task<EventResult> GetUserAsync(ulong id)
|
||||
=> !string.IsNullOrWhiteSpace(Token) ? _api.GetUserAsync(id) : null;
|
||||
|
||||
@@ -111,7 +111,7 @@ namespace Skuld.API
|
||||
/// </summary>
|
||||
/// <param name="guildId">Guild Id, Accepts 0 for all</param>
|
||||
/// <param name="page">%10 offset page</param>
|
||||
/// <returns><see cref="EventResult{T}"/> wrapped <see cref="UserExperience"/></returns>
|
||||
/// <returns><see cref="EventResult"/> wrapped <see cref="UserExperience"/></returns>
|
||||
public Task<EventResult> GetExperienceLeaderboardAsync(ulong guildId, int page = 0)
|
||||
=> !string.IsNullOrWhiteSpace(Token) ? _api.GetExperienceLeaderboardAsync(guildId, page) : null;
|
||||
|
||||
@@ -120,7 +120,7 @@ namespace Skuld.API
|
||||
/// </summary>
|
||||
/// <param name="guildId">Guild Id, Accepts 0 for all</param>
|
||||
/// <param name="page">%10 offset page</param>
|
||||
/// <returns><see cref="EventResult{T}"/> wrapped <see cref="User"/></returns>
|
||||
/// <returns><see cref="EventResult"/> wrapped <see cref="User"/></returns>
|
||||
public Task<EventResult> GetMoneyLeaderboardAsync(ulong guildId, int page = 0)
|
||||
=> !string.IsNullOrWhiteSpace(Token) ? _api.GetMoneyLeaderboardAsync(guildId, page) : null;
|
||||
|
||||
@@ -172,5 +172,4 @@ namespace Skuld.API
|
||||
Dispose(disposing: true);
|
||||
GC.SuppressFinalize(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user