internal static AnalyzeOperationResult_internal DeserializeAnalyzeOperationResult_internal(JsonElement element)
        {
            AnalyzeOperationResult_internal result = new AnalyzeOperationResult_internal();

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("status"))
                {
                    result.Status = property.Value.GetString().ToOperationStatus();
                    continue;
                }
                if (property.NameEquals("createdDateTime"))
                {
                    result.CreatedDateTime = property.Value.GetDateTimeOffset("S");
                    continue;
                }
                if (property.NameEquals("lastUpdatedDateTime"))
                {
                    result.LastUpdatedDateTime = property.Value.GetDateTimeOffset("S");
                    continue;
                }
                if (property.NameEquals("analyzeResult"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        continue;
                    }
                    result.AnalyzeResult = AnalyzeResult_internal.DeserializeAnalyzeResult_internal(property.Value);
                    continue;
                }
            }
            return(result);
        }
예제 #2
0
 internal AnalyzeOperationResult_internal(OperationStatus status, DateTimeOffset createdDateTime, DateTimeOffset lastUpdatedDateTime, AnalyzeResult_internal analyzeResult)
 {
     Status              = status;
     CreatedDateTime     = createdDateTime;
     LastUpdatedDateTime = lastUpdatedDateTime;
     AnalyzeResult       = analyzeResult;
 }
 private static RecognizedReceiptCollection ConvertToRecognizedReceipts(AnalyzeResult_internal analyzeResult)
 {
     List<RecognizedReceipt> receipts = new List<RecognizedReceipt>();
     for (int i = 0; i < analyzeResult.DocumentResults.Count; i++)
     {
         receipts.Add(new RecognizedReceipt(analyzeResult.DocumentResults[i], analyzeResult.PageResults, analyzeResult.ReadResults));
     }
     return new RecognizedReceiptCollection(receipts);
 }
        private static IReadOnlyList <RecognizedForm> ConvertSupervisedResult(AnalyzeResult_internal analyzeResult)
        {
            List <RecognizedForm> forms = new List <RecognizedForm>();

            foreach (var documentResult in analyzeResult.DocumentResults)
            {
                forms.Add(new RecognizedForm(documentResult, analyzeResult.PageResults, analyzeResult.ReadResults));
            }
            return(forms);
        }
예제 #5
0
        private static RecognizedFormCollection ConvertUnsupervisedResult(AnalyzeResult_internal analyzeResult)
        {
            List <RecognizedForm> forms = new List <RecognizedForm>();

            for (int pageIndex = 0; pageIndex < analyzeResult.PageResults.Count; pageIndex++)
            {
                forms.Add(new RecognizedForm(analyzeResult.PageResults[pageIndex], analyzeResult.ReadResults, pageIndex));
            }
            return(new RecognizedFormCollection(forms));
        }
        private static RecognizedFormCollection ConvertUnsupervisedResult(AnalyzeResult_internal analyzeResult)
        {
            List <RecognizedForm> forms = new List <RecognizedForm>();

            foreach (var pageResult in analyzeResult.PageResults)
            {
                forms.Add(new RecognizedForm(pageResult, analyzeResult.ReadResults));
            }
            return(new RecognizedFormCollection(forms));
        }
        internal static AnalyzeOperationResult_internal DeserializeAnalyzeOperationResult_internal(JsonElement element)
        {
            OperationStatus        status              = default;
            DateTimeOffset         createdDateTime     = default;
            DateTimeOffset         lastUpdatedDateTime = default;
            AnalyzeResult_internal analyzeResult       = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("status"))
                {
                    status = property.Value.GetString().ToOperationStatus();
                    continue;
                }
                if (property.NameEquals("createdDateTime"))
                {
                    createdDateTime = property.Value.GetDateTimeOffset("O");
                    continue;
                }
                if (property.NameEquals("lastUpdatedDateTime"))
                {
                    lastUpdatedDateTime = property.Value.GetDateTimeOffset("O");
                    continue;
                }
                if (property.NameEquals("analyzeResult"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        continue;
                    }
                    analyzeResult = AnalyzeResult_internal.DeserializeAnalyzeResult_internal(property.Value);
                    continue;
                }
            }
            return(new AnalyzeOperationResult_internal(status, createdDateTime, lastUpdatedDateTime, analyzeResult));
        }
예제 #8
0
        internal static AnalyzeResult_internal DeserializeAnalyzeResult_internal(JsonElement element)
        {
            AnalyzeResult_internal result = new AnalyzeResult_internal();

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("version"))
                {
                    result.Version = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("readResults"))
                {
                    foreach (var item in property.Value.EnumerateArray())
                    {
                        result.ReadResults.Add(ReadResult_internal.DeserializeReadResult_internal(item));
                    }
                    continue;
                }
                if (property.NameEquals("pageResults"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        continue;
                    }
                    result.PageResults = new List <PageResult_internal>();
                    foreach (var item in property.Value.EnumerateArray())
                    {
                        result.PageResults.Add(PageResult_internal.DeserializePageResult_internal(item));
                    }
                    continue;
                }
                if (property.NameEquals("documentResults"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        continue;
                    }
                    result.DocumentResults = new List <DocumentResult_internal>();
                    foreach (var item in property.Value.EnumerateArray())
                    {
                        result.DocumentResults.Add(DocumentResult_internal.DeserializeDocumentResult_internal(item));
                    }
                    continue;
                }
                if (property.NameEquals("errors"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        continue;
                    }
                    result.Errors = new List <FormRecognizerError>();
                    foreach (var item in property.Value.EnumerateArray())
                    {
                        result.Errors.Add(FormRecognizerError.DeserializeFormRecognizerError(item));
                    }
                    continue;
                }
            }
            return(result);
        }
 private static IReadOnlyList <RecognizedForm> ConvertToRecognizedForms(AnalyzeResult_internal analyzeResult)
 {
     return(analyzeResult.DocumentResults?.Count == 0 ?
            ConvertUnsupervisedResult(analyzeResult) :
            ConvertSupervisedResult(analyzeResult));
 }
예제 #10
0
 private static RecognizedFormCollection ConvertToRecognizedForms(AnalyzeResult_internal analyzeResult)
 {
     return(analyzeResult.DocumentResults?.Count == 0 ?
            ConvertUnsupervisedResult(analyzeResult) :
            ConvertSupervisedResult(analyzeResult));
 }