//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 loyalsoft. All rights reserved.
// Homepage: http://www.game7000.com/
// Feedback: http://www.game7000.com/
//------------------------------------------------------------
namespace GameFramework.Resource
{
///
/// 资源更新失败事件。
///
public sealed class ResourceUpdateFailureEventArgs : GameFrameworkEventArgs
{
///
/// 初始化资源更新失败事件的新实例。
///
public ResourceUpdateFailureEventArgs()
{
Name = null;
DownloadUri = null;
RetryCount = 0;
TotalRetryCount = 0;
ErrorMessage = null;
}
///
/// 获取资源名称。
///
public string Name
{
get;
private set;
}
///
/// 获取下载地址。
///
public string DownloadUri
{
get;
private set;
}
///
/// 获取已重试次数。
///
public int RetryCount
{
get;
private set;
}
///
/// 获取设定的重试次数。
///
public int TotalRetryCount
{
get;
private set;
}
///
/// 获取错误信息。
///
public string ErrorMessage
{
get;
private set;
}
///
/// 创建资源更新失败事件。
///
/// 资源名称。
/// 下载地址。
/// 已重试次数。
/// 设定的重试次数。
/// 错误信息。
/// 创建的资源更新失败事件。
/// 当已重试次数达到设定的重试次数时,将不再重试。
public static ResourceUpdateFailureEventArgs Create(string name, string downloadUri, int retryCount, int totalRetryCount, string errorMessage)
{
ResourceUpdateFailureEventArgs resourceUpdateFailureEventArgs = ReferencePool.Acquire();
resourceUpdateFailureEventArgs.Name = name;
resourceUpdateFailureEventArgs.DownloadUri = downloadUri;
resourceUpdateFailureEventArgs.RetryCount = retryCount;
resourceUpdateFailureEventArgs.TotalRetryCount = totalRetryCount;
resourceUpdateFailureEventArgs.ErrorMessage = errorMessage;
return resourceUpdateFailureEventArgs;
}
///
/// 清理资源更新失败事件。
///
public override void Clear()
{
Name = null;
DownloadUri = null;
RetryCount = 0;
TotalRetryCount = 0;
ErrorMessage = null;
}
}
}