1
0
mirror of https://github.com/JKorf/CryptoExchange.Net.git synced 2026-08-22 13:52:54 +00:00

Updated some interfaces, made time syncing methods nullable for apis not using it, added optional retry checking, removed private key from api credentials, added better support for api credentials subclasses

This commit is contained in:
JKorf
2023-02-13 21:18:45 +01:00
parent a222bb3f02
commit 11650f7c1a
14 changed files with 201 additions and 194 deletions
@@ -21,20 +21,6 @@ namespace CryptoExchange.Net.Authentication
/// </summary>
public SecureString? Secret { get; }
/// <summary>
/// The private key to authenticate requests
/// </summary>
public PrivateKey? PrivateKey { get; }
/// <summary>
/// Create Api credentials providing a private key for authentication
/// </summary>
/// <param name="privateKey">The private key used for signing</param>
public ApiCredentials(PrivateKey privateKey)
{
PrivateKey = privateKey;
}
/// <summary>
/// Create Api credentials providing an api key and secret for authentication
/// </summary>
@@ -69,11 +55,8 @@ namespace CryptoExchange.Net.Authentication
/// <returns></returns>
public virtual ApiCredentials Copy()
{
if (PrivateKey == null)
// Use .GetString() to create a copy of the SecureString
return new ApiCredentials(Key!.GetString(), Secret!.GetString());
else
return new ApiCredentials(PrivateKey!.Copy());
// Use .GetString() to create a copy of the SecureString
return new ApiCredentials(Key!.GetString(), Secret!.GetString());
}
/// <summary>
@@ -123,7 +106,6 @@ namespace CryptoExchange.Net.Authentication
{
Key?.Dispose();
Secret?.Dispose();
PrivateKey?.Dispose();
}
}
}