using System;
using System.Runtime.Serialization;
using GitHub.Services.WebApi;
namespace GitHub.Build.WebApi
{
///
/// Represents a work item related to some source item.
/// These are retrieved from Source Providers.
///
[DataContract]
public class SourceRelatedWorkItem : BaseSecuredObject
{
public SourceRelatedWorkItem()
{
}
internal SourceRelatedWorkItem(
ISecuredObject securedObject)
: base(securedObject)
{
}
///
/// The name of the provider the work item is associated with.
///
[DataMember]
public String ProviderName { get; set; }
///
/// Unique identifier for the work item
///
[DataMember(EmitDefaultValue = false)]
public String Id { get; set; }
///
/// Short name for the work item.
///
[DataMember(EmitDefaultValue = false)]
public String Title { get; set; }
///
/// Long description for the work item.
///
[DataMember(EmitDefaultValue = false)]
public String Description { get; set; }
///
/// Type of work item, e.g. Bug, Task, User Story, etc.
///
[DataMember(EmitDefaultValue = false)]
public String Type { get; set; }
///
/// Current state of the work item, e.g. Active, Resolved, Closed, etc.
///
[DataMember(EmitDefaultValue = false)]
public String CurrentState { get; set; }
///
/// Identity ref for the person that the work item is assigned to.
///
[DataMember(EmitDefaultValue = false)]
public IdentityRef AssignedTo { get; set; }
///
/// The links to other objects related to this object.
///
public ReferenceLinks Links
{
get
{
if (m_links == null)
{
m_links = new ReferenceLinks();
}
return m_links;
}
}
[DataMember(Name = "_links", EmitDefaultValue = false)]
private ReferenceLinks m_links;
}
}