Updates referencesource to .NET 4.7
[mono-project.git] / mcs / class / referencesource / System.Xml / System / Xml / Serialization / Configuration / SchemaImporterExtensionsSection.cs
blob924ef8c6debc8350db65679c9b4d9558839a808a
1 //------------------------------------------------------------------------------
2 // <copyright file="SchemaImporterExtensionsSection.cs" company="Microsoft Corporation">
3 // Copyright (c) Microsoft Corporation. All rights reserved.
4 // </copyright>
5 // <owner current="true" primary="true">Microsoft</owner>
6 //------------------------------------------------------------------------------
7 #if CONFIGURATION_DEP
8 namespace System.Xml.Serialization.Configuration
10 using System.Configuration;
11 using System.Collections;
12 using System.Globalization;
13 using System.Reflection;
14 using System.Threading;
15 using System.Xml.Serialization.Advanced;
17 public sealed class SchemaImporterExtensionsSection : ConfigurationSection
19 public SchemaImporterExtensionsSection()
21 this.properties.Add(this.schemaImporterExtensions);
24 private static string GetSqlTypeSchemaImporter(string typeName) {
25 return "System.Data.SqlTypes." + typeName + ", " + AssemblyRef.SystemData;
28 protected override void InitializeDefault()
31 this.SchemaImporterExtensions.Add(
32 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterChar, GetSqlTypeSchemaImporter("TypeCharSchemaImporterExtension")));
33 this.SchemaImporterExtensions.Add(
34 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterNChar, GetSqlTypeSchemaImporter("TypeNCharSchemaImporterExtension")));
35 this.SchemaImporterExtensions.Add(
36 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterVarChar, GetSqlTypeSchemaImporter("TypeVarCharSchemaImporterExtension")));
37 this.SchemaImporterExtensions.Add(
38 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterNVarChar, GetSqlTypeSchemaImporter("TypeNVarCharSchemaImporterExtension")));
39 this.SchemaImporterExtensions.Add(
40 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterText, GetSqlTypeSchemaImporter("TypeTextSchemaImporterExtension")));
41 this.SchemaImporterExtensions.Add(
42 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterNText, GetSqlTypeSchemaImporter("TypeNTextSchemaImporterExtension")));
43 this.SchemaImporterExtensions.Add(
44 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterVarBinary, GetSqlTypeSchemaImporter("TypeVarBinarySchemaImporterExtension")));
45 this.SchemaImporterExtensions.Add(
46 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterBinary, GetSqlTypeSchemaImporter("TypeBinarySchemaImporterExtension")));
47 this.SchemaImporterExtensions.Add(
48 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterImage, GetSqlTypeSchemaImporter("TypeVarImageSchemaImporterExtension")));
49 this.SchemaImporterExtensions.Add(
50 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterDecimal, GetSqlTypeSchemaImporter("TypeDecimalSchemaImporterExtension")));
51 this.SchemaImporterExtensions.Add(
52 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterNumeric, GetSqlTypeSchemaImporter("TypeNumericSchemaImporterExtension")));
53 this.SchemaImporterExtensions.Add(
54 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterBigInt, GetSqlTypeSchemaImporter("TypeBigIntSchemaImporterExtension")));
55 this.SchemaImporterExtensions.Add(
56 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterInt, GetSqlTypeSchemaImporter("TypeIntSchemaImporterExtension")));
57 this.SchemaImporterExtensions.Add(
58 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterSmallInt, GetSqlTypeSchemaImporter("TypeSmallIntSchemaImporterExtension")));
59 this.SchemaImporterExtensions.Add(
60 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterTinyInt, GetSqlTypeSchemaImporter("TypeTinyIntSchemaImporterExtension")));
61 this.SchemaImporterExtensions.Add(
62 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterBit, GetSqlTypeSchemaImporter("TypeBitSchemaImporterExtension")));
63 this.SchemaImporterExtensions.Add(
64 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterFloat, GetSqlTypeSchemaImporter("TypeFloatSchemaImporterExtension")));
65 this.SchemaImporterExtensions.Add(
66 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterReal, GetSqlTypeSchemaImporter("TypeRealSchemaImporterExtension")));
67 this.SchemaImporterExtensions.Add(
68 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterDateTime, GetSqlTypeSchemaImporter("TypeDateTimeSchemaImporterExtension")));
69 this.SchemaImporterExtensions.Add(
70 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterSmallDateTime, GetSqlTypeSchemaImporter("TypeSmallDateTimeSchemaImporterExtension")));
71 this.SchemaImporterExtensions.Add(
72 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterMoney, GetSqlTypeSchemaImporter("TypeMoneySchemaImporterExtension")));
73 this.SchemaImporterExtensions.Add(
74 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterSmallMoney, GetSqlTypeSchemaImporter("TypeSmallMoneySchemaImporterExtension")));
75 this.SchemaImporterExtensions.Add(
76 new SchemaImporterExtensionElement(ConfigurationStrings.SqlTypesSchemaImporterUniqueIdentifier, GetSqlTypeSchemaImporter("TypeUniqueIdentifierSchemaImporterExtension")));
79 protected override ConfigurationPropertyCollection Properties
81 get { return this.properties; }
84 [ConfigurationProperty("", IsDefaultCollection = true)]
85 public SchemaImporterExtensionElementCollection SchemaImporterExtensions
87 get { return (SchemaImporterExtensionElementCollection)this[this.schemaImporterExtensions]; }
90 internal SchemaImporterExtensionCollection SchemaImporterExtensionsInternal {
91 get {
92 SchemaImporterExtensionCollection extensions = new SchemaImporterExtensionCollection();
93 foreach(SchemaImporterExtensionElement elem in this.SchemaImporterExtensions) {
94 extensions.Add(elem.Name, elem.Type);
97 return extensions;
101 ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection();
103 readonly ConfigurationProperty schemaImporterExtensions =
104 new ConfigurationProperty(null, typeof(SchemaImporterExtensionElementCollection), null,
105 ConfigurationPropertyOptions.IsDefaultCollection);
108 #endif