//------------------------------------------------------------ // Game Framework // Copyright © 2013-2021 loyalsoft. All rights reserved. // Homepage: http://www.game7000.com/ // Feedback: http://www.game7000.com/ //------------------------------------------------------------ using System; using System.Collections.Generic; namespace GameFramework.WebRequest { /// /// Web 请求管理器接口。 /// public interface IWebRequestManager { /// /// 获取 Web 请求代理总数量。 /// int TotalAgentCount { get; } /// /// 获取可用 Web 请求代理数量。 /// int FreeAgentCount { get; } /// /// 获取工作中 Web 请求代理数量。 /// int WorkingAgentCount { get; } /// /// 获取等待 Web 请求数量。 /// int WaitingTaskCount { get; } /// /// 获取或设置 Web 请求超时时长,以秒为单位。 /// float Timeout { get; set; } /// /// Web 请求开始事件。 /// event EventHandler WebRequestStart; /// /// Web 请求成功事件。 /// event EventHandler WebRequestSuccess; /// /// Web 请求失败事件。 /// event EventHandler WebRequestFailure; /// /// 增加 Web 请求代理辅助器。 /// /// 要增加的 Web 请求代理辅助器。 void AddWebRequestAgentHelper(IWebRequestAgentHelper webRequestAgentHelper); /// /// 根据 Web 请求任务的序列编号获取 Web 请求任务的信息。 /// /// 要获取信息的 Web 请求任务的序列编号。 /// Web 请求任务的信息。 TaskInfo GetWebRequestInfo(int serialId); /// /// 根据 Web 请求任务的标签获取 Web 请求任务的信息。 /// /// 要获取信息的 Web 请求任务的标签。 /// Web 请求任务的信息。 TaskInfo[] GetWebRequestInfos(string tag); /// /// 根据 Web 请求任务的标签获取 Web 请求任务的信息。 /// /// 要获取信息的 Web 请求任务的标签。 /// Web 请求任务的信息。 void GetAllWebRequestInfos(string tag, List results); /// /// 获取所有 Web 请求任务的信息。 /// /// 所有 Web 请求任务的信息。 TaskInfo[] GetAllWebRequestInfos(); /// /// 获取所有 Web 请求任务的信息。 /// /// 所有 Web 请求任务的信息。 void GetAllWebRequestInfos(List results); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 要发送的数据流。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, byte[] postData); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// Web 请求任务的标签。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, string tag); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// Web 请求任务的优先级。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, int priority); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 用户自定义数据。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, object userData); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 要发送的数据流。 /// Web 请求任务的标签。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, byte[] postData, string tag); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 要发送的数据流。 /// Web 请求任务的优先级。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, byte[] postData, int priority); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 要发送的数据流。 /// 用户自定义数据。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, byte[] postData, object userData); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// Web 请求任务的标签。 /// Web 请求任务的优先级。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, string tag, int priority); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// Web 请求任务的标签。 /// 用户自定义数据。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, string tag, object userData); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// Web 请求任务的优先级。 /// 用户自定义数据。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, int priority, object userData); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 要发送的数据流。 /// Web 请求任务的标签。 /// Web 请求任务的优先级。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, byte[] postData, string tag, int priority); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 要发送的数据流。 /// Web 请求任务的标签。 /// 用户自定义数据。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, byte[] postData, string tag, object userData); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 要发送的数据流。 /// Web 请求任务的优先级。 /// 用户自定义数据。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, byte[] postData, int priority, object userData); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// Web 请求任务的标签。 /// Web 请求任务的优先级。 /// 用户自定义数据。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, string tag, int priority, object userData); /// /// 增加 Web 请求任务。 /// /// Web 请求地址。 /// 要发送的数据流。 /// Web 请求任务的标签。 /// Web 请求任务的优先级。 /// 用户自定义数据。 /// 新增 Web 请求任务的序列编号。 int AddWebRequest(string webRequestUri, byte[] postData, string tag, int priority, object userData); /// /// 根据 Web 请求任务的序列编号移除 Web 请求任务。 /// /// 要移除 Web 请求任务的序列编号。 /// 是否移除 Web 请求任务成功。 bool RemoveWebRequest(int serialId); /// /// 根据 Web 请求任务的标签移除 Web 请求任务。 /// /// 要移除 Web 请求任务的标签。 /// 移除 Web 请求任务的数量。 int RemoveWebRequests(string tag); /// /// 移除所有 Web 请求任务。 /// /// 移除 Web 请求任务的数量。 int RemoveAllWebRequests(); } }