internal static BinaryReadSettings DeserializeBinaryReadSettings(JsonElement element) { Optional <CompressionReadSettings> compressionProperties = default; string type = default; IDictionary <string, object> additionalProperties = default; Dictionary <string, object> additionalPropertiesDictionary = new Dictionary <string, object>(); foreach (var property in element.EnumerateObject()) { if (property.NameEquals("compressionProperties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } compressionProperties = CompressionReadSettings.DeserializeCompressionReadSettings(property.Value); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } additionalPropertiesDictionary.Add(property.Name, property.Value.GetObject()); } additionalProperties = additionalPropertiesDictionary; return(new BinaryReadSettings(type, additionalProperties, compressionProperties.Value)); }
internal XmlReadSettings(string type, IDictionary <string, object> additionalProperties, CompressionReadSettings compressionProperties, object validationMode, object detectDataType, object namespaces, object namespacePrefixes) : base(type, additionalProperties) { CompressionProperties = compressionProperties; ValidationMode = validationMode; DetectDataType = detectDataType; Namespaces = namespaces; NamespacePrefixes = namespacePrefixes; Type = type ?? "XmlReadSettings"; }
internal static XmlReadSettings DeserializeXmlReadSettings(JsonElement element) { Optional <CompressionReadSettings> compressionProperties = default; Optional <object> validationMode = default; Optional <object> detectDataType = default; Optional <object> namespaces = default; Optional <object> namespacePrefixes = default; string type = default; IDictionary <string, object> additionalProperties = default; Dictionary <string, object> additionalPropertiesDictionary = new Dictionary <string, object>(); foreach (var property in element.EnumerateObject()) { if (property.NameEquals("compressionProperties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } compressionProperties = CompressionReadSettings.DeserializeCompressionReadSettings(property.Value); continue; } if (property.NameEquals("validationMode")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } validationMode = property.Value.GetObject(); continue; } if (property.NameEquals("detectDataType")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } detectDataType = property.Value.GetObject(); continue; } if (property.NameEquals("namespaces")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } namespaces = property.Value.GetObject(); continue; } if (property.NameEquals("namespacePrefixes")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } namespacePrefixes = property.Value.GetObject(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } additionalPropertiesDictionary.Add(property.Name, property.Value.GetObject()); } additionalProperties = additionalPropertiesDictionary; return(new XmlReadSettings(type, additionalProperties, compressionProperties.Value, validationMode.Value, detectDataType.Value, namespaces.Value, namespacePrefixes.Value)); }
internal JsonReadSettings(string type, IDictionary <string, object> additionalProperties, CompressionReadSettings compressionProperties) : base(type, additionalProperties) { CompressionProperties = compressionProperties; Type = type ?? "JsonReadSettings"; }
internal DelimitedTextReadSettings(string type, IDictionary <string, object> additionalProperties, object skipLineCount, CompressionReadSettings compressionProperties) : base(type, additionalProperties) { SkipLineCount = skipLineCount; CompressionProperties = compressionProperties; Type = type ?? "DelimitedTextReadSettings"; }