1
0
mirror of https://github.com/JKorf/CryptoExchange.Net synced 2025-06-07 16:06:15 +00:00

Made ExecuteRequest virtual, added TimestampSecondsConverter

This commit is contained in:
JKorf 2018-03-27 09:38:11 +02:00
parent 343af73d50
commit f3634ea289
6 changed files with 34 additions and 4 deletions

View File

@ -13,6 +13,11 @@ namespace CryptoExchange.Net
/// </summary>
public int Port { get; }
/// <summary>
/// Create new settings for a proxy
/// </summary>
/// <param name="host">The proxy hostname/ip</param>
/// <param name="port">The proxy port</param>
public ApiProxy(string host, int port)
{
if(string.IsNullOrEmpty(host) || port <= 0)

View File

@ -9,7 +9,7 @@ namespace CryptoExchange.Net.Converters
{
public override bool CanConvert(Type objectType)
{
throw new NotImplementedException();
return true;
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)

View File

@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Text;
using Newtonsoft.Json;
namespace CryptoExchange.Net.Converters
{
public class TimestampSecondsConverter : JsonConverter
{
public override bool CanConvert(Type objectType)
{
return objectType == typeof(DateTime);
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
var t = long.Parse(reader.Value.ToString());
return new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).AddSeconds(t);
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
writer.WriteValue(Math.Round((((DateTime)value) - new DateTime(1970, 1, 1)).TotalSeconds));
}
}
}

View File

@ -7,7 +7,7 @@
<PropertyGroup>
<PackageId>CryptoExchange.Net</PackageId>
<Authors>JKorf</Authors>
<PackageVersion>0.0.15</PackageVersion>
<PackageVersion>0.0.16</PackageVersion>
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance>
<PackageProjectUrl>https://github.com/JKorf/CryptoExchange.Net</PackageProjectUrl>
<PackageLicenseUrl>https://github.com/JKorf/CryptoExchange.Net/blob/master/LICENSE</PackageLicenseUrl>

View File

@ -77,7 +77,7 @@ namespace CryptoExchange.Net
authProvider = authentictationProvider;
}
protected async Task<CallResult<T>> ExecuteRequest<T>(Uri uri, string method = "GET", Dictionary<string, object> parameters = null, bool signed = false) where T : class
protected virtual async Task<CallResult<T>> ExecuteRequest<T>(Uri uri, string method = "GET", Dictionary<string, object> parameters = null, bool signed = false) where T : class
{
if(signed && authProvider == null)
return new CallResult<T>(null, new NoApiCredentialsError());

View File

@ -1,6 +1,5 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Net;
using System.Security.Authentication;