Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
  • Loading branch information
JKorf committed Apr 25, 2024
1 parent d7310b4 commit 14e635e
Show file tree
Hide file tree
Showing 10 changed files with 73 additions and 1 deletion.
3 changes: 3 additions & 0 deletions CoinEx.Net/Clients/FuturesApi/CoinExRestClientFuturesApi.cs
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,9 @@ internal CoinExRestClientFuturesApi(ILogger logger, HttpClient? httpClient, Coin
}
#endregion

/// <inheritdoc />
public override string FormatSymbol(string baseAsset, string quoteAsset) => $"{baseAsset.ToUpperInvariant()}{quoteAsset.ToUpperInvariant()}";

/// <inheritdoc />
protected override IStreamMessageAccessor CreateAccessor() => new SystemTextJsonStreamMessageAccessor();
/// <inheritdoc />
Expand Down
2 changes: 2 additions & 0 deletions CoinEx.Net/Clients/FuturesApi/CoinExSocketClientFuturesApi.cs
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ internal CoinExSocketClientFuturesApi(ILogger logger, CoinExSocketOptions option
protected override AuthenticationProvider CreateAuthenticationProvider(ApiCredentials credentials)
=> new CoinExV2AuthenticationProvider(credentials);

/// <inheritdoc />
public override string FormatSymbol(string baseAsset, string quoteAsset) => $"{baseAsset.ToUpperInvariant()}{quoteAsset.ToUpperInvariant()}";
#region methods

/// <inheritdoc />
Expand Down
3 changes: 3 additions & 0 deletions CoinEx.Net/Clients/SpotApiV1/CoinExRestClientSpotApi.cs
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,9 @@ internal CoinExRestClientSpotApi(ILogger logger, HttpClient? httpClient, CoinExR
protected override AuthenticationProvider CreateAuthenticationProvider(ApiCredentials credentials)
=> new CoinExAuthenticationProvider(credentials, ClientOptions.NonceProvider ?? new CoinExNonceProvider());

/// <inheritdoc />
public override string FormatSymbol(string baseAsset, string quoteAsset) => $"{baseAsset.ToUpperInvariant()}{quoteAsset.ToUpperInvariant()}";

#region methods
#region private
internal async Task<WebCallResult<T>> Execute<T>(Uri uri, HttpMethod method, CancellationToken ct, Dictionary<string, object>? parameters = null, bool signed = false) where T : class
Expand Down
3 changes: 3 additions & 0 deletions CoinEx.Net/Clients/SpotApiV1/CoinExSocketClientSpotApi.cs
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,9 @@ internal CoinExSocketClientSpotApi(ILogger logger, CoinExSocketOptions options)
protected override AuthenticationProvider CreateAuthenticationProvider(ApiCredentials credentials)
=> new CoinExAuthenticationProvider(credentials, ClientOptions.NonceProvider ?? new CoinExNonceProvider());

/// <inheritdoc />
public override string FormatSymbol(string baseAsset, string quoteAsset) => $"{baseAsset.ToUpperInvariant()}{quoteAsset.ToUpperInvariant()}";

#region methods

/// <inheritdoc />
Expand Down
3 changes: 3 additions & 0 deletions CoinEx.Net/Clients/SpotApiV2/CoinExRestClientSpotApi.cs
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,9 @@ internal CoinExRestClientSpotApi(ILogger logger, HttpClient? httpClient, CoinExR
protected override AuthenticationProvider CreateAuthenticationProvider(ApiCredentials credentials)
=> new CoinExV2AuthenticationProvider(credentials);

/// <inheritdoc />
public override string FormatSymbol(string baseAsset, string quoteAsset) => $"{baseAsset.ToUpperInvariant()}{quoteAsset.ToUpperInvariant()}";

#region methods
internal async Task<WebCallResult> ExecuteAsync(Uri uri, HttpMethod method, CancellationToken ct, Dictionary<string, object>? parameters = null, bool signed = false)
{
Expand Down
2 changes: 2 additions & 0 deletions CoinEx.Net/Clients/SpotApiV2/CoinExSocketClientSpotApi.cs
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ internal CoinExSocketClientSpotApi(ILogger logger, CoinExSocketOptions options)
protected override AuthenticationProvider CreateAuthenticationProvider(ApiCredentials credentials)
=> new CoinExV2AuthenticationProvider(credentials);

/// <inheritdoc />
public override string FormatSymbol(string baseAsset, string quoteAsset) => $"{baseAsset.ToUpperInvariant()}{quoteAsset.ToUpperInvariant()}";
#region methods

/// <inheritdoc />
Expand Down
4 changes: 3 additions & 1 deletion CoinEx.Net/CoinEx.Net.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,8 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="CryptoExchange.Net" Version="7.3.3" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\CryptoExchange.Net\CryptoExchange.Net\CryptoExchange.Net.csproj" />
</ItemGroup>
</Project>
34 changes: 34 additions & 0 deletions CoinEx.Net/CoinEx.Net.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 10 additions & 0 deletions CoinEx.Net/Interfaces/ICoinExOrderBookFactory.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,16 @@ namespace CoinEx.Net.Interfaces
/// </summary>
public interface ICoinExOrderBookFactory
{
/// <summary>
/// Spot order book factory methods
/// </summary>
public IOrderBookFactory<CoinExOrderBookOptions> Spot { get; }

/// <summary>
/// Futures order book factory methods
/// </summary>
public IOrderBookFactory<CoinExOrderBookOptions> Futures { get; }

/// <summary>
/// Create a SymbolOrderBook for the Spot API
/// </summary>
Expand Down
10 changes: 10 additions & 0 deletions CoinEx.Net/SymbolOrderBooks/CoinExOrderBookFactory.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using CoinEx.Net.Interfaces.Clients;
using CoinEx.Net.Objects.Options;
using CryptoExchange.Net.Interfaces;
using CryptoExchange.Net.OrderBook;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using System;
Expand All @@ -13,13 +14,22 @@ public class CoinExOrderBookFactory : ICoinExOrderBookFactory
{
private readonly IServiceProvider _serviceProvider;

/// <inheritdoc />
public IOrderBookFactory<CoinExOrderBookOptions> Spot { get; }

/// <inheritdoc />
public IOrderBookFactory<CoinExOrderBookOptions> Futures { get; }

/// <summary>
/// ctor
/// </summary>
/// <param name="serviceProvider">Service provider for resolving logging and clients</param>
public CoinExOrderBookFactory(IServiceProvider serviceProvider)
{
_serviceProvider = serviceProvider;

Spot = new OrderBookFactory<CoinExOrderBookOptions>((symbol, options) => CreateSpot(symbol, options), (baseAsset, quoteAsset, options) => CreateSpot(baseAsset + quoteAsset, options));
Futures = new OrderBookFactory<CoinExOrderBookOptions>((symbol, options) => CreateFutures(symbol, options), (baseAsset, quoteAsset, options) => CreateFutures(baseAsset + quoteAsset, options));
}

/// <inheritdoc />
Expand Down

0 comments on commit 14e635e

Please sign in to comment.