diff options
author | Alexander Köplinger <alex.koeplinger@outlook.com> | 2016-09-23 18:01:44 +0300 |
---|---|---|
committer | Alexander Köplinger <alex.koeplinger@outlook.com> | 2016-09-23 18:50:06 +0300 |
commit | 112631f5c6926eb00544cd39f6be7a98983503b8 (patch) | |
tree | db9dc651ba8c19b71c6f6abc890639eaf4848ed8 /mcs/class/System.XML | |
parent | fa986f1e3669884968c258733d8a4da2a7895897 (diff) |
[bcl] Add missing APIs for netstandard parity and expose a few APIs on mobile
This ensures we're compliant with the upcoming netstandard2.0 API surface area.
Diffstat (limited to 'mcs/class/System.XML')
4 files changed, 48 insertions, 0 deletions
diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlSerializationReader.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlSerializationReader.cs index 32593bc4e01..de6710af0a5 100644 --- a/mcs/class/System.XML/System.Xml.Serialization/XmlSerializationReader.cs +++ b/mcs/class/System.XML/System.Xml.Serialization/XmlSerializationReader.cs @@ -729,6 +729,29 @@ namespace System.Xml.Serialization return serializable; } + protected IXmlSerializable ReadSerializable (IXmlSerializable serializable, bool wrappedAny) + { + string name = null; + string ns = null; + + if (wrappedAny) { + name = reader.LocalName; + ns = reader.NamespaceURI; + reader.Read (); + reader.MoveToContent (); + } + serializable.ReadXml (reader); + + if (wrappedAny) { + while (reader.NodeType == XmlNodeType.Whitespace) reader.Skip (); + if (reader.NodeType == XmlNodeType.None) reader.Skip (); + if (reader.NodeType == XmlNodeType.EndElement && reader.LocalName == name && reader.NamespaceURI == ns) { + reader.Read (); + } + } + return serializable; + } + protected string ReadString (string value) { readCount++; diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlSerializer.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlSerializer.cs index 0805d7f61a6..60bbc316699 100644 --- a/mcs/class/System.XML/System.Xml.Serialization/XmlSerializer.cs +++ b/mcs/class/System.XML/System.Xml.Serialization/XmlSerializer.cs @@ -204,6 +204,11 @@ namespace System.Xml.Serialization { } + public XmlSerializer (Type type, XmlAttributeOverrides overrides, Type[] extraTypes, XmlRootAttribute root, string defaultNamespace, string location) + : this (type, overrides, extraTypes, root, defaultNamespace, location, null) + { + } + public XmlSerializer (Type type, XmlAttributeOverrides overrides) : this (type, overrides, null, null, null) { diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlSerializerFactory.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlSerializerFactory.cs index 204b67f71c9..02c86fd7e62 100644 --- a/mcs/class/System.XML/System.Xml.Serialization/XmlSerializerFactory.cs +++ b/mcs/class/System.XML/System.Xml.Serialization/XmlSerializerFactory.cs @@ -61,6 +61,11 @@ namespace System.Xml.Serialization } } + public XmlSerializer CreateSerializer (Type type, XmlAttributeOverrides overrides, Type[] extraTypes, XmlRootAttribute root, string defaultNamespace, string location) + { + return CreateSerializer (type, overrides, extraTypes, root, defaultNamespace, location, null); + } + public XmlSerializer CreateSerializer (Type type, string defaultNamespace) { return CreateSerializer (type, null, null, null, defaultNamespace); diff --git a/mcs/class/System.XML/System.Xml.Xsl/XslCompiledTransform_Mobile.cs b/mcs/class/System.XML/System.Xml.Xsl/XslCompiledTransform_Mobile.cs index 94dcc0285ba..e2b3432b0ae 100644 --- a/mcs/class/System.XML/System.Xml.Xsl/XslCompiledTransform_Mobile.cs +++ b/mcs/class/System.XML/System.Xml.Xsl/XslCompiledTransform_Mobile.cs @@ -32,6 +32,7 @@ using System.CodeDom.Compiler; using System.Collections; using System.IO; using System.Text; +using System.Reflection; using System.Runtime.InteropServices; using System.Security; using System.Security.Policy; @@ -136,6 +137,11 @@ namespace System.Xml.Xsl Transform (input.CreateNavigator (), arguments, results, null); } + public void Transform (IXPathNavigable input, XsltArgumentList arguments, XmlWriter results, XmlResolver documentResolver) + { + Transform (input.CreateNavigator (), arguments, results, documentResolver); + } + public void Transform (XmlReader input, XsltArgumentList arguments, XmlWriter results, XmlResolver documentResolver) { Transform (new XPathDocument (input, XmlSpace.Preserve).CreateNavigator (), arguments, results, documentResolver); @@ -203,6 +209,15 @@ namespace System.Xml.Xsl Load (new XPathDocument (stylesheetUri, XmlSpace.Preserve).CreateNavigator (), settings, stylesheetResolver); } + public void Load (MethodInfo executeMethod, byte[] queryData, Type[] earlyBoundTypes) + { + throw new NotImplementedException (); + } + + public void Load (Type compiledStylesheet) + { + throw new NotImplementedException (); + } #endregion } |