Support for Int64 in SchemaBuilder

This commit is contained in:
Mark McDowall 2013-12-11 16:41:58 -08:00
parent 647ea5456b
commit 182743e653
3 changed files with 29 additions and 5 deletions

View File

@ -73,14 +73,26 @@ namespace NzbDrone.Api.ClientSchema
if (propertyInfo.PropertyType == typeof(Int32))
{
var intValue = Convert.ToInt32(field.Value);
propertyInfo.SetValue(target, intValue, null);
var value = Convert.ToInt32(field.Value);
propertyInfo.SetValue(target, value, null);
}
if (propertyInfo.PropertyType == typeof(Int64))
{
var value = Convert.ToInt64(field.Value);
propertyInfo.SetValue(target, value, null);
}
else if (propertyInfo.PropertyType == typeof(Nullable<Int32>))
{
var intValue = field.Value.ToString().ParseInt32();
propertyInfo.SetValue(target, intValue, null);
var value = field.Value.ToString().ParseInt32();
propertyInfo.SetValue(target, value, null);
}
else if (propertyInfo.PropertyType == typeof(Nullable<Int64>))
{
var value = field.Value.ToString().ParseInt64();
propertyInfo.SetValue(target, value, null);
}
else

View File

@ -15,5 +15,17 @@ namespace NzbDrone.Common
return null;
}
public static Nullable<long> ParseInt64(this string source)
{
Int64 result = 0;
if (Int64.TryParse(source, out result))
{
return result;
}
return null;
}
}
}

View File

@ -13,6 +13,6 @@ namespace NzbDrone.Core.Notifications.PushBullet
}
}
public string ApiKey { get; set; }
public int DeviceId { get; set; }
public long DeviceId { get; set; }
}
}