internal static DynamicsCrmLinkedService DeserializeDynamicsCrmLinkedService(JsonElement element) { string type = default; IntegrationRuntimeReference connectVia = default; string description = default; IDictionary <string, ParameterSpecification> parameters = default; IList <object> annotations = default; DynamicsDeploymentType deploymentType = default; object hostName = default; object port = default; object serviceUri = default; object organizationName = default; DynamicsAuthenticationType authenticationType = default; object username = default; SecretBase password = default; object servicePrincipalId = default; DynamicsServicePrincipalCredentialType?servicePrincipalCredentialType = default; SecretBase servicePrincipalCredential = 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("deploymentType")) { deploymentType = new DynamicsDeploymentType(property0.Value.GetString()); continue; } if (property0.NameEquals("hostName")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } hostName = property0.Value.GetObject(); continue; } if (property0.NameEquals("port")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } port = property0.Value.GetObject(); continue; } if (property0.NameEquals("serviceUri")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } serviceUri = property0.Value.GetObject(); continue; } if (property0.NameEquals("organizationName")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } organizationName = property0.Value.GetObject(); continue; } if (property0.NameEquals("authenticationType")) { authenticationType = new DynamicsAuthenticationType(property0.Value.GetString()); 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("servicePrincipalId")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } servicePrincipalId = property0.Value.GetObject(); continue; } if (property0.NameEquals("servicePrincipalCredentialType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } servicePrincipalCredentialType = new DynamicsServicePrincipalCredentialType(property0.Value.GetString()); continue; } if (property0.NameEquals("servicePrincipalCredential")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } servicePrincipalCredential = SecretBase.DeserializeSecretBase(property0.Value); 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 DynamicsCrmLinkedService(type, connectVia, description, parameters, annotations, additionalProperties, deploymentType, hostName, port, serviceUri, organizationName, authenticationType, username, password, servicePrincipalId, servicePrincipalCredentialType, servicePrincipalCredential, encryptedCredential)); }
internal static DynamicsCrmLinkedService DeserializeDynamicsCrmLinkedService(JsonElement element) { string type = default; Optional <IntegrationRuntimeReference> connectVia = default; Optional <string> description = default; Optional <IDictionary <string, ParameterSpecification> > parameters = default; Optional <IList <object> > annotations = default; DynamicsDeploymentType deploymentType = default; Optional <object> hostName = default; Optional <object> port = default; Optional <object> serviceUri = default; Optional <object> organizationName = default; DynamicsAuthenticationType authenticationType = default; Optional <object> username = default; Optional <SecretBase> password = default; Optional <object> servicePrincipalId = default; Optional <DynamicsServicePrincipalCredentialType> servicePrincipalCredentialType = default; Optional <SecretBase> servicePrincipalCredential = default; Optional <object> encryptedCredential = default; IDictionary <string, object> additionalProperties = default; Dictionary <string, object> additionalPropertiesDictionary = new Dictionary <string, object>(); 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) { property.ThrowNonNullablePropertyIsNull(); continue; } connectVia = IntegrationRuntimeReference.DeserializeIntegrationRuntimeReference(property.Value); continue; } if (property.NameEquals("description")) { description = property.Value.GetString(); continue; } if (property.NameEquals("parameters")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } 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")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <object> array = new List <object>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetObject()); } annotations = array; continue; } if (property.NameEquals("typeProperties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("deploymentType")) { deploymentType = new DynamicsDeploymentType(property0.Value.GetString()); continue; } if (property0.NameEquals("hostName")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } hostName = property0.Value.GetObject(); continue; } if (property0.NameEquals("port")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } port = property0.Value.GetObject(); continue; } if (property0.NameEquals("serviceUri")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } serviceUri = property0.Value.GetObject(); continue; } if (property0.NameEquals("organizationName")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } organizationName = property0.Value.GetObject(); continue; } if (property0.NameEquals("authenticationType")) { authenticationType = new DynamicsAuthenticationType(property0.Value.GetString()); continue; } if (property0.NameEquals("username")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } username = property0.Value.GetObject(); continue; } if (property0.NameEquals("password")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } password = SecretBase.DeserializeSecretBase(property0.Value); continue; } if (property0.NameEquals("servicePrincipalId")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } servicePrincipalId = property0.Value.GetObject(); continue; } if (property0.NameEquals("servicePrincipalCredentialType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } servicePrincipalCredentialType = new DynamicsServicePrincipalCredentialType(property0.Value.GetString()); continue; } if (property0.NameEquals("servicePrincipalCredential")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } servicePrincipalCredential = SecretBase.DeserializeSecretBase(property0.Value); continue; } if (property0.NameEquals("encryptedCredential")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } encryptedCredential = property0.Value.GetObject(); continue; } } continue; } additionalPropertiesDictionary.Add(property.Name, property.Value.GetObject()); } additionalProperties = additionalPropertiesDictionary; return(new DynamicsCrmLinkedService(type, connectVia.Value, description.Value, Optional.ToDictionary(parameters), Optional.ToList(annotations), additionalProperties, deploymentType, hostName.Value, port.Value, serviceUri.Value, organizationName.Value, authenticationType, username.Value, password.Value, servicePrincipalId.Value, Optional.ToNullable(servicePrincipalCredentialType), servicePrincipalCredential.Value, encryptedCredential.Value)); }