public AtomEntry(AtomProtocolVersion atomVer, Namespace atomNS, string categoryScheme, XmlNamespaceManager nsMgr, Uri documentUri, XmlElement entryNode) { _atomVer = atomVer; _categoryScheme = categoryScheme; _nsMgr = nsMgr; _documentUri = documentUri; _entryNode = entryNode; _atomNS = atomNS; }
public AtomClient(AtomProtocolVersion atomVer, Uri postApiUrl, IBlogCredentialsAccessor credentials) : base(credentials) { _feedServiceUrl = postApiUrl; // configure client options BlogClientOptions clientOptions = new BlogClientOptions(); ConfigureClientOptions(clientOptions); _clientOptions = clientOptions; _atomVer = atomVer; _atomNS = new Namespace(atomVer.NamespaceUri, "atom"); _pubNS = new Namespace(atomVer.PubNamespaceUri, "app"); _nsMgr = new XmlNamespaceManager(new NameTable()); _nsMgr.AddNamespace(_atomNS.Prefix, _atomNS.Uri); _nsMgr.AddNamespace(_pubNS.Prefix, _pubNS.Uri); _nsMgr.AddNamespace(xhtmlNS.Prefix, xhtmlNS.Uri); _nsMgr.AddNamespace(featuresNS.Prefix, featuresNS.Uri); _nsMgr.AddNamespace(mediaNS.Prefix, mediaNS.Uri); _nsMgr.AddNamespace(liveNS.Prefix, liveNS.Uri); }
private void RemoveNodes(string localName, Namespace ns) { ArrayList nodes = new ArrayList(); foreach (XmlNode n in _entryNode.SelectNodes("./" + ns.Prefix + ":" + localName, _nsMgr)) nodes.Add(n); for (int i = 0; i < nodes.Count; i++) { XmlNode n = (XmlNode)nodes[i]; n.ParentNode.RemoveChild(n); } }
private XmlNode PopulateElement(string val, Namespace ns, string localName) { RemoveNodes(localName, ns); if (val != null) { XmlNode newNode = _entryNode.OwnerDocument.CreateElement(ns.Prefix, localName, ns.Uri); newNode.InnerText = val; _entryNode.AppendChild(newNode); return newNode; } else { return null; } }