DocSpace-buildtools/thirdparty/AppLimit.CloudComputing.SharpBox/StorageProvider/DropBox/DropBoxAccountInfo.cs

59 lines
1.7 KiB
C#
Raw Normal View History

2020-04-23 09:38:50 +00:00
using AppLimit.CloudComputing.SharpBox.Common.Net.Json;
2020-03-13 13:40:58 +00:00
namespace AppLimit.CloudComputing.SharpBox.StorageProvider.DropBox
{
/*
* {
* country: ,
* display_name: John Q. User,
* quota_info:
* {
* shared: 37378890,
* quota: 62277025792,
* normal: 263758550
* },
* uid: 174
* }
*/
/// <summary>
/// This class contains information about the dropbox account
/// </summary>
public class DropBoxAccountInfo
{
/// <summary>
/// The country where the user comes from
/// </summary>
public readonly string Country;
/// <summary>
/// The displayname of the user
/// </summary>
public readonly string DisplayName;
/// <summary>
/// The user Id
/// </summary>
public readonly int UserId;
/// <summary>
/// Quotainformation of dropbox
/// </summary>
public readonly DropBoxQuotaInfo QuotaInfo;
internal DropBoxAccountInfo(string jmstext)
{
var jh = new JsonHelper();
if (!jh.ParseJsonMessage(jmstext))
return;
Country = jh.GetProperty("country");
DisplayName = jh.GetProperty("display_name");
UserId = jh.GetPropertyInt("uid");
var quotainfo = jh.GetSubObjectString("quota_info");
if (quotainfo != null)
QuotaInfo = new DropBoxQuotaInfo(quotainfo);
}
}
}