using System; using System.ComponentModel; using System.Runtime.Serialization; namespace GitHub.DistributedTask.WebApi { /// /// Represents a downloadable package. /// [DataContract] public class PackageMetadata { /// /// The type of package (e.g. "agent") /// [DataMember] public String Type { get; set; } /// /// The platform (win7, linux, etc.) /// [DataMember] public String Platform { get; set; } /// /// The date the package was created /// [DataMember(EmitDefaultValue = false)] public DateTime CreatedOn { get; set; } /// /// The package version. /// [DataMember(EmitDefaultValue = false)] public PackageVersion Version { get; set; } /// /// A direct link to download the package. /// [DataMember] public String DownloadUrl { get; set; } /// /// File ID in file service /// [DataMember(EmitDefaultValue = false)] [EditorBrowsable(EditorBrowsableState.Never)] public Int32? FileId { get; set; } /// /// Auth token to download the package /// [DataMember(EmitDefaultValue = false)] public String Token { get; set; } /// /// SHA256 hash /// [DataMember(EmitDefaultValue = false)] public String HashValue { get; set; } /// /// A link to documentation /// [DataMember] public String InfoUrl { get; set; } /// /// The UI uses this to display instructions, e.g. "unzip MyAgent.zip" /// [DataMember] public String Filename { get; set; } } }