internal static IndexingParametersConfiguration DeserializeIndexingParametersConfiguration(JsonElement element) { Optional <BlobIndexerParsingMode> parsingMode = default; Optional <string> excludedFileNameExtensions = default; Optional <string> indexedFileNameExtensions = default; Optional <bool> failOnUnsupportedContentType = default; Optional <bool> failOnUnprocessableDocument = default; Optional <bool> indexStorageMetadataOnlyForOversizedDocuments = default; Optional <string> delimitedTextHeaders = default; Optional <string> delimitedTextDelimiter = default; Optional <bool> firstLineContainsHeaders = default; Optional <string> documentRoot = default; Optional <BlobIndexerDataToExtract> dataToExtract = default; Optional <BlobIndexerImageAction> imageAction = default; Optional <bool> allowSkillsetToReadFileData = default; Optional <BlobIndexerPdfTextRotationAlgorithm> pdfTextRotationAlgorithm = default; Optional <IndexerExecutionEnvironment> executionEnvironment = default; Optional <string> queryTimeout = default; IDictionary <string, object> additionalProperties = default; Dictionary <string, object> additionalPropertiesDictionary = new Dictionary <string, object>(); foreach (var property in element.EnumerateObject()) { if (property.NameEquals("parsingMode")) { parsingMode = new BlobIndexerParsingMode(property.Value.GetString()); continue; } if (property.NameEquals("excludedFileNameExtensions")) { excludedFileNameExtensions = property.Value.GetString(); continue; } if (property.NameEquals("indexedFileNameExtensions")) { indexedFileNameExtensions = property.Value.GetString(); continue; } if (property.NameEquals("failOnUnsupportedContentType")) { failOnUnsupportedContentType = property.Value.GetBoolean(); continue; } if (property.NameEquals("failOnUnprocessableDocument")) { failOnUnprocessableDocument = property.Value.GetBoolean(); continue; } if (property.NameEquals("indexStorageMetadataOnlyForOversizedDocuments")) { indexStorageMetadataOnlyForOversizedDocuments = property.Value.GetBoolean(); continue; } if (property.NameEquals("delimitedTextHeaders")) { delimitedTextHeaders = property.Value.GetString(); continue; } if (property.NameEquals("delimitedTextDelimiter")) { delimitedTextDelimiter = property.Value.GetString(); continue; } if (property.NameEquals("firstLineContainsHeaders")) { firstLineContainsHeaders = property.Value.GetBoolean(); continue; } if (property.NameEquals("documentRoot")) { documentRoot = property.Value.GetString(); continue; } if (property.NameEquals("dataToExtract")) { dataToExtract = new BlobIndexerDataToExtract(property.Value.GetString()); continue; } if (property.NameEquals("imageAction")) { imageAction = new BlobIndexerImageAction(property.Value.GetString()); continue; } if (property.NameEquals("allowSkillsetToReadFileData")) { allowSkillsetToReadFileData = property.Value.GetBoolean(); continue; } if (property.NameEquals("pdfTextRotationAlgorithm")) { pdfTextRotationAlgorithm = new BlobIndexerPdfTextRotationAlgorithm(property.Value.GetString()); continue; } if (property.NameEquals("executionEnvironment")) { executionEnvironment = new IndexerExecutionEnvironment(property.Value.GetString()); continue; } if (property.NameEquals("queryTimeout")) { queryTimeout = property.Value.GetString(); continue; } additionalPropertiesDictionary.Add(property.Name, property.Value.GetObject()); } additionalProperties = additionalPropertiesDictionary; return(new IndexingParametersConfiguration(Optional.ToNullable(parsingMode), excludedFileNameExtensions.Value, indexedFileNameExtensions.Value, Optional.ToNullable(failOnUnsupportedContentType), Optional.ToNullable(failOnUnprocessableDocument), Optional.ToNullable(indexStorageMetadataOnlyForOversizedDocuments), delimitedTextHeaders.Value, delimitedTextDelimiter.Value, Optional.ToNullable(firstLineContainsHeaders), documentRoot.Value, Optional.ToNullable(dataToExtract), Optional.ToNullable(imageAction), Optional.ToNullable(allowSkillsetToReadFileData), Optional.ToNullable(pdfTextRotationAlgorithm), Optional.ToNullable(executionEnvironment), queryTimeout.Value, additionalProperties)); }
internal static DocumentExtractionSkill DeserializeDocumentExtractionSkill(JsonElement element) { Optional <BlobIndexerParsingMode?> parsingMode = default; Optional <BlobIndexerDataToExtract?> dataToExtract = default; Optional <IDictionary <string, object> > configuration = default; string odataType = default; Optional <string> name = default; Optional <string> description = default; Optional <string> context = default; IList <InputFieldMappingEntry> inputs = default; IList <OutputFieldMappingEntry> outputs = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("parsingMode")) { if (property.Value.ValueKind == JsonValueKind.Null) { parsingMode = null; continue; } parsingMode = new BlobIndexerParsingMode(property.Value.GetString()); continue; } if (property.NameEquals("dataToExtract")) { if (property.Value.ValueKind == JsonValueKind.Null) { dataToExtract = null; continue; } dataToExtract = new BlobIndexerDataToExtract(property.Value.GetString()); continue; } if (property.NameEquals("configuration")) { if (property.Value.ValueKind == JsonValueKind.Null) { configuration = null; continue; } Dictionary <string, object> dictionary = new Dictionary <string, object>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetObject()); } configuration = dictionary; continue; } if (property.NameEquals("@odata.type")) { odataType = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("description")) { description = property.Value.GetString(); continue; } if (property.NameEquals("context")) { context = property.Value.GetString(); continue; } if (property.NameEquals("inputs")) { List <InputFieldMappingEntry> array = new List <InputFieldMappingEntry>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(InputFieldMappingEntry.DeserializeInputFieldMappingEntry(item)); } inputs = array; continue; } if (property.NameEquals("outputs")) { List <OutputFieldMappingEntry> array = new List <OutputFieldMappingEntry>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(OutputFieldMappingEntry.DeserializeOutputFieldMappingEntry(item)); } outputs = array; continue; } } return(new DocumentExtractionSkill(odataType, name.Value, description.Value, context.Value, inputs, outputs, Optional.ToNullable(parsingMode), Optional.ToNullable(dataToExtract), Optional.ToDictionary(configuration))); }