internal static SearchIndexer DeserializeSearchIndexer(JsonElement element) { SearchIndexer result = new SearchIndexer(); foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { result.Name = property.Value.GetString(); continue; } if (property.NameEquals("description")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } result.Description = property.Value.GetString(); continue; } if (property.NameEquals("dataSourceName")) { result.DataSourceName = property.Value.GetString(); continue; } if (property.NameEquals("skillsetName")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } result.SkillsetName = property.Value.GetString(); continue; } if (property.NameEquals("targetIndexName")) { result.TargetIndexName = property.Value.GetString(); continue; } if (property.NameEquals("schedule")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } result.Schedule = IndexingSchedule.DeserializeIndexingSchedule(property.Value); continue; } if (property.NameEquals("parameters")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } result.Parameters = IndexingParameters.DeserializeIndexingParameters(property.Value); continue; } if (property.NameEquals("fieldMappings")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } result.FieldMappings = new List <FieldMapping>(); foreach (var item in property.Value.EnumerateArray()) { result.FieldMappings.Add(FieldMapping.DeserializeFieldMapping(item)); } continue; } if (property.NameEquals("outputFieldMappings")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } result.OutputFieldMappings = new List <FieldMapping>(); foreach (var item in property.Value.EnumerateArray()) { result.OutputFieldMappings.Add(FieldMapping.DeserializeFieldMapping(item)); } continue; } if (property.NameEquals("disabled")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } result.IsDisabled = property.Value.GetBoolean(); continue; } if (property.NameEquals("@odata.etag")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } result.ETag = property.Value.GetString(); continue; } } return(result); }
internal static SearchIndexer DeserializeSearchIndexer(JsonElement element) { string name = default; string description = default; string dataSourceName = default; string skillsetName = default; string targetIndexName = default; IndexingSchedule schedule = default; IndexingParameters parameters = default; IList <FieldMapping> fieldMappings = default; IList <FieldMapping> outputFieldMappings = default; bool? disabled = default; string odataetag = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("description")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } description = property.Value.GetString(); continue; } if (property.NameEquals("dataSourceName")) { dataSourceName = property.Value.GetString(); continue; } if (property.NameEquals("skillsetName")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } skillsetName = property.Value.GetString(); continue; } if (property.NameEquals("targetIndexName")) { targetIndexName = property.Value.GetString(); continue; } if (property.NameEquals("schedule")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } schedule = IndexingSchedule.DeserializeIndexingSchedule(property.Value); continue; } if (property.NameEquals("parameters")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } parameters = IndexingParameters.DeserializeIndexingParameters(property.Value); continue; } if (property.NameEquals("fieldMappings")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <FieldMapping> array = new List <FieldMapping>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(FieldMapping.DeserializeFieldMapping(item)); } fieldMappings = array; continue; } if (property.NameEquals("outputFieldMappings")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <FieldMapping> array = new List <FieldMapping>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(FieldMapping.DeserializeFieldMapping(item)); } outputFieldMappings = array; continue; } if (property.NameEquals("disabled")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } disabled = property.Value.GetBoolean(); continue; } if (property.NameEquals("@odata.etag")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } odataetag = property.Value.GetString(); continue; } } return(new SearchIndexer(name, description, dataSourceName, skillsetName, targetIndexName, schedule, parameters, fieldMappings, outputFieldMappings, disabled, odataetag)); }