public LabelResult[] UnlabelItem(Workspace workspace, string labelName, string labelScope, ItemSpec[] itemSpecs, VersionSpec version) { Message msg = new Message(GetWebRequest(new Uri(Url)), "UnlabelItem"); msg.Body.WriteElementString("workspaceName", workspace.Name); msg.Body.WriteElementString("workspaceOwner", workspace.OwnerName); msg.Body.WriteElementString("labelName", labelName); if (!String.IsNullOrEmpty(labelScope)) { msg.Body.WriteElementString("labelScope", labelScope); } msg.Body.WriteStartElement("items"); foreach (ItemSpec itemSpec in itemSpecs) { itemSpec.ToXml(msg.Body, "ItemSpec"); } msg.Body.WriteEndElement(); version.ToXml(msg.Body, "version"); List <LabelResult> labelResults = new List <LabelResult>(); List <Failure> faillist = new List <Failure>(); using (HttpWebResponse response = Invoke(msg)) { XmlReader results = msg.ResponseReader(response); while (results.Read()) { if (results.NodeType == XmlNodeType.Element) { switch (results.Name) { case "LabelResult": labelResults.Add(LabelResult.FromXml(this, results)); break; case "Failure": faillist.Add(Failure.FromXml(this, results)); break; } } } } foreach (Failure failure in faillist) { versionControlServer.OnNonFatalError(workspace, failure); } return(labelResults.ToArray()); }
public LabelResult[] LabelItem(Workspace workspace, VersionControlLabel label, LabelItemSpec[] labelSpecs, LabelChildOption children) { Message msg = new Message(GetWebRequest(new Uri(Url)), "LabelItem"); msg.Body.WriteElementString("workspaceName", workspace.Name); msg.Body.WriteElementString("workspaceOwner", workspace.OwnerName); label.ToXml(msg.Body, "label"); msg.Body.WriteStartElement("labelSpecs"); foreach (LabelItemSpec labelSpec in labelSpecs) { labelSpec.ToXml(msg.Body, "LabelItemSpec"); } msg.Body.WriteEndElement(); msg.Body.WriteElementString("children", children.ToString()); List <LabelResult> labelResults = new List <LabelResult>(); List <Failure> faillist = new List <Failure>(); using (HttpWebResponse response = Invoke(msg)) { XmlReader results = msg.ResponseReader(response); while (results.Read()) { if (results.NodeType == XmlNodeType.Element) { switch (results.Name) { case "LabelResult": labelResults.Add(LabelResult.FromXml(this, results)); break; case "Failure": faillist.Add(Failure.FromXml(this, results)); break; } } } } foreach (Failure failure in faillist) { versionControlServer.OnNonFatalError(workspace, failure); } return(labelResults.ToArray()); }