Files
2025-12-11 11:39:02 +08:00

75 lines
2.1 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*
* Copyright (C) Alibaba Cloud Computing
* All rights reserved.
*
* 版权所有 C阿里云计算有限公司
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Aliyun.Api.LOG.Data;
using Aliyun.Api.LOG.Utilities;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace Aliyun.Api.LOG.Response
{
/// <summary>
/// The response of the GetHistogram API from sls server
/// </summary>
public class GetHistogramsResponse : LogResponse
{
private String _progress;
private Int64 _count;
private List<Histogram> _histograms;
/// <summary>
/// constructor with http header and body from response
/// </summary>
/// <param name="headers">http header from respsone</param>
/// <param name="jsonBody">http body (in json) from response</param>
public GetHistogramsResponse(IDictionary<String, String> headers, JArray jsonBody)
:base(headers)
{
String count;
if (headers.TryGetValue(LogConsts.NAME_HEADER_X_LOG_COUNT, out count))
{
_count = Int64.Parse(count);
}
headers.TryGetValue(LogConsts.NAME_HEADER_X_LOG_PROGRESS, out _progress);
ParseResponseBody(jsonBody);
}
/// <summary>
/// detect whether response are complete or not.
/// </summary>
/// <returns>true if response is complete. otherwise return false</returns>
public bool IsCompleted()
{
return _progress == LogConsts.STATUS_COMPLETE;
}
/// <summary>
/// The count of histograms
/// </summary>
public Int64 TotalCount
{
get { return _count; }
}
/// <summary>
/// All of histograms
/// </summary>
public List<Histogram> Histograms
{
get { return _histograms; }
}
internal override void DeserializeFromJsonInternal(JArray json)
{
_histograms = Histogram.DeserializeFromJson(json);
}
}
}