You've already forked linux-packaging-mono
Imported Upstream version 4.8.0.309
Former-commit-id: 5f9c6ae75f295e057a7d2971f3a6df4656fa8850
This commit is contained in:
parent
ee1447783b
commit
94b2861243
@@ -60,7 +60,7 @@ namespace System.Xml.Serialization
|
||||
set { memberName = value; }
|
||||
}
|
||||
|
||||
#if NET_2_1
|
||||
#if MOBILE
|
||||
MemberInfo member;
|
||||
// It is used only in 2.1 S.X.Serialization.dll in MS SDK.
|
||||
internal MemberInfo MemberInfo {
|
||||
|
||||
@@ -243,6 +243,33 @@ namespace System.Xml.Serialization {
|
||||
}
|
||||
}
|
||||
|
||||
static string[] allTimeFormats = new string[] {
|
||||
"HH:mm:ss.fffffffzzzzzz",
|
||||
"HH:mm:ss",
|
||||
"HH:mm:ss.f",
|
||||
"HH:mm:ss.ff",
|
||||
"HH:mm:ss.fff",
|
||||
"HH:mm:ss.ffff",
|
||||
"HH:mm:ss.fffff",
|
||||
"HH:mm:ss.ffffff",
|
||||
"HH:mm:ss.fffffff",
|
||||
"HH:mm:ssZ",
|
||||
"HH:mm:ss.fZ",
|
||||
"HH:mm:ss.ffZ",
|
||||
"HH:mm:ss.fffZ",
|
||||
"HH:mm:ss.ffffZ",
|
||||
"HH:mm:ss.fffffZ",
|
||||
"HH:mm:ss.ffffffZ",
|
||||
"HH:mm:ss.fffffffZ",
|
||||
"HH:mm:sszzzzzz",
|
||||
"HH:mm:ss.fzzzzzz",
|
||||
"HH:mm:ss.ffzzzzzz",
|
||||
"HH:mm:ss.fffzzzzzz",
|
||||
"HH:mm:ss.ffffzzzzzz",
|
||||
"HH:mm:ss.fffffzzzzzz",
|
||||
"HH:mm:ss.ffffffzzzzzz",
|
||||
};
|
||||
|
||||
internal static object FromXmlString (TypeData type, string value)
|
||||
{
|
||||
if (value == null) return null;
|
||||
@@ -254,7 +281,7 @@ namespace System.Xml.Serialization {
|
||||
case "char": return (char)XmlConvert.ToInt32 (value);
|
||||
case "dateTime": return XmlConvert.ToDateTime (value, XmlDateTimeSerializationMode.RoundtripKind);
|
||||
case "date": return XmlConvert.ToDateTime (value).Date;
|
||||
case "time": return DateTime.ParseExact (value, "HH:mm:ss.FFFFFFF", null);
|
||||
case "time": return DateTime.ParseExact(value, allTimeFormats, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.AllowLeadingWhite | DateTimeStyles.AllowTrailingWhite | DateTimeStyles.NoCurrentDateDefault | DateTimeStyles.RoundtripKind);
|
||||
case "decimal": return XmlConvert.ToDecimal (value);
|
||||
case "double": return XmlConvert.ToDouble (value);
|
||||
case "short": return XmlConvert.ToInt16 (value);
|
||||
|
||||
@@ -126,7 +126,7 @@ namespace System.Xml.Serialization
|
||||
{
|
||||
get { return _mapMember.Name; }
|
||||
}
|
||||
#if !NET_2_1
|
||||
#if !MOBILE
|
||||
public string GenerateTypeName (System.CodeDom.Compiler.CodeDomProvider codeProvider)
|
||||
{
|
||||
string ret = codeProvider.CreateValidIdentifier (_mapMember.TypeData.FullTypeName);
|
||||
|
||||
@@ -157,7 +157,7 @@ namespace System.Xml.Serialization {
|
||||
mps.RelatedMaps = relatedMaps;
|
||||
mps.Format = SerializationFormat.Literal;
|
||||
Type[] extraTypes = includedTypes != null ? (Type[])includedTypes.ToArray(typeof(Type)) : null;
|
||||
#if !NET_2_1
|
||||
#if !MOBILE
|
||||
mps.Source = new MembersSerializationSource (elementName, hasWrapperElement, members, false, true, ns, extraTypes);
|
||||
if (allowPrivateTypes) mps.Source.CanBeGenerated = false;
|
||||
#endif
|
||||
@@ -226,7 +226,7 @@ namespace System.Xml.Serialization {
|
||||
map.RelatedMaps = relatedMaps;
|
||||
map.Format = SerializationFormat.Literal;
|
||||
Type[] extraTypes = includedTypes != null ? (Type[]) includedTypes.ToArray (typeof (Type)) : null;
|
||||
#if !NET_2_1
|
||||
#if !MOBILE
|
||||
map.Source = new XmlTypeSerializationSource (typeData.Type, root, attributeOverrides, defaultNamespace, extraTypes);
|
||||
if (allowPrivateTypes) map.Source.CanBeGenerated = false;
|
||||
#endif
|
||||
|
||||
@@ -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++;
|
||||
|
||||
@@ -37,7 +37,7 @@ using System.Reflection;
|
||||
using System.Xml;
|
||||
using System.Xml.Schema;
|
||||
using System.Text;
|
||||
#if !NET_2_1
|
||||
#if !MOBILE
|
||||
using System.CodeDom;
|
||||
using System.CodeDom.Compiler;
|
||||
using Microsoft.CSharp;
|
||||
@@ -121,7 +121,7 @@ namespace System.Xml.Serialization
|
||||
// debugging pourposes by adding the "nofallback" option.
|
||||
// For example: MONO_XMLSERIALIZER_THS=0,nofallback
|
||||
|
||||
#if NET_2_1
|
||||
#if MOBILE
|
||||
string db = null;
|
||||
string th = null;
|
||||
generationThreshold = -1;
|
||||
@@ -150,7 +150,7 @@ namespace System.Xml.Serialization
|
||||
}
|
||||
#endif
|
||||
deleteTempFiles = (db == null || db == "no");
|
||||
#if !NET_2_1 && CONFIGURATION_DEP
|
||||
#if !MOBILE && CONFIGURATION_DEP
|
||||
// DiagnosticsSection
|
||||
ConfigurationSection table = (ConfigurationSection) ConfigurationSettings.GetConfig("system.diagnostics");
|
||||
var bf = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance;
|
||||
@@ -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)
|
||||
{
|
||||
@@ -579,7 +584,7 @@ namespace System.Xml.Serialization
|
||||
}
|
||||
}
|
||||
|
||||
#if !NET_2_1
|
||||
#if !MOBILE
|
||||
if (!typeMapping.Source.CanBeGenerated || generationThreshold == -1)
|
||||
return new XmlSerializationWriterInterpreter (typeMapping);
|
||||
|
||||
@@ -600,7 +605,7 @@ namespace System.Xml.Serialization
|
||||
|
||||
XmlSerializationReader CreateReader (XmlMapping typeMapping)
|
||||
{
|
||||
#if !NET_2_1
|
||||
#if !MOBILE
|
||||
XmlSerializationReader reader;
|
||||
|
||||
lock (this) {
|
||||
@@ -630,7 +635,7 @@ namespace System.Xml.Serialization
|
||||
return new XmlSerializationReaderInterpreter (typeMapping);
|
||||
}
|
||||
|
||||
#if NET_2_1
|
||||
#if MOBILE
|
||||
void CheckGeneratedTypes (XmlMapping typeMapping)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user