using System.Collections.Generic;
namespace Top.Api
{
    /// 
    /// 批量API响应类。
    /// 
    public class TopBatchResponse : TopResponse
    {
        /// 
        /// 当批量API请求成功后,或获取所有API的响应结果。
        /// 
        public List ResponseList { get; set; }
        public TopBatchResponse() { }
        public TopBatchResponse(string errorCode, string errorMessage)
        {
            base.ErrCode = errorCode;
            base.ErrMsg = ErrMsg;
        }
        /// 
        /// 根据指定的API请求获取相应的API响应结果。
        /// 
        public T GetResponse(ITopRequest request) where T : TopResponse
        {
            if (this.ResponseList == null || this.ResponseList.Count == 0)
            {
                return null;
            }
            return this.ResponseList[request.GetBatchApiOrder()] as T;
        }
        public void AddResponse(TopResponse response)
        {
            if (this.ResponseList == null)
            {
                this.ResponseList = new List();
            }
            this.ResponseList.Add(response);
        }
    }
}