internal static MongoDbLinkedService DeserializeMongoDbLinkedService(JsonElement element) { string type = default; Optional <IntegrationRuntimeReference> connectVia = default; Optional <string> description = default; Optional <IDictionary <string, ParameterSpecification> > parameters = default; Optional <IList <object> > annotations = default; object server = default; Optional <MongoDbAuthenticationType> authenticationType = default; object databaseName = default; Optional <object> username = default; Optional <SecretBase> password = default; Optional <object> authSource = default; Optional <object> port = default; Optional <object> enableSsl = default; Optional <object> allowSelfSignedServerCert = default; Optional <object> encryptedCredential = default; IDictionary <string, object> additionalProperties = default; Dictionary <string, object> additionalPropertiesDictionary = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("connectVia")) { connectVia = IntegrationRuntimeReference.DeserializeIntegrationRuntimeReference(property.Value); continue; } if (property.NameEquals("description")) { description = property.Value.GetString(); continue; } if (property.NameEquals("parameters")) { Dictionary <string, ParameterSpecification> dictionary = new Dictionary <string, ParameterSpecification>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, ParameterSpecification.DeserializeParameterSpecification(property0.Value)); } parameters = dictionary; continue; } if (property.NameEquals("annotations")) { List <object> array = new List <object>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetObject()); } annotations = array; continue; } if (property.NameEquals("typeProperties")) { foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("server")) { server = property0.Value.GetObject(); continue; } if (property0.NameEquals("authenticationType")) { authenticationType = new MongoDbAuthenticationType(property0.Value.GetString()); continue; } if (property0.NameEquals("databaseName")) { databaseName = property0.Value.GetObject(); continue; } if (property0.NameEquals("username")) { username = property0.Value.GetObject(); continue; } if (property0.NameEquals("password")) { password = SecretBase.DeserializeSecretBase(property0.Value); continue; } if (property0.NameEquals("authSource")) { authSource = property0.Value.GetObject(); continue; } if (property0.NameEquals("port")) { port = property0.Value.GetObject(); continue; } if (property0.NameEquals("enableSsl")) { enableSsl = property0.Value.GetObject(); continue; } if (property0.NameEquals("allowSelfSignedServerCert")) { allowSelfSignedServerCert = property0.Value.GetObject(); continue; } if (property0.NameEquals("encryptedCredential")) { encryptedCredential = property0.Value.GetObject(); continue; } } continue; } additionalPropertiesDictionary ??= new Dictionary <string, object>(); additionalPropertiesDictionary.Add(property.Name, property.Value.GetObject()); } additionalProperties = additionalPropertiesDictionary; return(new MongoDbLinkedService(type, connectVia.Value, description.Value, Optional.ToDictionary(parameters), Optional.ToList(annotations), additionalProperties, server, Optional.ToNullable(authenticationType), databaseName, username.Value, password.Value, authSource.Value, port.Value, enableSsl.Value, allowSelfSignedServerCert.Value, encryptedCredential.Value)); }
internal static MongoDbLinkedService DeserializeMongoDbLinkedService(JsonElement element) { string type = default; IntegrationRuntimeReference connectVia = default; string description = default; IDictionary <string, ParameterSpecification> parameters = default; IList <object> annotations = default; object server = default; MongoDbAuthenticationType? authenticationType = default; object databaseName = default; object username = default; SecretBase password = default; object authSource = default; object port = default; object enableSsl = default; object allowSelfSignedServerCert = default; object encryptedCredential = default; IDictionary <string, object> additionalProperties = default; Dictionary <string, object> additionalPropertiesDictionary = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("connectVia")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } connectVia = IntegrationRuntimeReference.DeserializeIntegrationRuntimeReference(property.Value); continue; } if (property.NameEquals("description")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } description = property.Value.GetString(); continue; } if (property.NameEquals("parameters")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } Dictionary <string, ParameterSpecification> dictionary = new Dictionary <string, ParameterSpecification>(); foreach (var property0 in property.Value.EnumerateObject()) { if (property0.Value.ValueKind == JsonValueKind.Null) { dictionary.Add(property0.Name, null); } else { dictionary.Add(property0.Name, ParameterSpecification.DeserializeParameterSpecification(property0.Value)); } } parameters = dictionary; continue; } if (property.NameEquals("annotations")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <object> array = new List <object>(); foreach (var item in property.Value.EnumerateArray()) { if (item.ValueKind == JsonValueKind.Null) { array.Add(null); } else { array.Add(item.GetObject()); } } annotations = array; continue; } if (property.NameEquals("typeProperties")) { foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("server")) { server = property0.Value.GetObject(); continue; } if (property0.NameEquals("authenticationType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } authenticationType = new MongoDbAuthenticationType(property0.Value.GetString()); continue; } if (property0.NameEquals("databaseName")) { databaseName = property0.Value.GetObject(); continue; } if (property0.NameEquals("username")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } username = property0.Value.GetObject(); continue; } if (property0.NameEquals("password")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } password = SecretBase.DeserializeSecretBase(property0.Value); continue; } if (property0.NameEquals("authSource")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } authSource = property0.Value.GetObject(); continue; } if (property0.NameEquals("port")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } port = property0.Value.GetObject(); continue; } if (property0.NameEquals("enableSsl")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } enableSsl = property0.Value.GetObject(); continue; } if (property0.NameEquals("allowSelfSignedServerCert")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } allowSelfSignedServerCert = property0.Value.GetObject(); continue; } if (property0.NameEquals("encryptedCredential")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } encryptedCredential = property0.Value.GetObject(); continue; } } continue; } additionalPropertiesDictionary ??= new Dictionary <string, object>(); if (property.Value.ValueKind == JsonValueKind.Null) { additionalPropertiesDictionary.Add(property.Name, null); } else { additionalPropertiesDictionary.Add(property.Name, property.Value.GetObject()); } } additionalProperties = additionalPropertiesDictionary; return(new MongoDbLinkedService(type, connectVia, description, parameters, annotations, additionalProperties, server, authenticationType, databaseName, username, password, authSource, port, enableSsl, allowSelfSignedServerCert, encryptedCredential)); }