using System;
using System.Collections.Generic;
using Top.Api.Util;
namespace Top.Api.Request
{
///
/// TOP API: taobao.jushita.jdp.task.update
///
public class JushitaJdpTaskUpdateRequest : BaseTopRequest
{
///
/// 任务执行失败的错误信息,可以方便排查问题。
///
public string ErrorMessage { get; set; }
///
/// 任务执行的机器主机名,用于方便排查问题。
///
public string ExecuteHost { get; set; }
///
/// 任务的编号
///
public Nullable Id { get; set; }
///
/// 任务的下次开始执行时间。
///
public Nullable NextExecuteTime { get; set; }
///
/// 任务当前同步到的时间点。
///
public Nullable NowSyncTime { get; set; }
///
/// 任务的参数,用json格式表示
///
public string Params { get; set; }
///
/// 任务的状态,0表示任务新建或未执行完成,1表示任务停止,2表示任务已经完成,-1表示任务执行失败。
///
public Nullable Status { get; set; }
///
/// 普通isv不能传入此参数
///
public string TargetAppkey { get; set; }
///
/// 任务的类型,
///
public Nullable Type { get; set; }
///
/// 任务更新时的版本号,此值在选择出的任务中获取到。
///
public Nullable Version { get; set; }
#region ITopRequest Members
public override string GetApiName()
{
return "taobao.jushita.jdp.task.update";
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("error_message", this.ErrorMessage);
parameters.Add("execute_host", this.ExecuteHost);
parameters.Add("id", this.Id);
parameters.Add("next_execute_time", this.NextExecuteTime);
parameters.Add("now_sync_time", this.NowSyncTime);
parameters.Add("params", this.Params);
parameters.Add("status", this.Status);
parameters.Add("target_appkey", this.TargetAppkey);
parameters.Add("type", this.Type);
parameters.Add("version", this.Version);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateMaxLength("error_message", this.ErrorMessage, 100);
RequestValidator.ValidateMaxLength("execute_host", this.ExecuteHost, 30);
RequestValidator.ValidateRequired("id", this.Id);
RequestValidator.ValidateRequired("next_execute_time", this.NextExecuteTime);
RequestValidator.ValidateRequired("now_sync_time", this.NowSyncTime);
RequestValidator.ValidateMaxLength("params", this.Params, 512);
RequestValidator.ValidateRequired("status", this.Status);
RequestValidator.ValidateMaxValue("status", this.Status, 2);
RequestValidator.ValidateMinValue("status", this.Status, -1);
RequestValidator.ValidateMinValue("type", this.Type, 0);
RequestValidator.ValidateRequired("version", this.Version);
}
#endregion
}
}