diff --git a/docs/code_samples/bank_account_details_v2.txt b/docs/code_samples/bank_account_details_v2.txt index 7965f8b3d..6e0682333 100644 --- a/docs/code_samples/bank_account_details_v2.txt +++ b/docs/code_samples/bank_account_details_v2.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.fr.bankaccountdetails.BankAccountDetailsV2; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.fr.bankaccountdetails.BankAccountDetailsV2; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/barcode_reader_v1.txt b/docs/code_samples/barcode_reader_v1.txt index 7d02437d7..b44cbacfa 100644 --- a/docs/code_samples/barcode_reader_v1.txt +++ b/docs/code_samples/barcode_reader_v1.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.barcodereader.BarcodeReaderV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.barcodereader.BarcodeReaderV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/carte_grise_v1.txt b/docs/code_samples/carte_grise_v1.txt index b95b3c542..fabb8ae1d 100644 --- a/docs/code_samples/carte_grise_v1.txt +++ b/docs/code_samples/carte_grise_v1.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.fr.cartegrise.CarteGriseV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.fr.cartegrise.CarteGriseV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/cropper_v1.txt b/docs/code_samples/cropper_v1.txt index ebfe63583..906d1af16 100644 --- a/docs/code_samples/cropper_v1.txt +++ b/docs/code_samples/cropper_v1.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.cropper.CropperV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.cropper.CropperV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/default.txt b/docs/code_samples/default.txt index eb497b35d..5ff7a6452 100644 --- a/docs/code_samples/default.txt +++ b/docs/code_samples/default.txt @@ -1,8 +1,8 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.generated.GeneratedV1; -import com.mindee.http.Endpoint; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.generated.GeneratedV1; +import com.mindee.v1.http.Endpoint; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/default_async.txt b/docs/code_samples/default_async.txt index 11039520e..735c0e02d 100644 --- a/docs/code_samples/default_async.txt +++ b/docs/code_samples/default_async.txt @@ -1,8 +1,8 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.product.generated.GeneratedV1; -import com.mindee.http.Endpoint; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.product.generated.GeneratedV1; +import com.mindee.v1.http.Endpoint; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/driver_license_v1_async.txt b/docs/code_samples/driver_license_v1_async.txt index ff91d52a8..ff8114bb3 100644 --- a/docs/code_samples/driver_license_v1_async.txt +++ b/docs/code_samples/driver_license_v1_async.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.product.driverlicense.DriverLicenseV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.product.driverlicense.DriverLicenseV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/expense_receipts_v5.txt b/docs/code_samples/expense_receipts_v5.txt index 07390d160..21a66f4f7 100644 --- a/docs/code_samples/expense_receipts_v5.txt +++ b/docs/code_samples/expense_receipts_v5.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.receipt.ReceiptV5; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.receipt.ReceiptV5; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/expense_receipts_v5_async.txt b/docs/code_samples/expense_receipts_v5_async.txt index c6fe76144..b2e797982 100644 --- a/docs/code_samples/expense_receipts_v5_async.txt +++ b/docs/code_samples/expense_receipts_v5_async.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.product.receipt.ReceiptV5; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.product.receipt.ReceiptV5; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/financial_document_v1.txt b/docs/code_samples/financial_document_v1.txt index f9e269c5f..73fda927b 100644 --- a/docs/code_samples/financial_document_v1.txt +++ b/docs/code_samples/financial_document_v1.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.financialdocument.FinancialDocumentV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.financialdocument.FinancialDocumentV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/financial_document_v1_async.txt b/docs/code_samples/financial_document_v1_async.txt index 2de07a924..1370a6416 100644 --- a/docs/code_samples/financial_document_v1_async.txt +++ b/docs/code_samples/financial_document_v1_async.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.product.financialdocument.FinancialDocumentV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.product.financialdocument.FinancialDocumentV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/idcard_fr_v1.txt b/docs/code_samples/idcard_fr_v1.txt index c760517d7..7e531ecd7 100644 --- a/docs/code_samples/idcard_fr_v1.txt +++ b/docs/code_samples/idcard_fr_v1.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.fr.idcard.IdCardV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.fr.idcard.IdCardV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/idcard_fr_v2.txt b/docs/code_samples/idcard_fr_v2.txt index 15ad29781..88d22f1b1 100644 --- a/docs/code_samples/idcard_fr_v2.txt +++ b/docs/code_samples/idcard_fr_v2.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.fr.idcard.IdCardV2; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.fr.idcard.IdCardV2; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/ind_passport_v1_async.txt b/docs/code_samples/ind_passport_v1_async.txt index 2bde854cd..b64965cda 100644 --- a/docs/code_samples/ind_passport_v1_async.txt +++ b/docs/code_samples/ind_passport_v1_async.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.product.ind.indianpassport.IndianPassportV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.product.ind.indianpassport.IndianPassportV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/international_id_v2_async.txt b/docs/code_samples/international_id_v2_async.txt index e12c1774b..3b6956c4f 100644 --- a/docs/code_samples/international_id_v2_async.txt +++ b/docs/code_samples/international_id_v2_async.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.product.internationalid.InternationalIdV2; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.product.internationalid.InternationalIdV2; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/invoice_splitter_v1_async.txt b/docs/code_samples/invoice_splitter_v1_async.txt index 69abfa569..ccbf64cf4 100644 --- a/docs/code_samples/invoice_splitter_v1_async.txt +++ b/docs/code_samples/invoice_splitter_v1_async.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.product.invoicesplitter.InvoiceSplitterV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.product.invoicesplitter.InvoiceSplitterV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/invoices_v4.txt b/docs/code_samples/invoices_v4.txt index cb472586c..5d666e865 100644 --- a/docs/code_samples/invoices_v4.txt +++ b/docs/code_samples/invoices_v4.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; +import com.mindee.v1.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.invoice.InvoiceV4; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.invoice.InvoiceV4; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/invoices_v4_async.txt b/docs/code_samples/invoices_v4_async.txt index 51caddb3a..ac52fd1be 100644 --- a/docs/code_samples/invoices_v4_async.txt +++ b/docs/code_samples/invoices_v4_async.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; +import com.mindee.v1.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.product.invoice.InvoiceV4; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.product.invoice.InvoiceV4; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/multi_receipts_detector_v1.txt b/docs/code_samples/multi_receipts_detector_v1.txt index 190e9bfb0..ec02e88e2 100644 --- a/docs/code_samples/multi_receipts_detector_v1.txt +++ b/docs/code_samples/multi_receipts_detector_v1.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.multireceiptsdetector.MultiReceiptsDetectorV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/passport_v1.txt b/docs/code_samples/passport_v1.txt index 9b3cb1950..9ae473641 100644 --- a/docs/code_samples/passport_v1.txt +++ b/docs/code_samples/passport_v1.txt @@ -1,7 +1,7 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.passport.PassportV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.passport.PassportV1; import java.io.File; import java.io.IOException; diff --git a/docs/code_samples/v2_classification.txt b/docs/code_samples/v2_classification.txt index fc9339c84..f958f86e8 100644 --- a/docs/code_samples/v2_classification.txt +++ b/docs/code_samples/v2_classification.txt @@ -1,5 +1,5 @@ -import com.mindee.MindeeClientV2; import com.mindee.input.LocalInputSource; +import com.mindee.v2.MindeeClient; import com.mindee.v2.product.classification.ClassificationClassifier; import com.mindee.v2.product.classification.ClassificationResponse; import com.mindee.v2.product.classification.ClassificationResult; @@ -16,7 +16,7 @@ public class SimpleMindeeClientV2 { String modelId = "MY_MODEL_ID"; // Init a new client - MindeeClientV2 mindeeClient = new MindeeClientV2(apiKey); + MindeeClient mindeeClient = new MindeeClient(apiKey); // Set inference parameters // Note: modelId is mandatory. diff --git a/docs/code_samples/v2_crop.txt b/docs/code_samples/v2_crop.txt index 3d80e5751..b7a9af692 100644 --- a/docs/code_samples/v2_crop.txt +++ b/docs/code_samples/v2_crop.txt @@ -1,5 +1,5 @@ -import com.mindee.MindeeClientV2; import com.mindee.input.LocalInputSource; +import com.mindee.v2.MindeeClient; import com.mindee.v2.product.crop.CropResponse; import com.mindee.v2.product.crop.CropResult; import com.mindee.v2.product.crop.params.CropParameters; @@ -15,7 +15,7 @@ public class SimpleMindeeClientV2 { String modelId = "MY_MODEL_ID"; // Init a new client - MindeeClientV2 mindeeClient = new MindeeClientV2(apiKey); + MindeeClient mindeeClient = new MindeeClient(apiKey); // Set inference parameters CropParameters cropParams = CropParameters diff --git a/docs/code_samples/v2_extraction.txt b/docs/code_samples/v2_extraction.txt index 954b550c4..bcfba5ed9 100644 --- a/docs/code_samples/v2_extraction.txt +++ b/docs/code_samples/v2_extraction.txt @@ -1,8 +1,8 @@ -import com.mindee.MindeeClientV2; -import com.mindee.InferenceParameters; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.v2.InferenceResponse; -import com.mindee.parsing.v2.field.InferenceFields; +import com.mindee.v2.MindeeClient; +import com.mindee.v2.product.extraction.params.ExtractionParameters; +import com.mindee.v2.product.extraction.ExtractionResponse; +import com.mindee.v2.parsing.inference.field.InferenceFields; import java.io.IOException; public class SimpleMindeeClientV2 { @@ -15,10 +15,10 @@ public class SimpleMindeeClientV2 { String modelId = "MY_MODEL_ID"; // Init a new client - MindeeClientV2 mindeeClient = new MindeeClientV2(apiKey); + MindeeClient mindeeClient = new MindeeClient(apiKey); // Set inference parameters - InferenceParameters extractionParams = InferenceParameters + ExtractionParameters extractionParams = ExtractionParameters // ID of the model, required. .builder(modelId) @@ -40,8 +40,8 @@ public class SimpleMindeeClientV2 { LocalInputSource inputSource = new LocalInputSource(filePath); // Send for processing using polling - InferenceResponse response = mindeeClient.enqueueAndGetResult( - InferenceResponse.class, + ExtractionResponse response = mindeeClient.enqueueAndGetResult( + ExtractionResponse.class, inputSource, extractionParams ); diff --git a/docs/code_samples/v2_ocr.txt b/docs/code_samples/v2_ocr.txt index 95c676021..2401b2ddf 100644 --- a/docs/code_samples/v2_ocr.txt +++ b/docs/code_samples/v2_ocr.txt @@ -1,5 +1,5 @@ -import com.mindee.MindeeClientV2; import com.mindee.input.LocalInputSource; +import com.mindee.v2.MindeeClient; import com.mindee.v2.product.ocr.OcrResponse; import com.mindee.v2.product.ocr.OcrResult; import com.mindee.v2.product.ocr.params.OcrParameters; @@ -15,7 +15,7 @@ public class SimpleMindeeClientV2 { String modelId = "MY_MODEL_ID"; // Init a new client - MindeeClientV2 mindeeClient = new MindeeClientV2(apiKey); + MindeeClient mindeeClient = new MindeeClient(apiKey); // Set inference parameters OcrParameters ocrParams = OcrParameters diff --git a/docs/code_samples/v2_split.txt b/docs/code_samples/v2_split.txt index b71623d36..a6acd3d29 100644 --- a/docs/code_samples/v2_split.txt +++ b/docs/code_samples/v2_split.txt @@ -1,5 +1,5 @@ -import com.mindee.MindeeClientV2; import com.mindee.input.LocalInputSource; +import com.mindee.v2.MindeeClient; import com.mindee.v2.product.split.SplitResponse; import com.mindee.v2.product.split.SplitResult; import com.mindee.v2.product.split.params.SplitParameters; @@ -15,7 +15,7 @@ public class SimpleMindeeClientV2 { String modelId = "MY_MODEL_ID"; // Init a new client - MindeeClientV2 mindeeClient = new MindeeClientV2(apiKey); + MindeeClient mindeeClient = new MindeeClient(apiKey); // Set inference parameters SplitParameters splitParams = SplitParameters diff --git a/docs/code_samples/workflow_execution.txt b/docs/code_samples/workflow_execution.txt index 86390e51f..2f2dce7b0 100644 --- a/docs/code_samples/workflow_execution.txt +++ b/docs/code_samples/workflow_execution.txt @@ -1,8 +1,8 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.WorkflowResponse; -import com.mindee.product.generated.GeneratedV1; -import com.mindee.http.MindeeHttpException; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.WorkflowResponse; +import com.mindee.v1.product.generated.GeneratedV1; +import com.mindee.v1.http.MindeeHttpExceptionV1; import java.io.IOException; public class SimpleMindeeClientV1 { diff --git a/example/AutoInvoiceSplitterExtractionExample.java b/example/AutoInvoiceSplitterExtractionExample.java index 292a21a11..5b2a0c4ca 100644 --- a/example/AutoInvoiceSplitterExtractionExample.java +++ b/example/AutoInvoiceSplitterExtractionExample.java @@ -1,10 +1,10 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; import com.mindee.extraction.ExtractedPDF; import com.mindee.extraction.PDFExtractor; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.product.invoice.InvoiceV4; -import com.mindee.product.invoicesplitter.InvoiceSplitterV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.product.invoice.InvoiceV4; +import com.mindee.v1.product.invoicesplitter.InvoiceSplitterV1; import java.io.File; import java.io.IOException; diff --git a/example/AutoMultiReceiptExtractionExample.java b/example/AutoMultiReceiptExtractionExample.java index f079bbdd1..bf3553d4c 100644 --- a/example/AutoMultiReceiptExtractionExample.java +++ b/example/AutoMultiReceiptExtractionExample.java @@ -1,12 +1,12 @@ -import com.mindee.MindeeClient; import com.mindee.input.LocalInputSource; import com.mindee.extraction.ExtractedImage; import com.mindee.extraction.ImageExtractor; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.common.Page; -import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1; -import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1Document; -import com.mindee.product.receipt.ReceiptV5; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Page; +import com.mindee.v1.product.multireceiptsdetector.MultiReceiptsDetectorV1; +import com.mindee.v1.product.multireceiptsdetector.MultiReceiptsDetectorV1Document; +import com.mindee.v1.product.receipt.ReceiptV5; import java.io.File; import java.io.IOException; diff --git a/src/main/java/com/mindee/CommandLineInterface.java b/src/main/java/com/mindee/CommandLineInterface.java index 2a02648a9..d4957ada6 100644 --- a/src/main/java/com/mindee/CommandLineInterface.java +++ b/src/main/java/com/mindee/CommandLineInterface.java @@ -1,16 +1,18 @@ package com.mindee; -import com.mindee.cli.CommandLineInterfaceProducts; -import com.mindee.cli.ProductProcessor; -import com.mindee.http.Endpoint; import com.mindee.input.LocalInputSource; import com.mindee.input.PageOptions; import com.mindee.input.PageOptionsOperation; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.parsing.common.Inference; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.common.ocr.Ocr; -import com.mindee.product.generated.GeneratedV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.cli.CommandLineInterfaceProducts; +import com.mindee.v1.cli.ProductProcessor; +import com.mindee.v1.clientOptions.PredictOptions; +import com.mindee.v1.http.Endpoint; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.parsing.common.Inference; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.ocr.Ocr; +import com.mindee.v1.product.generated.GeneratedV1; import java.io.File; import java.io.IOException; import java.lang.reflect.Method; diff --git a/src/main/java/com/mindee/geometry/Polygon.java b/src/main/java/com/mindee/geometry/Polygon.java index e01985e78..168fbb6f2 100644 --- a/src/main/java/com/mindee/geometry/Polygon.java +++ b/src/main/java/com/mindee/geometry/Polygon.java @@ -2,8 +2,9 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import java.util.ArrayList; +import java.util.Collection; import java.util.List; -import lombok.Builder; +import java.util.stream.Collectors; import lombok.Getter; /** @@ -17,7 +18,19 @@ public class Polygon { */ private List coordinates = new ArrayList<>(); - @Builder + /** + * Create a Polygon from a list of a list of floats. + */ + public Polygon(Collection> coordinates) { + this.coordinates = coordinates + .stream() + .map(coordinate -> new Point(coordinate.get(0), coordinate.get(1))) + .collect(Collectors.toList()); + } + + /** + * Create a Polygon from a list of Points. + */ public Polygon(List coordinates) { this.coordinates = coordinates; } @@ -82,6 +95,37 @@ public String toStringPrecise() { return builder.toString(); } + /** + * Compare two polygons based on their Y coordinates. + * Useful for sorting lists. + */ + public int compareOnY(Polygon polygon2) { + double sort = this.getMinMaxY().getMin() - polygon2.getMinMaxY().getMin(); + if (sort == 0) { + return 0; + } + return sort < 0 ? -1 : 1; + } + + /** + * Compare two polygons based on their X coordinates. + * Useful for sorting lists. + */ + public int compareOnX(Polygon polygon2) { + double sort = this.getMinMaxX().getMin() - polygon2.getMinMaxX().getMin(); + if (sort == 0) { + return 0; + } + return sort < 0 ? -1 : 1; + } + + /** + * Merge the coordinates of the two polygons. + */ + public Polygon combine(Polygon target) { + return PolygonUtils.combine(this, target); + } + @Override public boolean equals(Object object) { if (this == object) { diff --git a/src/main/java/com/mindee/geometry/PolygonDeserializer.java b/src/main/java/com/mindee/geometry/PolygonDeserializer.java index 22b4ead3b..42a9e6ae7 100644 --- a/src/main/java/com/mindee/geometry/PolygonDeserializer.java +++ b/src/main/java/com/mindee/geometry/PolygonDeserializer.java @@ -35,6 +35,6 @@ public Polygon deserialize( }; List> polygonList = mapper.readerFor(typeRef).readValue(node); - return PolygonUtils.getFrom(polygonList); + return new Polygon(polygonList); } } diff --git a/src/main/java/com/mindee/geometry/PolygonUtils.java b/src/main/java/com/mindee/geometry/PolygonUtils.java index ee32a294f..dd5a8c977 100644 --- a/src/main/java/com/mindee/geometry/PolygonUtils.java +++ b/src/main/java/com/mindee/geometry/PolygonUtils.java @@ -3,27 +3,16 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; -import java.util.OptionalDouble; import java.util.stream.Collectors; /** * Methods for working with Polygons. + * Used internally, use at your own risk. */ public final class PolygonUtils { private PolygonUtils() { } - /** - * Create a Polygon from a list of a list of floats. - */ - public static Polygon getFrom(List> polygon) { - List coordinates = polygon - .stream() - .map(coordinate -> new Point(coordinate.get(0), coordinate.get(1))) - .collect(Collectors.toList()); - return new Polygon(coordinates); - } - /** * Get the central coordinates (centroid) of a list of Points. */ @@ -35,30 +24,6 @@ public static Point getCentroid(List vertices) { return new Point(xSum / verticesSum, ySum / verticesSum); } - /** - * Compare two polygons based on their Y coordinates. - * Useful for sorting lists. - */ - public static int CompareOnY(Polygon polygon1, Polygon polygon2) { - double sort = getMinYCoordinate(polygon1) - getMinYCoordinate(polygon2); - if (sort == 0) { - return 0; - } - return sort < 0 ? -1 : 1; - } - - /** - * Compare two polygons based on their X coordinates. - * Useful for sorting lists. - */ - public static int CompareOnX(Polygon polygon1, Polygon polygon2) { - double sort = getMinXCoordinate(polygon1) - getMinXCoordinate(polygon2); - if (sort == 0) { - return 0; - } - return sort < 0 ? -1 : 1; - } - /** * Get the maximum and minimum Y coordinates in a given list of Points. */ @@ -90,75 +55,6 @@ public static boolean isPointInPolygonY(Point centroid, Polygon polygon) { return isPointInY(centroid, yCoords.getMin(), yCoords.getMax()); } - public static Double getMinYCoordinate(Polygon polygon) { - OptionalDouble min = polygon - .getCoordinates() - .stream() - .map(Point::getY) - .mapToDouble(Double::doubleValue) - .min(); - - if (min.isPresent()) { - return min.getAsDouble(); - } - - throw new IllegalStateException( - "The min Y could not be found " - + "because it seems that there is no coordinates in the current polygon." - ); - } - - public static Double getMaxYCoordinate(Polygon polygon) { - OptionalDouble max = polygon - .getCoordinates() - .stream() - .map(Point::getY) - .mapToDouble(Double::doubleValue) - .max(); - if (max.isPresent()) { - return max.getAsDouble(); - } - - throw new IllegalStateException( - "The max Y could not be found " - + "because it seems that there is no coordinates in the current polygon." - ); - } - - public static Double getMinXCoordinate(Polygon polygon) { - OptionalDouble min = polygon - .getCoordinates() - .stream() - .map(Point::getX) - .mapToDouble(Double::doubleValue) - .min(); - if (min.isPresent()) { - return min.getAsDouble(); - } - - throw new IllegalStateException( - "The min X could not be found " - + "because it seems that there is no coordinates in the current polygon." - ); - } - - public static Double getMaxXCoordinate(Polygon polygon) { - OptionalDouble max = polygon - .getCoordinates() - .stream() - .map(Point::getX) - .mapToDouble(Double::doubleValue) - .max(); - if (max.isPresent()) { - return max.getAsDouble(); - } - - throw new IllegalStateException( - "The max X could not be found " - + "because it seems that there is no coordinates in the current polygon." - ); - } - /** * Merge the coordinates of the two polygons. */ diff --git a/src/main/java/com/mindee/geometry/PositionDataField.java b/src/main/java/com/mindee/geometry/PositionDataField.java new file mode 100644 index 000000000..228e8d304 --- /dev/null +++ b/src/main/java/com/mindee/geometry/PositionDataField.java @@ -0,0 +1,8 @@ +package com.mindee.geometry; + +/** + * A field with position data. + */ +public interface PositionDataField { + Polygon getPolygon(); +} diff --git a/src/main/java/com/mindee/extraction/ExtractedImage.java b/src/main/java/com/mindee/image/ExtractedImage.java similarity index 97% rename from src/main/java/com/mindee/extraction/ExtractedImage.java rename to src/main/java/com/mindee/image/ExtractedImage.java index e5e383238..76540a8a3 100644 --- a/src/main/java/com/mindee/extraction/ExtractedImage.java +++ b/src/main/java/com/mindee/image/ExtractedImage.java @@ -1,4 +1,4 @@ -package com.mindee.extraction; +package com.mindee.image; import com.mindee.input.LocalInputSource; import java.awt.image.BufferedImage; @@ -21,7 +21,7 @@ public class ExtractedImage { /** * Default constructor. - * + * * @param image Buffered image object. * @param filename Name of the extracted image. * @param saveFormat Format to save the image as, defaults to PNG. @@ -35,7 +35,7 @@ public ExtractedImage(BufferedImage image, String filename, String saveFormat) { /** * Write the image to a file. * Uses the default image format and filename. - * + * * @param outputPath the output directory (must exist). * @throws IOException Throws if the file can't be accessed. */ @@ -48,7 +48,7 @@ public void writeToFile(String outputPath) throws IOException { /** * Write the image to a file. * Uses the default image format and filename. - * + * * @param outputPath the output directory (must exist). * @throws IOException Throws if the file can't be accessed. */ @@ -60,7 +60,7 @@ public void writeToFile(Path outputPath) throws IOException { /** * Return the image in a format suitable for sending to MindeeClient for parsing. - * + * * @return an instance of {@link LocalInputSource} * @throws IOException Throws if the file can't be accessed. */ diff --git a/src/main/java/com/mindee/extraction/ImageExtractor.java b/src/main/java/com/mindee/image/ImageExtractor.java similarity index 88% rename from src/main/java/com/mindee/extraction/ImageExtractor.java rename to src/main/java/com/mindee/image/ImageExtractor.java index 403d497e2..8dcb6b181 100644 --- a/src/main/java/com/mindee/extraction/ImageExtractor.java +++ b/src/main/java/com/mindee/image/ImageExtractor.java @@ -1,11 +1,10 @@ -package com.mindee.extraction; +package com.mindee.image; import com.mindee.geometry.Bbox; -import com.mindee.geometry.BboxUtils; import com.mindee.geometry.Polygon; +import com.mindee.geometry.PositionDataField; import com.mindee.input.InputSourceUtils; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.standard.PositionData; import com.mindee.pdf.PDFUtils; import com.mindee.pdf.PdfPageImage; import java.awt.image.BufferedImage; @@ -25,7 +24,7 @@ public class ImageExtractor { /** * Init from a path. - * + * * @param filePath Path to the file. * @throws IOException Throws if the file can't be accessed. */ @@ -35,7 +34,7 @@ public ImageExtractor(String filePath) throws IOException { /** * Init from a {@link LocalInputSource}. - * + * * @param source The local source. * @throws IOException Throws if the file can't be accessed. */ @@ -69,13 +68,13 @@ public int getPageCount() { /** * Extract multiple images on a given page from a list of fields having position data. - * + * * @param Type of field (needs to support positioning data). * @param fields List of Fields to extract. * @param pageIndex The page index to extract, begins at 0. * @return A list of {@link ExtractedImage}. */ - public List extractImagesFromPage( + public List extractImagesFromPage( List fields, int pageIndex ) { @@ -84,14 +83,14 @@ public List extractImagesFromPage( /** * Extract multiple images on a given page from a list of fields having position data. - * + * * @param Type of field (needs to support positioning data). * @param fields List of Fields to extract. * @param pageIndex The page index to extract, begins at 0. * @param outputName The base output filename, must have an image extension. * @return A list of {@link ExtractedImage}. */ - public List extractImagesFromPage( + public List extractImagesFromPage( List fields, int pageIndex, String outputName @@ -106,7 +105,7 @@ public List extractImagesFromPage( return extractFromPage(fields, pageIndex, filename); } - private List extractFromPage( + private List extractFromPage( List fields, int pageIndex, String outputName @@ -128,7 +127,7 @@ private List extractFromPage( /** * Extract a single image from a field having position data. - * + * * @param Type of field (needs to support positioning data). * @param field The field to extract. * @param index The index to use for naming the extracted image. @@ -137,7 +136,7 @@ private List extractFromPage( * @return The {@link ExtractedImage}, or null if the field does not have valid * position data. */ - public ExtractedImage extractImage( + public ExtractedImage extractImage( FieldT field, int pageIndex, int index, @@ -145,21 +144,24 @@ public ExtractedImage extractImage( ) { String[] splitName = InputSourceUtils.splitNameStrict(filename); String saveFormat = splitName[1].toLowerCase(); - Polygon boundingBox = field.getBoundingBox(); - if (boundingBox == null) { + Polygon polygon = field.getPolygon(); + if (polygon == null) { return null; } - Bbox bbox = BboxUtils.generate(boundingBox); String fieldFilename = splitName[0] + String.format("_%3s", index).replace(" ", "0") + "." + saveFormat; - return new ExtractedImage(extractImage(bbox, pageIndex), fieldFilename, saveFormat); + return new ExtractedImage( + extractImage(polygon.getAsBbox(), pageIndex), + fieldFilename, + saveFormat + ); } /** * Extract a single image from a field having position data. - * + * * @param Type of field (needs to support positioning data). * @param field The field to extract. * @param index The index to use for naming the extracted image. @@ -167,7 +169,7 @@ public ExtractedImage extractImage( * @return The {@link ExtractedImage}, or null if the field does not have valid * position data. */ - public ExtractedImage extractImage( + public ExtractedImage extractImage( FieldT field, int pageIndex, int index diff --git a/src/main/java/com/mindee/input/LocalResponse.java b/src/main/java/com/mindee/input/LocalResponse.java index bddbafd89..3eabd1423 100644 --- a/src/main/java/com/mindee/input/LocalResponse.java +++ b/src/main/java/com/mindee/input/LocalResponse.java @@ -2,7 +2,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.mindee.MindeeException; -import com.mindee.parsing.v2.CommonResponse; +import com.mindee.v2.parsing.CommonResponse; import java.io.BufferedReader; import java.io.File; import java.io.IOException; @@ -30,7 +30,7 @@ public class LocalResponse { /** * Load from an {@link InputStream}. - * + * * @param input will be decoded as UTF-8. */ public LocalResponse(InputStream input) { @@ -40,7 +40,7 @@ public LocalResponse(InputStream input) { /** * Load from a {@link String}. - * + * * @param input will be decoded as UTF-8. */ public LocalResponse(String input) { @@ -49,7 +49,7 @@ public LocalResponse(String input) { /** * Load from a {@link File}. - * + * * @param input will be decoded as UTF-8. */ public LocalResponse(File input) throws IOException { @@ -58,7 +58,7 @@ public LocalResponse(File input) throws IOException { /** * Load from a {@link Path}. - * + * * @param input will be decoded as UTF-8. */ public LocalResponse(Path input) throws IOException { @@ -71,7 +71,7 @@ private byte[] getBytes(Stream stream) { /** * Get the HMAC signature of the payload. - * + * * @param secretKey Your secret key from the Mindee platform. * @return The generated HMAC signature. */ @@ -98,7 +98,7 @@ public String getHmacSignature(String secretKey) { /** * Verify that the payload's signature matches the one received from the server. - * + * * @param secretKey Your secret key from the Mindee platform. * @param signature The signature from the "X-Mindee-Hmac-Signature" HTTP header. * @return true if the signatures match. diff --git a/src/main/java/com/mindee/parsing/SummaryHelper.java b/src/main/java/com/mindee/parsing/SummaryHelper.java index eaf27baad..dd6cb7f24 100644 --- a/src/main/java/com/mindee/parsing/SummaryHelper.java +++ b/src/main/java/com/mindee/parsing/SummaryHelper.java @@ -1,6 +1,5 @@ package com.mindee.parsing; -import com.mindee.parsing.standard.LineItemField; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; import java.util.List; @@ -10,8 +9,8 @@ /** * Various static methods to help generate the prediction summaries. */ -public final class SummaryHelper { - private SummaryHelper() { +public class SummaryHelper { + protected SummaryHelper() { throw new IllegalStateException("Utility class"); } @@ -40,18 +39,6 @@ public static String arrayToString(List list, String delimiter) { return list.stream().map(T::toString).collect(Collectors.joining(String.format(delimiter))); } - public static String arrayToString( - List lineItems, - int[] columnSizes - ) { - return lineItems - .stream() - .map(T::toTableLine) - .collect( - Collectors.joining(String.format("%n%s%n ", SummaryHelper.lineSeparator(columnSizes, "-"))) - ); - } - /** * Truncates a string if it's too long for the requested width. */ diff --git a/src/main/java/com/mindee/parsing/standard/PositionData.java b/src/main/java/com/mindee/parsing/standard/PositionData.java deleted file mode 100644 index 347b73090..000000000 --- a/src/main/java/com/mindee/parsing/standard/PositionData.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.mindee.parsing.standard; - -import com.mindee.geometry.Polygon; - -/** - * A field with position data. - */ -public interface PositionData { - Polygon getBoundingBox(); - - Polygon getPolygon(); -} diff --git a/src/main/java/com/mindee/extraction/ExtractedPDF.java b/src/main/java/com/mindee/pdf/ExtractedPDF.java similarity index 97% rename from src/main/java/com/mindee/extraction/ExtractedPDF.java rename to src/main/java/com/mindee/pdf/ExtractedPDF.java index fdc859aec..3041ef143 100644 --- a/src/main/java/com/mindee/extraction/ExtractedPDF.java +++ b/src/main/java/com/mindee/pdf/ExtractedPDF.java @@ -1,4 +1,4 @@ -package com.mindee.extraction; +package com.mindee.pdf; import com.mindee.input.LocalInputSource; import java.io.ByteArrayOutputStream; diff --git a/src/main/java/com/mindee/extraction/PDFExtractor.java b/src/main/java/com/mindee/pdf/PDFExtractor.java similarity index 98% rename from src/main/java/com/mindee/extraction/PDFExtractor.java rename to src/main/java/com/mindee/pdf/PDFExtractor.java index 7f014ad8e..2b2323499 100644 --- a/src/main/java/com/mindee/extraction/PDFExtractor.java +++ b/src/main/java/com/mindee/pdf/PDFExtractor.java @@ -1,11 +1,11 @@ -package com.mindee.extraction; +package com.mindee.pdf; import static com.mindee.pdf.PDFUtils.mergePdfPages; import com.mindee.MindeeException; import com.mindee.input.InputSourceUtils; import com.mindee.input.LocalInputSource; -import com.mindee.product.invoicesplitter.InvoiceSplitterV1InvoicePageGroup; +import com.mindee.v1.product.invoicesplitter.InvoiceSplitterV1InvoicePageGroup; import java.awt.image.BufferedImage; import java.io.ByteArrayInputStream; import java.io.IOException; diff --git a/src/main/java/com/mindee/MindeeClient.java b/src/main/java/com/mindee/v1/MindeeClient.java similarity index 97% rename from src/main/java/com/mindee/MindeeClient.java rename to src/main/java/com/mindee/v1/MindeeClient.java index c4b96e093..7c401c04a 100644 --- a/src/main/java/com/mindee/MindeeClient.java +++ b/src/main/java/com/mindee/v1/MindeeClient.java @@ -1,23 +1,27 @@ -package com.mindee; +package com.mindee.v1; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.http.Endpoint; -import com.mindee.http.MindeeApi; -import com.mindee.http.MindeeHttpApi; -import com.mindee.http.RequestParameters; +import com.mindee.AsyncPollingOptions; +import com.mindee.MindeeException; import com.mindee.input.InputSourceUtils; import com.mindee.input.LocalInputSource; import com.mindee.input.LocalResponse; import com.mindee.input.PageOptions; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.parsing.common.Inference; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.common.WorkflowResponse; import com.mindee.pdf.PdfBoxApi; import com.mindee.pdf.PdfOperation; import com.mindee.pdf.SplitQuery; -import com.mindee.product.generated.GeneratedV1; +import com.mindee.v1.clientOptions.PredictOptions; +import com.mindee.v1.clientOptions.WorkflowOptions; +import com.mindee.v1.http.Endpoint; +import com.mindee.v1.http.MindeeApiV1; +import com.mindee.v1.http.MindeeHttpApiV1; +import com.mindee.v1.http.RequestParameters; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.parsing.common.Inference; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.WorkflowResponse; +import com.mindee.v1.product.generated.GeneratedV1; import java.io.IOException; import java.net.URL; @@ -27,7 +31,7 @@ public class MindeeClient { protected PdfOperation pdfOperation; - private final MindeeApi mindeeApi; + private final MindeeApiV1 mindeeApi; /** * Create a default MindeeClient. @@ -53,7 +57,7 @@ public MindeeClient(String apiKey) { * * @param mindeeApi The MindeeApi implementation to be used by the created MindeeClient. */ - public MindeeClient(MindeeApi mindeeApi) { + public MindeeClient(MindeeApiV1 mindeeApi) { this.pdfOperation = new PdfBoxApi(); this.mindeeApi = mindeeApi; } @@ -64,19 +68,19 @@ public MindeeClient(MindeeApi mindeeApi) { * @param pdfOperation The PdfOperation implementation to be used by the created MindeeClient. * @param mindeeApi The MindeeApi implementation to be used by the created MindeeClient. */ - public MindeeClient(PdfOperation pdfOperation, MindeeApi mindeeApi) { + public MindeeClient(PdfOperation pdfOperation, MindeeApiV1 mindeeApi) { this.pdfOperation = pdfOperation; this.mindeeApi = mindeeApi; } - private static MindeeApi createDefaultApi(String apiKey) { + private static MindeeApiV1 createDefaultApi(String apiKey) { MindeeSettings mindeeSettings; if (apiKey != null && !apiKey.trim().isEmpty()) { mindeeSettings = new MindeeSettings(apiKey); } else { mindeeSettings = new MindeeSettings(); } - return MindeeHttpApi.builder().mindeeSettings(mindeeSettings).build(); + return MindeeHttpApiV1.builder().mindeeSettings(mindeeSettings).build(); } /** diff --git a/src/main/java/com/mindee/MindeeSettings.java b/src/main/java/com/mindee/v1/MindeeSettings.java similarity index 98% rename from src/main/java/com/mindee/MindeeSettings.java rename to src/main/java/com/mindee/v1/MindeeSettings.java index 46af848b2..428c4aad8 100644 --- a/src/main/java/com/mindee/MindeeSettings.java +++ b/src/main/java/com/mindee/v1/MindeeSettings.java @@ -1,4 +1,4 @@ -package com.mindee; +package com.mindee.v1; import java.util.Optional; import lombok.Getter; diff --git a/src/main/java/com/mindee/cli/CommandLineInterfaceProducts.java b/src/main/java/com/mindee/v1/cli/CommandLineInterfaceProducts.java similarity index 88% rename from src/main/java/com/mindee/cli/CommandLineInterfaceProducts.java rename to src/main/java/com/mindee/v1/cli/CommandLineInterfaceProducts.java index 813d1ff4e..3275e02f8 100644 --- a/src/main/java/com/mindee/cli/CommandLineInterfaceProducts.java +++ b/src/main/java/com/mindee/v1/cli/CommandLineInterfaceProducts.java @@ -1,19 +1,19 @@ -package com.mindee.cli; - -import com.mindee.product.barcodereader.BarcodeReaderV1; -import com.mindee.product.cropper.CropperV1; -import com.mindee.product.driverlicense.DriverLicenseV1; -import com.mindee.product.financialdocument.FinancialDocumentV1; -import com.mindee.product.fr.bankaccountdetails.BankAccountDetailsV2; -import com.mindee.product.fr.cartegrise.CarteGriseV1; -import com.mindee.product.fr.idcard.IdCardV2; -import com.mindee.product.ind.indianpassport.IndianPassportV1; -import com.mindee.product.internationalid.InternationalIdV2; -import com.mindee.product.invoice.InvoiceV4; -import com.mindee.product.invoicesplitter.InvoiceSplitterV1; -import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1; -import com.mindee.product.passport.PassportV1; -import com.mindee.product.receipt.ReceiptV5; +package com.mindee.v1.cli; + +import com.mindee.v1.product.barcodereader.BarcodeReaderV1; +import com.mindee.v1.product.cropper.CropperV1; +import com.mindee.v1.product.driverlicense.DriverLicenseV1; +import com.mindee.v1.product.financialdocument.FinancialDocumentV1; +import com.mindee.v1.product.fr.bankaccountdetails.BankAccountDetailsV2; +import com.mindee.v1.product.fr.cartegrise.CarteGriseV1; +import com.mindee.v1.product.fr.idcard.IdCardV2; +import com.mindee.v1.product.ind.indianpassport.IndianPassportV1; +import com.mindee.v1.product.internationalid.InternationalIdV2; +import com.mindee.v1.product.invoice.InvoiceV4; +import com.mindee.v1.product.invoicesplitter.InvoiceSplitterV1; +import com.mindee.v1.product.multireceiptsdetector.MultiReceiptsDetectorV1; +import com.mindee.v1.product.passport.PassportV1; +import com.mindee.v1.product.receipt.ReceiptV5; import java.io.File; import java.io.IOException; import picocli.CommandLine; diff --git a/src/main/java/com/mindee/cli/ProductProcessor.java b/src/main/java/com/mindee/v1/cli/ProductProcessor.java similarity index 94% rename from src/main/java/com/mindee/cli/ProductProcessor.java rename to src/main/java/com/mindee/v1/cli/ProductProcessor.java index 181ecf2ee..cdbecf9e3 100644 --- a/src/main/java/com/mindee/cli/ProductProcessor.java +++ b/src/main/java/com/mindee/v1/cli/ProductProcessor.java @@ -1,6 +1,6 @@ -package com.mindee.cli; +package com.mindee.v1.cli; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.parsing.common.Inference; import java.io.File; import java.io.IOException; import picocli.CommandLine; @@ -17,7 +17,7 @@ public interface ProductProcessor { /** * Process a product synchronously. - * + * * @param productClass Product class to be processed for synchronous products. * @param file Input file. * @param Type of the product. @@ -31,7 +31,7 @@ public interface ProductProcessor { /** * Process a product asynchronously. - * + * * @param productClass Product class to be processed for asynchronous products. * @param file Input file. * @param Type of the product. diff --git a/src/main/java/com/mindee/PredictOptions.java b/src/main/java/com/mindee/v1/clientOptions/PredictOptions.java similarity index 97% rename from src/main/java/com/mindee/PredictOptions.java rename to src/main/java/com/mindee/v1/clientOptions/PredictOptions.java index 40966adf4..ab2971705 100644 --- a/src/main/java/com/mindee/PredictOptions.java +++ b/src/main/java/com/mindee/v1/clientOptions/PredictOptions.java @@ -1,4 +1,4 @@ -package com.mindee; +package com.mindee.v1.clientOptions; import lombok.Builder; import lombok.Value; diff --git a/src/main/java/com/mindee/WorkflowOptions.java b/src/main/java/com/mindee/v1/clientOptions/WorkflowOptions.java similarity index 91% rename from src/main/java/com/mindee/WorkflowOptions.java rename to src/main/java/com/mindee/v1/clientOptions/WorkflowOptions.java index 2b5029adb..d3482cd66 100644 --- a/src/main/java/com/mindee/WorkflowOptions.java +++ b/src/main/java/com/mindee/v1/clientOptions/WorkflowOptions.java @@ -1,6 +1,6 @@ -package com.mindee; +package com.mindee.v1.clientOptions; -import com.mindee.parsing.common.ExecutionPriority; +import com.mindee.v1.parsing.common.ExecutionPriority; import lombok.Builder; import lombok.Value; diff --git a/src/main/java/com/mindee/http/CustomEndpointInfo.java b/src/main/java/com/mindee/v1/http/CustomEndpointInfo.java similarity index 96% rename from src/main/java/com/mindee/http/CustomEndpointInfo.java rename to src/main/java/com/mindee/v1/http/CustomEndpointInfo.java index a872a701f..4e207daed 100644 --- a/src/main/java/com/mindee/http/CustomEndpointInfo.java +++ b/src/main/java/com/mindee/v1/http/CustomEndpointInfo.java @@ -1,4 +1,4 @@ -package com.mindee.http; +package com.mindee.v1.http; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; diff --git a/src/main/java/com/mindee/http/Endpoint.java b/src/main/java/com/mindee/v1/http/Endpoint.java similarity index 95% rename from src/main/java/com/mindee/http/Endpoint.java rename to src/main/java/com/mindee/v1/http/Endpoint.java index 4b074203a..7aa1b9c19 100644 --- a/src/main/java/com/mindee/http/Endpoint.java +++ b/src/main/java/com/mindee/v1/http/Endpoint.java @@ -1,7 +1,7 @@ -package com.mindee.http; +package com.mindee.v1.http; import com.mindee.MindeeException; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/http/EndpointInfo.java b/src/main/java/com/mindee/v1/http/EndpointInfo.java similarity index 94% rename from src/main/java/com/mindee/http/EndpointInfo.java rename to src/main/java/com/mindee/v1/http/EndpointInfo.java index 08b30b874..b22becbf3 100644 --- a/src/main/java/com/mindee/http/EndpointInfo.java +++ b/src/main/java/com/mindee/v1/http/EndpointInfo.java @@ -1,4 +1,4 @@ -package com.mindee.http; +package com.mindee.v1.http; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; diff --git a/src/main/java/com/mindee/http/MindeeApi.java b/src/main/java/com/mindee/v1/http/MindeeApiV1.java similarity index 75% rename from src/main/java/com/mindee/http/MindeeApi.java rename to src/main/java/com/mindee/v1/http/MindeeApiV1.java index 19790da51..20cd77058 100644 --- a/src/main/java/com/mindee/http/MindeeApi.java +++ b/src/main/java/com/mindee/v1/http/MindeeApiV1.java @@ -1,15 +1,16 @@ -package com.mindee.http; +package com.mindee.v1.http; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.parsing.common.Inference; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.common.WorkflowResponse; +import com.mindee.http.MindeeApiCommon; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.parsing.common.Inference; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.WorkflowResponse; import java.io.IOException; /** * Defines required methods for an API. */ -public abstract class MindeeApi extends MindeeApiCommon { +public abstract class MindeeApiV1 extends MindeeApiCommon { /** * Get a document from the predict queue. diff --git a/src/main/java/com/mindee/http/MindeeHttpApi.java b/src/main/java/com/mindee/v1/http/MindeeHttpApiV1.java similarity index 95% rename from src/main/java/com/mindee/http/MindeeHttpApi.java rename to src/main/java/com/mindee/v1/http/MindeeHttpApiV1.java index 226d94a1e..76cfecd36 100644 --- a/src/main/java/com/mindee/http/MindeeHttpApi.java +++ b/src/main/java/com/mindee/v1/http/MindeeHttpApiV1.java @@ -1,17 +1,17 @@ -package com.mindee.http; +package com.mindee.v1.http; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.json.JsonMapper; import com.mindee.MindeeException; -import com.mindee.MindeeSettings; -import com.mindee.parsing.common.ApiResponse; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.parsing.common.ErrorDetails; -import com.mindee.parsing.common.Inference; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.common.WorkflowResponse; +import com.mindee.v1.MindeeSettings; +import com.mindee.v1.parsing.common.ApiResponse; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.parsing.common.ErrorDetails; +import com.mindee.v1.parsing.common.Inference; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.WorkflowResponse; import java.io.IOException; import java.net.URISyntaxException; import java.net.URL; @@ -39,7 +39,7 @@ /** * HTTP Client class. */ -public final class MindeeHttpApi extends MindeeApi { +public final class MindeeHttpApiV1 extends MindeeApiV1 { private static final ObjectMapper mapper = JsonMapper.builder().findAndAddModules().build(); private final Function buildProductPredicBasetUrl = this::buildProductPredictBaseUrl; @@ -80,12 +80,12 @@ public final class MindeeHttpApi extends MindeeApi { */ private final Function workflowUrlFromId; - public MindeeHttpApi(MindeeSettings mindeeSettings) { + public MindeeHttpApiV1(MindeeSettings mindeeSettings) { this(mindeeSettings, null, null, null, null, null, null); } @Builder - private MindeeHttpApi( + private MindeeHttpApiV1( MindeeSettings mindeeSettings, HttpClientBuilder httpClientBuilder, Function urlFromEndpoint, @@ -171,7 +171,7 @@ public AsyncPredictResponse documentQueueGet( && mappedResponse.getJob().getError() != null && mappedResponse.getJob().getError().getCode() != null ) { - throw new MindeeHttpException( + throw new MindeeHttpExceptionV1( 500, mappedResponse.getJob().getError().getMessage(), mappedResponse.getJob().getError().getDetails().toString(), @@ -295,7 +295,7 @@ public WorkflowResponse executeWorkflowPost( } } - private MindeeHttpException getHttpError( + private MindeeHttpExceptionV1 getHttpError( JavaType parametricType, ClassicHttpResponse response ) { @@ -310,7 +310,7 @@ private MindeeHttpException getHttpError( message += "Could not read server response, check details."; errorCode = ""; details = err.getMessage(); - return new MindeeHttpException(statusCode, message, details, errorCode); + return new MindeeHttpExceptionV1(statusCode, message, details, errorCode); } try { ResponseT predictResponse = mapper.readValue(rawResponse, parametricType); @@ -327,7 +327,7 @@ private MindeeHttpException getHttpError( details = rawResponse; errorCode = ""; } - return new MindeeHttpException(statusCode, message, details, errorCode); + return new MindeeHttpExceptionV1(statusCode, message, details, errorCode); } private String buildProductPredictBaseUrl(Endpoint endpoint) { diff --git a/src/main/java/com/mindee/http/MindeeHttpException.java b/src/main/java/com/mindee/v1/http/MindeeHttpExceptionV1.java similarity index 76% rename from src/main/java/com/mindee/http/MindeeHttpException.java rename to src/main/java/com/mindee/v1/http/MindeeHttpExceptionV1.java index f774c4032..87ddacef4 100644 --- a/src/main/java/com/mindee/http/MindeeHttpException.java +++ b/src/main/java/com/mindee/v1/http/MindeeHttpExceptionV1.java @@ -1,4 +1,4 @@ -package com.mindee.http; +package com.mindee.v1.http; import com.mindee.MindeeException; import lombok.Getter; @@ -7,7 +7,7 @@ * Represent a Mindee exception. */ @Getter -public class MindeeHttpException extends MindeeException { +public class MindeeHttpExceptionV1 extends MindeeException { /** Standard HTTP status code. */ private final int statusCode; /** Error details. */ @@ -15,7 +15,7 @@ public class MindeeHttpException extends MindeeException { /** Error code (not HTTP code). */ private final String code; - public MindeeHttpException(int statusCode, String message, String details, String code) { + public MindeeHttpExceptionV1(int statusCode, String message, String details, String code) { super(message); this.statusCode = statusCode; this.details = details; diff --git a/src/main/java/com/mindee/http/RequestParameters.java b/src/main/java/com/mindee/v1/http/RequestParameters.java similarity index 88% rename from src/main/java/com/mindee/http/RequestParameters.java rename to src/main/java/com/mindee/v1/http/RequestParameters.java index c05dffd22..c227acd14 100644 --- a/src/main/java/com/mindee/http/RequestParameters.java +++ b/src/main/java/com/mindee/v1/http/RequestParameters.java @@ -1,7 +1,7 @@ -package com.mindee.http; +package com.mindee.v1.http; -import com.mindee.PredictOptions; -import com.mindee.WorkflowOptions; +import com.mindee.v1.clientOptions.PredictOptions; +import com.mindee.v1.clientOptions.WorkflowOptions; import java.net.URL; import lombok.Builder; import lombok.Value; diff --git a/src/main/java/com/mindee/v1/parsing/SummaryHelper.java b/src/main/java/com/mindee/v1/parsing/SummaryHelper.java new file mode 100644 index 000000000..81e4cbeff --- /dev/null +++ b/src/main/java/com/mindee/v1/parsing/SummaryHelper.java @@ -0,0 +1,22 @@ +package com.mindee.v1.parsing; + +import com.mindee.v1.parsing.standard.LineItemField; +import java.util.List; +import java.util.stream.Collectors; + +/** + * Various static methods to help generate the prediction summaries. + */ +public final class SummaryHelper extends com.mindee.parsing.SummaryHelper { + public static String arrayToString( + List lineItems, + int[] columnSizes + ) { + return lineItems + .stream() + .map(T::toTableLine) + .collect( + Collectors.joining(String.format("%n%s%n ", SummaryHelper.lineSeparator(columnSizes, "-"))) + ); + } +} diff --git a/src/main/java/com/mindee/parsing/common/ApiRequest.java b/src/main/java/com/mindee/v1/parsing/common/ApiRequest.java similarity index 96% rename from src/main/java/com/mindee/parsing/common/ApiRequest.java rename to src/main/java/com/mindee/v1/parsing/common/ApiRequest.java index 7b4bb8e09..709c10b51 100644 --- a/src/main/java/com/mindee/parsing/common/ApiRequest.java +++ b/src/main/java/com/mindee/v1/parsing/common/ApiRequest.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/ApiResponse.java b/src/main/java/com/mindee/v1/parsing/common/ApiResponse.java similarity index 94% rename from src/main/java/com/mindee/parsing/common/ApiResponse.java rename to src/main/java/com/mindee/v1/parsing/common/ApiResponse.java index 860073259..1162d9944 100644 --- a/src/main/java/com/mindee/parsing/common/ApiResponse.java +++ b/src/main/java/com/mindee/v1/parsing/common/ApiResponse.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/AsyncPredictResponse.java b/src/main/java/com/mindee/v1/parsing/common/AsyncPredictResponse.java similarity index 97% rename from src/main/java/com/mindee/parsing/common/AsyncPredictResponse.java rename to src/main/java/com/mindee/v1/parsing/common/AsyncPredictResponse.java index 64847f2ed..9066f574a 100644 --- a/src/main/java/com/mindee/parsing/common/AsyncPredictResponse.java +++ b/src/main/java/com/mindee/v1/parsing/common/AsyncPredictResponse.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/Cropper.java b/src/main/java/com/mindee/v1/parsing/common/Cropper.java similarity index 82% rename from src/main/java/com/mindee/parsing/common/Cropper.java rename to src/main/java/com/mindee/v1/parsing/common/Cropper.java index 1e7d70204..2e30576a9 100644 --- a/src/main/java/com/mindee/parsing/common/Cropper.java +++ b/src/main/java/com/mindee/v1/parsing/common/Cropper.java @@ -1,8 +1,8 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.standard.PositionField; +import com.mindee.v1.parsing.standard.PositionField; import java.util.List; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/parsing/common/Document.java b/src/main/java/com/mindee/v1/parsing/common/Document.java similarity index 93% rename from src/main/java/com/mindee/parsing/common/Document.java rename to src/main/java/com/mindee/v1/parsing/common/Document.java index 6d68f2d36..a506766c1 100644 --- a/src/main/java/com/mindee/parsing/common/Document.java +++ b/src/main/java/com/mindee/v1/parsing/common/Document.java @@ -1,8 +1,8 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.common.ocr.Ocr; +import com.mindee.v1.parsing.common.ocr.Ocr; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/parsing/common/Error.java b/src/main/java/com/mindee/v1/parsing/common/Error.java similarity index 95% rename from src/main/java/com/mindee/parsing/common/Error.java rename to src/main/java/com/mindee/v1/parsing/common/Error.java index e92a65f2a..6eafbba9f 100644 --- a/src/main/java/com/mindee/parsing/common/Error.java +++ b/src/main/java/com/mindee/v1/parsing/common/Error.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/ErrorDetails.java b/src/main/java/com/mindee/v1/parsing/common/ErrorDetails.java similarity index 93% rename from src/main/java/com/mindee/parsing/common/ErrorDetails.java rename to src/main/java/com/mindee/v1/parsing/common/ErrorDetails.java index c7eb87b2d..970636b63 100644 --- a/src/main/java/com/mindee/parsing/common/ErrorDetails.java +++ b/src/main/java/com/mindee/v1/parsing/common/ErrorDetails.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; diff --git a/src/main/java/com/mindee/parsing/common/ErrorDetailsDeserializer.java b/src/main/java/com/mindee/v1/parsing/common/ErrorDetailsDeserializer.java similarity index 96% rename from src/main/java/com/mindee/parsing/common/ErrorDetailsDeserializer.java rename to src/main/java/com/mindee/v1/parsing/common/ErrorDetailsDeserializer.java index c45bfc7d2..14033d822 100644 --- a/src/main/java/com/mindee/parsing/common/ErrorDetailsDeserializer.java +++ b/src/main/java/com/mindee/v1/parsing/common/ErrorDetailsDeserializer.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; diff --git a/src/main/java/com/mindee/parsing/common/Execution.java b/src/main/java/com/mindee/v1/parsing/common/Execution.java similarity index 96% rename from src/main/java/com/mindee/parsing/common/Execution.java rename to src/main/java/com/mindee/v1/parsing/common/Execution.java index 575071b5f..9c1221c97 100644 --- a/src/main/java/com/mindee/parsing/common/Execution.java +++ b/src/main/java/com/mindee/v1/parsing/common/Execution.java @@ -1,9 +1,9 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.mindee.product.generated.GeneratedV1Document; +import com.mindee.v1.product.generated.GeneratedV1Document; import java.time.LocalDateTime; import lombok.AllArgsConstructor; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/parsing/common/ExecutionFile.java b/src/main/java/com/mindee/v1/parsing/common/ExecutionFile.java similarity index 95% rename from src/main/java/com/mindee/parsing/common/ExecutionFile.java rename to src/main/java/com/mindee/v1/parsing/common/ExecutionFile.java index c2dd23c89..24f8f9b07 100644 --- a/src/main/java/com/mindee/parsing/common/ExecutionFile.java +++ b/src/main/java/com/mindee/v1/parsing/common/ExecutionFile.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/ExecutionPriority.java b/src/main/java/com/mindee/v1/parsing/common/ExecutionPriority.java similarity index 90% rename from src/main/java/com/mindee/parsing/common/ExecutionPriority.java rename to src/main/java/com/mindee/v1/parsing/common/ExecutionPriority.java index 845300cdf..b9e048d7e 100644 --- a/src/main/java/com/mindee/parsing/common/ExecutionPriority.java +++ b/src/main/java/com/mindee/v1/parsing/common/ExecutionPriority.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonValue; diff --git a/src/main/java/com/mindee/parsing/common/Extras.java b/src/main/java/com/mindee/v1/parsing/common/Extras.java similarity index 93% rename from src/main/java/com/mindee/parsing/common/Extras.java rename to src/main/java/com/mindee/v1/parsing/common/Extras.java index 70b332503..05064a283 100644 --- a/src/main/java/com/mindee/parsing/common/Extras.java +++ b/src/main/java/com/mindee/v1/parsing/common/Extras.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/FullTextOcr.java b/src/main/java/com/mindee/v1/parsing/common/FullTextOcr.java similarity index 93% rename from src/main/java/com/mindee/parsing/common/FullTextOcr.java rename to src/main/java/com/mindee/v1/parsing/common/FullTextOcr.java index 65754e149..d8f811a37 100644 --- a/src/main/java/com/mindee/parsing/common/FullTextOcr.java +++ b/src/main/java/com/mindee/v1/parsing/common/FullTextOcr.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/Inference.java b/src/main/java/com/mindee/v1/parsing/common/Inference.java similarity index 96% rename from src/main/java/com/mindee/parsing/common/Inference.java rename to src/main/java/com/mindee/v1/parsing/common/Inference.java index f91fcd041..c222017fe 100644 --- a/src/main/java/com/mindee/parsing/common/Inference.java +++ b/src/main/java/com/mindee/v1/parsing/common/Inference.java @@ -1,8 +1,8 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; +import com.mindee.v1.parsing.SummaryHelper; import java.util.stream.Collectors; import lombok.Getter; diff --git a/src/main/java/com/mindee/parsing/common/InferenceExtras.java b/src/main/java/com/mindee/v1/parsing/common/InferenceExtras.java similarity index 93% rename from src/main/java/com/mindee/parsing/common/InferenceExtras.java rename to src/main/java/com/mindee/v1/parsing/common/InferenceExtras.java index a8f065960..f7af1b231 100644 --- a/src/main/java/com/mindee/parsing/common/InferenceExtras.java +++ b/src/main/java/com/mindee/v1/parsing/common/InferenceExtras.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/Job.java b/src/main/java/com/mindee/v1/parsing/common/Job.java similarity index 96% rename from src/main/java/com/mindee/parsing/common/Job.java rename to src/main/java/com/mindee/v1/parsing/common/Job.java index b8b886882..80d44f524 100644 --- a/src/main/java/com/mindee/parsing/common/Job.java +++ b/src/main/java/com/mindee/v1/parsing/common/Job.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/LocalDateTimeDeserializer.java b/src/main/java/com/mindee/v1/parsing/common/LocalDateTimeDeserializer.java similarity index 97% rename from src/main/java/com/mindee/parsing/common/LocalDateTimeDeserializer.java rename to src/main/java/com/mindee/v1/parsing/common/LocalDateTimeDeserializer.java index 33fa5e8f5..464744318 100644 --- a/src/main/java/com/mindee/parsing/common/LocalDateTimeDeserializer.java +++ b/src/main/java/com/mindee/v1/parsing/common/LocalDateTimeDeserializer.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; diff --git a/src/main/java/com/mindee/parsing/common/Orientation.java b/src/main/java/com/mindee/v1/parsing/common/Orientation.java similarity index 91% rename from src/main/java/com/mindee/parsing/common/Orientation.java rename to src/main/java/com/mindee/v1/parsing/common/Orientation.java index 3f02a85e3..1b9a05a77 100644 --- a/src/main/java/com/mindee/parsing/common/Orientation.java +++ b/src/main/java/com/mindee/v1/parsing/common/Orientation.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/Page.java b/src/main/java/com/mindee/v1/parsing/common/Page.java similarity index 98% rename from src/main/java/com/mindee/parsing/common/Page.java rename to src/main/java/com/mindee/v1/parsing/common/Page.java index 070c00900..b8df27197 100644 --- a/src/main/java/com/mindee/parsing/common/Page.java +++ b/src/main/java/com/mindee/v1/parsing/common/Page.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/Pages.java b/src/main/java/com/mindee/v1/parsing/common/Pages.java similarity index 92% rename from src/main/java/com/mindee/parsing/common/Pages.java rename to src/main/java/com/mindee/v1/parsing/common/Pages.java index ae4b002fb..039919c68 100644 --- a/src/main/java/com/mindee/parsing/common/Pages.java +++ b/src/main/java/com/mindee/v1/parsing/common/Pages.java @@ -1,11 +1,11 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import java.util.ArrayList; import java.util.stream.Collectors; /** * List of all pages in the inference. - * + * * @param */ public class Pages extends ArrayList> { diff --git a/src/main/java/com/mindee/parsing/common/PredictResponse.java b/src/main/java/com/mindee/v1/parsing/common/PredictResponse.java similarity index 95% rename from src/main/java/com/mindee/parsing/common/PredictResponse.java rename to src/main/java/com/mindee/v1/parsing/common/PredictResponse.java index ad6c9f782..98b1a4fdb 100644 --- a/src/main/java/com/mindee/parsing/common/PredictResponse.java +++ b/src/main/java/com/mindee/v1/parsing/common/PredictResponse.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/Prediction.java b/src/main/java/com/mindee/v1/parsing/common/Prediction.java similarity index 89% rename from src/main/java/com/mindee/parsing/common/Prediction.java rename to src/main/java/com/mindee/v1/parsing/common/Prediction.java index 54dd812ac..589b4c092 100644 --- a/src/main/java/com/mindee/parsing/common/Prediction.java +++ b/src/main/java/com/mindee/v1/parsing/common/Prediction.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; /** * Base class for all predictions. diff --git a/src/main/java/com/mindee/parsing/common/Product.java b/src/main/java/com/mindee/v1/parsing/common/Product.java similarity index 92% rename from src/main/java/com/mindee/parsing/common/Product.java rename to src/main/java/com/mindee/v1/parsing/common/Product.java index c7c7ce01d..b3fca989e 100644 --- a/src/main/java/com/mindee/parsing/common/Product.java +++ b/src/main/java/com/mindee/v1/parsing/common/Product.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/Rag.java b/src/main/java/com/mindee/v1/parsing/common/Rag.java similarity index 92% rename from src/main/java/com/mindee/parsing/common/Rag.java rename to src/main/java/com/mindee/v1/parsing/common/Rag.java index ca124b5a7..a208b84a6 100644 --- a/src/main/java/com/mindee/parsing/common/Rag.java +++ b/src/main/java/com/mindee/v1/parsing/common/Rag.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/WorkflowResponse.java b/src/main/java/com/mindee/v1/parsing/common/WorkflowResponse.java similarity index 89% rename from src/main/java/com/mindee/parsing/common/WorkflowResponse.java rename to src/main/java/com/mindee/v1/parsing/common/WorkflowResponse.java index 439905c26..30db30be9 100644 --- a/src/main/java/com/mindee/parsing/common/WorkflowResponse.java +++ b/src/main/java/com/mindee/v1/parsing/common/WorkflowResponse.java @@ -1,8 +1,8 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.product.generated.GeneratedV1; +import com.mindee.v1.product.generated.GeneratedV1; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/parsing/common/ocr/MvisionV1.java b/src/main/java/com/mindee/v1/parsing/common/ocr/MvisionV1.java similarity index 93% rename from src/main/java/com/mindee/parsing/common/ocr/MvisionV1.java rename to src/main/java/com/mindee/v1/parsing/common/ocr/MvisionV1.java index c27622f4f..e86d35ba7 100644 --- a/src/main/java/com/mindee/parsing/common/ocr/MvisionV1.java +++ b/src/main/java/com/mindee/v1/parsing/common/ocr/MvisionV1.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common.ocr; +package com.mindee.v1.parsing.common.ocr; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/ocr/Ocr.java b/src/main/java/com/mindee/v1/parsing/common/ocr/Ocr.java similarity index 90% rename from src/main/java/com/mindee/parsing/common/ocr/Ocr.java rename to src/main/java/com/mindee/v1/parsing/common/ocr/Ocr.java index 8516eb8e4..b1ef36f20 100644 --- a/src/main/java/com/mindee/parsing/common/ocr/Ocr.java +++ b/src/main/java/com/mindee/v1/parsing/common/ocr/Ocr.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common.ocr; +package com.mindee.v1.parsing.common.ocr; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/common/ocr/OcrPage.java b/src/main/java/com/mindee/v1/parsing/common/ocr/OcrPage.java similarity index 91% rename from src/main/java/com/mindee/parsing/common/ocr/OcrPage.java rename to src/main/java/com/mindee/v1/parsing/common/ocr/OcrPage.java index ce283e566..af2cbd473 100644 --- a/src/main/java/com/mindee/parsing/common/ocr/OcrPage.java +++ b/src/main/java/com/mindee/v1/parsing/common/ocr/OcrPage.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common.ocr; +package com.mindee.v1.parsing.common.ocr; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; @@ -28,8 +28,7 @@ public OcrPage(@JsonProperty("all_words") List allWords) { this.allWords = allWords; // make sure words are sorted from top to bottom - this.allWords - .sort((word1, word2) -> PolygonUtils.CompareOnY(word1.getPolygon(), word2.getPolygon())); + this.allWords.sort((word1, word2) -> word1.getPolygon().compareOnY(word2.getPolygon())); } /** @@ -74,8 +73,7 @@ protected List> toLines() { } current = null; if (!line.isEmpty()) { - line - .sort((word1, word2) -> PolygonUtils.CompareOnX(word1.getPolygon(), word2.getPolygon())); + line.sort((word1, word2) -> word1.getPolygon().compareOnX(word2.getPolygon())); lines.add(line); } } diff --git a/src/main/java/com/mindee/parsing/common/ocr/Word.java b/src/main/java/com/mindee/v1/parsing/common/ocr/Word.java similarity index 94% rename from src/main/java/com/mindee/parsing/common/ocr/Word.java rename to src/main/java/com/mindee/v1/parsing/common/ocr/Word.java index 8d574b2cf..621abc03f 100644 --- a/src/main/java/com/mindee/parsing/common/ocr/Word.java +++ b/src/main/java/com/mindee/v1/parsing/common/ocr/Word.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common.ocr; +package com.mindee.v1.parsing.common.ocr; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/generated/GeneratedFeature.java b/src/main/java/com/mindee/v1/parsing/generated/GeneratedFeature.java similarity index 89% rename from src/main/java/com/mindee/parsing/generated/GeneratedFeature.java rename to src/main/java/com/mindee/v1/parsing/generated/GeneratedFeature.java index 7c0d37f36..365f477ea 100644 --- a/src/main/java/com/mindee/parsing/generated/GeneratedFeature.java +++ b/src/main/java/com/mindee/v1/parsing/generated/GeneratedFeature.java @@ -1,11 +1,11 @@ -package com.mindee.parsing.generated; +package com.mindee.v1.parsing.generated; import com.mindee.MindeeException; -import com.mindee.parsing.standard.AmountField; -import com.mindee.parsing.standard.BooleanField; -import com.mindee.parsing.standard.ClassificationField; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.standard.AmountField; +import com.mindee.v1.parsing.standard.BooleanField; +import com.mindee.v1.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import java.util.ArrayList; import lombok.Getter; @@ -35,7 +35,7 @@ public class GeneratedFeature extends ArrayList { /** * Whether the original feature is a list. - * + * * @param isList Whether the feature is a list. */ public GeneratedFeature(boolean isList) { @@ -45,7 +45,7 @@ public GeneratedFeature(boolean isList) { /** * Represent the feature as a standard {@link StringField}. * Only works for non-list features. - * + * * @return An instance of a {@link StringField}. */ public StringField asStringField() { @@ -57,7 +57,7 @@ public StringField asStringField() { /** * Represent the feature as a standard {@link BooleanField}. - * + * * @return An instance of a {@link BooleanField}. */ public BooleanField asBooleanField() { @@ -70,7 +70,7 @@ public BooleanField asBooleanField() { /** * Represent the feature as a standard {@link AmountField}. * Only works for non-list features. - * + * * @return An instance of a {@link AmountField}. */ public AmountField asAmountField() { @@ -83,7 +83,7 @@ public AmountField asAmountField() { /** * Represent the feature as a standard {@link DateField}. * Only works for non-list features. - * + * * @return An instance of a {@link DateField}. */ public DateField asDateField() { @@ -96,7 +96,7 @@ public DateField asDateField() { /** * Represent the feature as a standard {@link ClassificationField}. * Only works for non-list features. - * + * * @return An instance of a {@link ClassificationField}. */ public ClassificationField asClassificationField() { diff --git a/src/main/java/com/mindee/parsing/generated/GeneratedObject.java b/src/main/java/com/mindee/v1/parsing/generated/GeneratedObject.java similarity index 89% rename from src/main/java/com/mindee/parsing/generated/GeneratedObject.java rename to src/main/java/com/mindee/v1/parsing/generated/GeneratedObject.java index 130669a87..ce1c883f0 100644 --- a/src/main/java/com/mindee/parsing/generated/GeneratedObject.java +++ b/src/main/java/com/mindee/v1/parsing/generated/GeneratedObject.java @@ -1,12 +1,11 @@ -package com.mindee.parsing.generated; +package com.mindee.v1.parsing.generated; import com.mindee.geometry.Polygon; -import com.mindee.geometry.PolygonUtils; -import com.mindee.parsing.standard.AmountField; -import com.mindee.parsing.standard.BooleanField; -import com.mindee.parsing.standard.ClassificationField; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.standard.AmountField; +import com.mindee.v1.parsing.standard.BooleanField; +import com.mindee.v1.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import java.time.LocalDate; import java.util.HashMap; import java.util.List; @@ -18,7 +17,7 @@ public class GeneratedObject extends HashMap { /** * Represent the object as a standard {@link StringField}. - * + * * @return A {@link StringField} containing a string value. */ public StringField asStringField() { @@ -33,7 +32,7 @@ public StringField asStringField() { /** * Represent the object as a standard {@link AmountField}. - * + * * @return An {@link AmountField} containing a double value. */ public AmountField asAmountField() { @@ -51,7 +50,7 @@ public AmountField asAmountField() { /** * Represent the object as a standard {@link BooleanField}. - * + * * @return A {@link BooleanField} containing a boolean value. */ public BooleanField asBooleanField() { @@ -69,7 +68,7 @@ public BooleanField asBooleanField() { /** * Represent the object as a standard {@link DateField}. - * + * * @return A {@link DateField} containing a date value. */ public DateField asDateField() { @@ -84,7 +83,7 @@ public DateField asDateField() { /** * Represent the object as a standard {@link ClassificationField}. - * + * * @return A {@link ClassificationField} containing a string value. */ public ClassificationField asClassificationField() { @@ -93,7 +92,7 @@ public ClassificationField asClassificationField() { /** * Get the polygon, if present. - * + * * @return A {@link Polygon}. */ public Polygon getPolygon() { @@ -102,7 +101,7 @@ public Polygon getPolygon() { /** * Get the specified key as a {@link Polygon} object. - * + * * @param key Key to retrieve the polygon from. * @return A {@link Polygon}. */ @@ -126,12 +125,12 @@ public Polygon getAsPolygon(String key) { } } } - return PolygonUtils.getFrom((List>) rawPolygon); + return new Polygon((List>) rawPolygon); } /** * Get the page ID, if present. - * + * * @return A page ID, as an integer. */ public Integer getPageId() { @@ -140,7 +139,7 @@ public Integer getPageId() { /** * Get the confidence score, if present. - * + * * @return The confidence score, as a double. */ public Double getConfidence() { @@ -149,7 +148,7 @@ public Double getConfidence() { /** * Get the information on whether the date field was extracted. - * + * * @return A boolean representation of the field. */ public Boolean getIsComputed() { diff --git a/src/main/java/com/mindee/parsing/generated/GeneratedV1PredictionDeserializer.java b/src/main/java/com/mindee/v1/parsing/generated/GeneratedV1PredictionDeserializer.java similarity index 95% rename from src/main/java/com/mindee/parsing/generated/GeneratedV1PredictionDeserializer.java rename to src/main/java/com/mindee/v1/parsing/generated/GeneratedV1PredictionDeserializer.java index 626f0d480..8369810ac 100644 --- a/src/main/java/com/mindee/parsing/generated/GeneratedV1PredictionDeserializer.java +++ b/src/main/java/com/mindee/v1/parsing/generated/GeneratedV1PredictionDeserializer.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.generated; +package com.mindee.v1.parsing.generated; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.type.TypeReference; @@ -7,7 +7,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.deser.std.StdDeserializer; import com.fasterxml.jackson.databind.node.ObjectNode; -import com.mindee.product.generated.GeneratedV1Document; +import com.mindee.v1.product.generated.GeneratedV1Document; import java.io.IOException; import java.util.HashMap; import java.util.Iterator; diff --git a/src/main/java/com/mindee/parsing/standard/AddressField.java b/src/main/java/com/mindee/v1/parsing/standard/AddressField.java similarity index 98% rename from src/main/java/com/mindee/parsing/standard/AddressField.java rename to src/main/java/com/mindee/v1/parsing/standard/AddressField.java index faeea5303..ef1f2094f 100644 --- a/src/main/java/com/mindee/parsing/standard/AddressField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/AddressField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/standard/AmountField.java b/src/main/java/com/mindee/v1/parsing/standard/AmountField.java similarity index 92% rename from src/main/java/com/mindee/parsing/standard/AmountField.java rename to src/main/java/com/mindee/v1/parsing/standard/AmountField.java index 8ec6af2db..41d425259 100644 --- a/src/main/java/com/mindee/parsing/standard/AmountField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/AmountField.java @@ -1,11 +1,11 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.mindee.geometry.Polygon; import com.mindee.geometry.PolygonDeserializer; -import com.mindee.parsing.SummaryHelper; +import com.mindee.v1.parsing.SummaryHelper; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/parsing/standard/BaseField.java b/src/main/java/com/mindee/v1/parsing/standard/BaseField.java similarity index 93% rename from src/main/java/com/mindee/parsing/standard/BaseField.java rename to src/main/java/com/mindee/v1/parsing/standard/BaseField.java index d085e40d0..f4fa24f0c 100644 --- a/src/main/java/com/mindee/parsing/standard/BaseField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/BaseField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; @@ -7,6 +7,7 @@ import com.mindee.geometry.BoundingBoxUtils; import com.mindee.geometry.Polygon; import com.mindee.geometry.PolygonDeserializer; +import com.mindee.geometry.PositionDataField; import lombok.EqualsAndHashCode; import lombok.Getter; @@ -16,7 +17,7 @@ @Getter @EqualsAndHashCode @JsonIgnoreProperties(ignoreUnknown = true) -public abstract class BaseField implements PositionData { +public abstract class BaseField implements PositionDataField { /** * The bounding box equivalent of the polygon. diff --git a/src/main/java/com/mindee/parsing/standard/BooleanField.java b/src/main/java/com/mindee/v1/parsing/standard/BooleanField.java similarity index 92% rename from src/main/java/com/mindee/parsing/standard/BooleanField.java rename to src/main/java/com/mindee/v1/parsing/standard/BooleanField.java index 88a02c796..d3d5e4b5d 100644 --- a/src/main/java/com/mindee/parsing/standard/BooleanField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/BooleanField.java @@ -1,11 +1,11 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.mindee.geometry.Polygon; import com.mindee.geometry.PolygonDeserializer; -import com.mindee.parsing.SummaryHelper; +import com.mindee.v1.parsing.SummaryHelper; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/parsing/standard/ClassificationField.java b/src/main/java/com/mindee/v1/parsing/standard/ClassificationField.java similarity index 93% rename from src/main/java/com/mindee/parsing/standard/ClassificationField.java rename to src/main/java/com/mindee/v1/parsing/standard/ClassificationField.java index 326e4856f..7a26b74dc 100644 --- a/src/main/java/com/mindee/parsing/standard/ClassificationField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/ClassificationField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/standard/CompanyRegistrationField.java b/src/main/java/com/mindee/v1/parsing/standard/CompanyRegistrationField.java similarity index 95% rename from src/main/java/com/mindee/parsing/standard/CompanyRegistrationField.java rename to src/main/java/com/mindee/v1/parsing/standard/CompanyRegistrationField.java index 5596b4e76..6018468d7 100644 --- a/src/main/java/com/mindee/parsing/standard/CompanyRegistrationField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/CompanyRegistrationField.java @@ -1,8 +1,8 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; +import com.mindee.v1.parsing.SummaryHelper; import java.util.HashMap; import java.util.Map; import lombok.Getter; diff --git a/src/main/java/com/mindee/parsing/standard/DateField.java b/src/main/java/com/mindee/v1/parsing/standard/DateField.java similarity index 97% rename from src/main/java/com/mindee/parsing/standard/DateField.java rename to src/main/java/com/mindee/v1/parsing/standard/DateField.java index 0f2aa7b98..9699bd6e3 100644 --- a/src/main/java/com/mindee/parsing/standard/DateField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/DateField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/standard/LineItemField.java b/src/main/java/com/mindee/v1/parsing/standard/LineItemField.java similarity index 76% rename from src/main/java/com/mindee/parsing/standard/LineItemField.java rename to src/main/java/com/mindee/v1/parsing/standard/LineItemField.java index 151e3c9d3..c75eb4f25 100644 --- a/src/main/java/com/mindee/parsing/standard/LineItemField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/LineItemField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; /** * Represent a single line in a field printable as an rST table. diff --git a/src/main/java/com/mindee/parsing/standard/LocaleField.java b/src/main/java/com/mindee/v1/parsing/standard/LocaleField.java similarity index 98% rename from src/main/java/com/mindee/parsing/standard/LocaleField.java rename to src/main/java/com/mindee/v1/parsing/standard/LocaleField.java index 47fe88cfa..e763fb0b3 100644 --- a/src/main/java/com/mindee/parsing/standard/LocaleField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/LocaleField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/standard/PaymentDetailsField.java b/src/main/java/com/mindee/v1/parsing/standard/PaymentDetailsField.java similarity index 97% rename from src/main/java/com/mindee/parsing/standard/PaymentDetailsField.java rename to src/main/java/com/mindee/v1/parsing/standard/PaymentDetailsField.java index 935a02d53..6cd7b5012 100644 --- a/src/main/java/com/mindee/parsing/standard/PaymentDetailsField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/PaymentDetailsField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/standard/PositionField.java b/src/main/java/com/mindee/v1/parsing/standard/PositionField.java similarity index 91% rename from src/main/java/com/mindee/parsing/standard/PositionField.java rename to src/main/java/com/mindee/v1/parsing/standard/PositionField.java index 89848593a..dbbe85ea7 100644 --- a/src/main/java/com/mindee/parsing/standard/PositionField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/PositionField.java @@ -1,10 +1,11 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.mindee.geometry.Polygon; import com.mindee.geometry.PolygonDeserializer; +import com.mindee.geometry.PositionDataField; import lombok.Getter; /** @@ -12,7 +13,7 @@ */ @Getter @JsonIgnoreProperties(ignoreUnknown = true) -public class PositionField implements PositionData { +public class PositionField implements PositionDataField { /** * Straight rectangle. diff --git a/src/main/java/com/mindee/parsing/standard/StringField.java b/src/main/java/com/mindee/v1/parsing/standard/StringField.java similarity index 93% rename from src/main/java/com/mindee/parsing/standard/StringField.java rename to src/main/java/com/mindee/v1/parsing/standard/StringField.java index 67c869125..cd4982c04 100644 --- a/src/main/java/com/mindee/parsing/standard/StringField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/StringField.java @@ -1,11 +1,11 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.mindee.geometry.Polygon; import com.mindee.geometry.PolygonDeserializer; -import com.mindee.parsing.SummaryHelper; +import com.mindee.v1.parsing.SummaryHelper; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/parsing/standard/TaxField.java b/src/main/java/com/mindee/v1/parsing/standard/TaxField.java similarity index 96% rename from src/main/java/com/mindee/parsing/standard/TaxField.java rename to src/main/java/com/mindee/v1/parsing/standard/TaxField.java index 50a961fb9..1bd7fa244 100644 --- a/src/main/java/com/mindee/parsing/standard/TaxField.java +++ b/src/main/java/com/mindee/v1/parsing/standard/TaxField.java @@ -1,8 +1,8 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; +import com.mindee.v1.parsing.SummaryHelper; import java.util.HashMap; import java.util.Map; import lombok.Getter; diff --git a/src/main/java/com/mindee/parsing/standard/Taxes.java b/src/main/java/com/mindee/v1/parsing/standard/Taxes.java similarity index 88% rename from src/main/java/com/mindee/parsing/standard/Taxes.java rename to src/main/java/com/mindee/v1/parsing/standard/Taxes.java index 49cdce126..d4b72dd89 100644 --- a/src/main/java/com/mindee/parsing/standard/Taxes.java +++ b/src/main/java/com/mindee/v1/parsing/standard/Taxes.java @@ -1,6 +1,6 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; -import com.mindee.parsing.SummaryHelper; +import com.mindee.v1.parsing.SummaryHelper; import java.util.ArrayList; /** diff --git a/src/main/java/com/mindee/parsing/standard/TaxesDeserializer.java b/src/main/java/com/mindee/v1/parsing/standard/TaxesDeserializer.java similarity index 96% rename from src/main/java/com/mindee/parsing/standard/TaxesDeserializer.java rename to src/main/java/com/mindee/v1/parsing/standard/TaxesDeserializer.java index a98e6a720..b73c4abab 100644 --- a/src/main/java/com/mindee/parsing/standard/TaxesDeserializer.java +++ b/src/main/java/com/mindee/v1/parsing/standard/TaxesDeserializer.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.type.TypeReference; diff --git a/src/main/java/com/mindee/product/barcodereader/BarcodeReaderV1.java b/src/main/java/com/mindee/v1/product/barcodereader/BarcodeReaderV1.java similarity index 73% rename from src/main/java/com/mindee/product/barcodereader/BarcodeReaderV1.java rename to src/main/java/com/mindee/v1/product/barcodereader/BarcodeReaderV1.java index 8e8dad7aa..9e90aaf86 100644 --- a/src/main/java/com/mindee/product/barcodereader/BarcodeReaderV1.java +++ b/src/main/java/com/mindee/v1/product/barcodereader/BarcodeReaderV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.barcodereader; +package com.mindee.v1.product.barcodereader; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/barcodereader/BarcodeReaderV1Document.java b/src/main/java/com/mindee/v1/product/barcodereader/BarcodeReaderV1Document.java similarity index 87% rename from src/main/java/com/mindee/product/barcodereader/BarcodeReaderV1Document.java rename to src/main/java/com/mindee/v1/product/barcodereader/BarcodeReaderV1Document.java index fe6c44267..ac3d9e546 100644 --- a/src/main/java/com/mindee/product/barcodereader/BarcodeReaderV1Document.java +++ b/src/main/java/com/mindee/v1/product/barcodereader/BarcodeReaderV1Document.java @@ -1,10 +1,10 @@ -package com.mindee.product.barcodereader; +package com.mindee.v1.product.barcodereader; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.StringField; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/cropper/CropperV1.java b/src/main/java/com/mindee/v1/product/cropper/CropperV1.java similarity index 72% rename from src/main/java/com/mindee/product/cropper/CropperV1.java rename to src/main/java/com/mindee/v1/product/cropper/CropperV1.java index 031f76627..2210a5f8a 100644 --- a/src/main/java/com/mindee/product/cropper/CropperV1.java +++ b/src/main/java/com/mindee/v1/product/cropper/CropperV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.cropper; +package com.mindee.v1.product.cropper; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/cropper/CropperV1Document.java b/src/main/java/com/mindee/v1/product/cropper/CropperV1Document.java similarity index 83% rename from src/main/java/com/mindee/product/cropper/CropperV1Document.java rename to src/main/java/com/mindee/v1/product/cropper/CropperV1Document.java index e2fa77603..7ffacad26 100644 --- a/src/main/java/com/mindee/product/cropper/CropperV1Document.java +++ b/src/main/java/com/mindee/v1/product/cropper/CropperV1Document.java @@ -1,7 +1,7 @@ -package com.mindee.product.cropper; +package com.mindee.v1.product.cropper; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.parsing.common.Prediction; +import com.mindee.v1.parsing.common.Prediction; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/cropper/CropperV1Page.java b/src/main/java/com/mindee/v1/product/cropper/CropperV1Page.java similarity index 88% rename from src/main/java/com/mindee/product/cropper/CropperV1Page.java rename to src/main/java/com/mindee/v1/product/cropper/CropperV1Page.java index 31a29cec0..48aaf4c69 100644 --- a/src/main/java/com/mindee/product/cropper/CropperV1Page.java +++ b/src/main/java/com/mindee/v1/product/cropper/CropperV1Page.java @@ -1,9 +1,9 @@ -package com.mindee.product.cropper; +package com.mindee.v1.product.cropper; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.standard.PositionField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.standard.PositionField; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/driverlicense/DriverLicenseV1.java b/src/main/java/com/mindee/v1/product/driverlicense/DriverLicenseV1.java similarity index 73% rename from src/main/java/com/mindee/product/driverlicense/DriverLicenseV1.java rename to src/main/java/com/mindee/v1/product/driverlicense/DriverLicenseV1.java index 5035f64b0..1c27f8f47 100644 --- a/src/main/java/com/mindee/product/driverlicense/DriverLicenseV1.java +++ b/src/main/java/com/mindee/v1/product/driverlicense/DriverLicenseV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.driverlicense; +package com.mindee.v1.product.driverlicense; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/driverlicense/DriverLicenseV1Document.java b/src/main/java/com/mindee/v1/product/driverlicense/DriverLicenseV1Document.java similarity index 93% rename from src/main/java/com/mindee/product/driverlicense/DriverLicenseV1Document.java rename to src/main/java/com/mindee/v1/product/driverlicense/DriverLicenseV1Document.java index 3808b5250..6401ade0d 100644 --- a/src/main/java/com/mindee/product/driverlicense/DriverLicenseV1Document.java +++ b/src/main/java/com/mindee/v1/product/driverlicense/DriverLicenseV1Document.java @@ -1,11 +1,11 @@ -package com.mindee.product.driverlicense; +package com.mindee.v1.product.driverlicense; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/financialdocument/FinancialDocumentV1.java b/src/main/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1.java similarity index 73% rename from src/main/java/com/mindee/product/financialdocument/FinancialDocumentV1.java rename to src/main/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1.java index 758f9839b..4c10a0a7b 100644 --- a/src/main/java/com/mindee/product/financialdocument/FinancialDocumentV1.java +++ b/src/main/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.financialdocument; +package com.mindee.v1.product.financialdocument; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/financialdocument/FinancialDocumentV1Document.java b/src/main/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1Document.java similarity index 94% rename from src/main/java/com/mindee/product/financialdocument/FinancialDocumentV1Document.java rename to src/main/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1Document.java index 2f879df7d..f843f798c 100644 --- a/src/main/java/com/mindee/product/financialdocument/FinancialDocumentV1Document.java +++ b/src/main/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1Document.java @@ -1,20 +1,20 @@ -package com.mindee.product.financialdocument; +package com.mindee.v1.product.financialdocument; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.AddressField; -import com.mindee.parsing.standard.AmountField; -import com.mindee.parsing.standard.ClassificationField; -import com.mindee.parsing.standard.CompanyRegistrationField; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.LocaleField; -import com.mindee.parsing.standard.PaymentDetailsField; -import com.mindee.parsing.standard.StringField; -import com.mindee.parsing.standard.Taxes; -import com.mindee.parsing.standard.TaxesDeserializer; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.AddressField; +import com.mindee.v1.parsing.standard.AmountField; +import com.mindee.v1.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.standard.CompanyRegistrationField; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.LocaleField; +import com.mindee.v1.parsing.standard.PaymentDetailsField; +import com.mindee.v1.parsing.standard.StringField; +import com.mindee.v1.parsing.standard.Taxes; +import com.mindee.v1.parsing.standard.TaxesDeserializer; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/financialdocument/FinancialDocumentV1LineItem.java b/src/main/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1LineItem.java similarity index 95% rename from src/main/java/com/mindee/product/financialdocument/FinancialDocumentV1LineItem.java rename to src/main/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1LineItem.java index 47ec3a696..b9a6ffcd0 100644 --- a/src/main/java/com/mindee/product/financialdocument/FinancialDocumentV1LineItem.java +++ b/src/main/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1LineItem.java @@ -1,10 +1,10 @@ -package com.mindee.product.financialdocument; +package com.mindee.v1.product.financialdocument; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.standard.BaseField; -import com.mindee.parsing.standard.LineItemField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.standard.BaseField; +import com.mindee.v1.parsing.standard.LineItemField; import java.util.HashMap; import java.util.Map; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2.java b/src/main/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2.java similarity index 73% rename from src/main/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2.java rename to src/main/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2.java index edadc921f..8fc466651 100644 --- a/src/main/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2.java +++ b/src/main/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2.java @@ -1,8 +1,8 @@ -package com.mindee.product.fr.bankaccountdetails; +package com.mindee.v1.product.fr.bankaccountdetails; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2Bban.java b/src/main/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2Bban.java similarity index 94% rename from src/main/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2Bban.java rename to src/main/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2Bban.java index ea4829175..85631d8d0 100644 --- a/src/main/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2Bban.java +++ b/src/main/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2Bban.java @@ -1,9 +1,9 @@ -package com.mindee.product.fr.bankaccountdetails; +package com.mindee.v1.product.fr.bankaccountdetails; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.standard.BaseField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.standard.BaseField; import java.util.HashMap; import java.util.Map; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2Document.java b/src/main/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2Document.java similarity index 89% rename from src/main/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2Document.java rename to src/main/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2Document.java index 78d914c05..3f5f902d4 100644 --- a/src/main/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2Document.java +++ b/src/main/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2Document.java @@ -1,10 +1,10 @@ -package com.mindee.product.fr.bankaccountdetails; +package com.mindee.v1.product.fr.bankaccountdetails; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.StringField; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/fr/cartegrise/CarteGriseV1.java b/src/main/java/com/mindee/v1/product/fr/cartegrise/CarteGriseV1.java similarity index 72% rename from src/main/java/com/mindee/product/fr/cartegrise/CarteGriseV1.java rename to src/main/java/com/mindee/v1/product/fr/cartegrise/CarteGriseV1.java index 686c557e7..ce627ecba 100644 --- a/src/main/java/com/mindee/product/fr/cartegrise/CarteGriseV1.java +++ b/src/main/java/com/mindee/v1/product/fr/cartegrise/CarteGriseV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.fr.cartegrise; +package com.mindee.v1.product.fr.cartegrise; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/fr/cartegrise/CarteGriseV1Document.java b/src/main/java/com/mindee/v1/product/fr/cartegrise/CarteGriseV1Document.java similarity index 97% rename from src/main/java/com/mindee/product/fr/cartegrise/CarteGriseV1Document.java rename to src/main/java/com/mindee/v1/product/fr/cartegrise/CarteGriseV1Document.java index 16f505af7..c7dc3dfae 100644 --- a/src/main/java/com/mindee/product/fr/cartegrise/CarteGriseV1Document.java +++ b/src/main/java/com/mindee/v1/product/fr/cartegrise/CarteGriseV1Document.java @@ -1,11 +1,11 @@ -package com.mindee.product.fr.cartegrise; +package com.mindee.v1.product.fr.cartegrise; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/fr/idcard/IdCardV1.java b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV1.java similarity index 72% rename from src/main/java/com/mindee/product/fr/idcard/IdCardV1.java rename to src/main/java/com/mindee/v1/product/fr/idcard/IdCardV1.java index af8cda05c..2e7777ce5 100644 --- a/src/main/java/com/mindee/product/fr/idcard/IdCardV1.java +++ b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.fr.idcard; +package com.mindee.v1.product.fr.idcard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/fr/idcard/IdCardV1Document.java b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV1Document.java similarity index 92% rename from src/main/java/com/mindee/product/fr/idcard/IdCardV1Document.java rename to src/main/java/com/mindee/v1/product/fr/idcard/IdCardV1Document.java index 7af2b21e7..1d9ea8485 100644 --- a/src/main/java/com/mindee/product/fr/idcard/IdCardV1Document.java +++ b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV1Document.java @@ -1,11 +1,11 @@ -package com.mindee.product.fr.idcard; +package com.mindee.v1.product.fr.idcard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/fr/idcard/IdCardV1Page.java b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV1Page.java similarity index 85% rename from src/main/java/com/mindee/product/fr/idcard/IdCardV1Page.java rename to src/main/java/com/mindee/v1/product/fr/idcard/IdCardV1Page.java index 3d2b2c58e..0287ff1d4 100644 --- a/src/main/java/com/mindee/product/fr/idcard/IdCardV1Page.java +++ b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV1Page.java @@ -1,9 +1,9 @@ -package com.mindee.product.fr.idcard; +package com.mindee.v1.product.fr.idcard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.standard.ClassificationField; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/fr/idcard/IdCardV2.java b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV2.java similarity index 72% rename from src/main/java/com/mindee/product/fr/idcard/IdCardV2.java rename to src/main/java/com/mindee/v1/product/fr/idcard/IdCardV2.java index feb577e14..9338e2275 100644 --- a/src/main/java/com/mindee/product/fr/idcard/IdCardV2.java +++ b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV2.java @@ -1,8 +1,8 @@ -package com.mindee.product.fr.idcard; +package com.mindee.v1.product.fr.idcard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/fr/idcard/IdCardV2Document.java b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV2Document.java similarity index 94% rename from src/main/java/com/mindee/product/fr/idcard/IdCardV2Document.java rename to src/main/java/com/mindee/v1/product/fr/idcard/IdCardV2Document.java index 54754f6b9..5fb072187 100644 --- a/src/main/java/com/mindee/product/fr/idcard/IdCardV2Document.java +++ b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV2Document.java @@ -1,11 +1,11 @@ -package com.mindee.product.fr.idcard; +package com.mindee.v1.product.fr.idcard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/fr/idcard/IdCardV2Page.java b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV2Page.java similarity index 88% rename from src/main/java/com/mindee/product/fr/idcard/IdCardV2Page.java rename to src/main/java/com/mindee/v1/product/fr/idcard/IdCardV2Page.java index e24661128..bdf4f1a6a 100644 --- a/src/main/java/com/mindee/product/fr/idcard/IdCardV2Page.java +++ b/src/main/java/com/mindee/v1/product/fr/idcard/IdCardV2Page.java @@ -1,9 +1,9 @@ -package com.mindee.product.fr.idcard; +package com.mindee.v1.product.fr.idcard; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.standard.ClassificationField; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/generated/GeneratedV1.java b/src/main/java/com/mindee/v1/product/generated/GeneratedV1.java similarity index 77% rename from src/main/java/com/mindee/product/generated/GeneratedV1.java rename to src/main/java/com/mindee/v1/product/generated/GeneratedV1.java index ca938561b..820aca1d9 100644 --- a/src/main/java/com/mindee/product/generated/GeneratedV1.java +++ b/src/main/java/com/mindee/v1/product/generated/GeneratedV1.java @@ -1,7 +1,7 @@ -package com.mindee.product.generated; +package com.mindee.v1.product.generated; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/generated/GeneratedV1Document.java b/src/main/java/com/mindee/v1/product/generated/GeneratedV1Document.java similarity index 83% rename from src/main/java/com/mindee/product/generated/GeneratedV1Document.java rename to src/main/java/com/mindee/v1/product/generated/GeneratedV1Document.java index d0a849ed6..64f954268 100644 --- a/src/main/java/com/mindee/product/generated/GeneratedV1Document.java +++ b/src/main/java/com/mindee/v1/product/generated/GeneratedV1Document.java @@ -1,10 +1,10 @@ -package com.mindee.product.generated; +package com.mindee.v1.product.generated; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.generated.GeneratedFeature; -import com.mindee.parsing.generated.GeneratedV1PredictionDeserializer; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.generated.GeneratedFeature; +import com.mindee.v1.parsing.generated.GeneratedV1PredictionDeserializer; import java.util.Map; import java.util.TreeMap; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/mindee/product/ind/indianpassport/IndianPassportV1.java b/src/main/java/com/mindee/v1/product/ind/indianpassport/IndianPassportV1.java similarity index 72% rename from src/main/java/com/mindee/product/ind/indianpassport/IndianPassportV1.java rename to src/main/java/com/mindee/v1/product/ind/indianpassport/IndianPassportV1.java index 76dfdb7cb..809487848 100644 --- a/src/main/java/com/mindee/product/ind/indianpassport/IndianPassportV1.java +++ b/src/main/java/com/mindee/v1/product/ind/indianpassport/IndianPassportV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.ind.indianpassport; +package com.mindee.v1.product.ind.indianpassport; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/ind/indianpassport/IndianPassportV1Document.java b/src/main/java/com/mindee/v1/product/ind/indianpassport/IndianPassportV1Document.java similarity index 95% rename from src/main/java/com/mindee/product/ind/indianpassport/IndianPassportV1Document.java rename to src/main/java/com/mindee/v1/product/ind/indianpassport/IndianPassportV1Document.java index 85b7de6e4..d7a78fed8 100644 --- a/src/main/java/com/mindee/product/ind/indianpassport/IndianPassportV1Document.java +++ b/src/main/java/com/mindee/v1/product/ind/indianpassport/IndianPassportV1Document.java @@ -1,12 +1,12 @@ -package com.mindee.product.ind.indianpassport; +package com.mindee.v1.product.ind.indianpassport; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.ClassificationField; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/internationalid/InternationalIdV2.java b/src/main/java/com/mindee/v1/product/internationalid/InternationalIdV2.java similarity index 73% rename from src/main/java/com/mindee/product/internationalid/InternationalIdV2.java rename to src/main/java/com/mindee/v1/product/internationalid/InternationalIdV2.java index fbc6a60ec..fda49aa6e 100644 --- a/src/main/java/com/mindee/product/internationalid/InternationalIdV2.java +++ b/src/main/java/com/mindee/v1/product/internationalid/InternationalIdV2.java @@ -1,8 +1,8 @@ -package com.mindee.product.internationalid; +package com.mindee.v1.product.internationalid; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/internationalid/InternationalIdV2Document.java b/src/main/java/com/mindee/v1/product/internationalid/InternationalIdV2Document.java similarity index 94% rename from src/main/java/com/mindee/product/internationalid/InternationalIdV2Document.java rename to src/main/java/com/mindee/v1/product/internationalid/InternationalIdV2Document.java index a473f56dc..9da9afe81 100644 --- a/src/main/java/com/mindee/product/internationalid/InternationalIdV2Document.java +++ b/src/main/java/com/mindee/v1/product/internationalid/InternationalIdV2Document.java @@ -1,12 +1,12 @@ -package com.mindee.product.internationalid; +package com.mindee.v1.product.internationalid; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.ClassificationField; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/invoice/InvoiceV4.java b/src/main/java/com/mindee/v1/product/invoice/InvoiceV4.java similarity index 72% rename from src/main/java/com/mindee/product/invoice/InvoiceV4.java rename to src/main/java/com/mindee/v1/product/invoice/InvoiceV4.java index 4688476f7..e53b6fffb 100644 --- a/src/main/java/com/mindee/product/invoice/InvoiceV4.java +++ b/src/main/java/com/mindee/v1/product/invoice/InvoiceV4.java @@ -1,8 +1,8 @@ -package com.mindee.product.invoice; +package com.mindee.v1.product.invoice; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/invoice/InvoiceV4Document.java b/src/main/java/com/mindee/v1/product/invoice/InvoiceV4Document.java similarity index 93% rename from src/main/java/com/mindee/product/invoice/InvoiceV4Document.java rename to src/main/java/com/mindee/v1/product/invoice/InvoiceV4Document.java index 6fd1daf1f..bc80c9542 100644 --- a/src/main/java/com/mindee/product/invoice/InvoiceV4Document.java +++ b/src/main/java/com/mindee/v1/product/invoice/InvoiceV4Document.java @@ -1,20 +1,20 @@ -package com.mindee.product.invoice; +package com.mindee.v1.product.invoice; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.AddressField; -import com.mindee.parsing.standard.AmountField; -import com.mindee.parsing.standard.ClassificationField; -import com.mindee.parsing.standard.CompanyRegistrationField; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.LocaleField; -import com.mindee.parsing.standard.PaymentDetailsField; -import com.mindee.parsing.standard.StringField; -import com.mindee.parsing.standard.Taxes; -import com.mindee.parsing.standard.TaxesDeserializer; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.AddressField; +import com.mindee.v1.parsing.standard.AmountField; +import com.mindee.v1.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.standard.CompanyRegistrationField; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.LocaleField; +import com.mindee.v1.parsing.standard.PaymentDetailsField; +import com.mindee.v1.parsing.standard.StringField; +import com.mindee.v1.parsing.standard.Taxes; +import com.mindee.v1.parsing.standard.TaxesDeserializer; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/invoice/InvoiceV4LineItem.java b/src/main/java/com/mindee/v1/product/invoice/InvoiceV4LineItem.java similarity index 95% rename from src/main/java/com/mindee/product/invoice/InvoiceV4LineItem.java rename to src/main/java/com/mindee/v1/product/invoice/InvoiceV4LineItem.java index 6d50cdfdd..cd7932838 100644 --- a/src/main/java/com/mindee/product/invoice/InvoiceV4LineItem.java +++ b/src/main/java/com/mindee/v1/product/invoice/InvoiceV4LineItem.java @@ -1,10 +1,10 @@ -package com.mindee.product.invoice; +package com.mindee.v1.product.invoice; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.standard.BaseField; -import com.mindee.parsing.standard.LineItemField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.standard.BaseField; +import com.mindee.v1.parsing.standard.LineItemField; import java.util.HashMap; import java.util.Map; import lombok.Getter; diff --git a/src/main/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1.java b/src/main/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1.java similarity index 73% rename from src/main/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1.java rename to src/main/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1.java index e115f419e..cef139b15 100644 --- a/src/main/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1.java +++ b/src/main/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.invoicesplitter; +package com.mindee.v1.product.invoicesplitter; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1Document.java b/src/main/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1Document.java similarity index 92% rename from src/main/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1Document.java rename to src/main/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1Document.java index 773c7991f..c4fb27c11 100644 --- a/src/main/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1Document.java +++ b/src/main/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1Document.java @@ -1,9 +1,9 @@ -package com.mindee.product.invoicesplitter; +package com.mindee.v1.product.invoicesplitter; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1InvoicePageGroup.java b/src/main/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1InvoicePageGroup.java similarity index 91% rename from src/main/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1InvoicePageGroup.java rename to src/main/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1InvoicePageGroup.java index 50f56f91e..3a781f4d6 100644 --- a/src/main/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1InvoicePageGroup.java +++ b/src/main/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1InvoicePageGroup.java @@ -1,9 +1,9 @@ -package com.mindee.product.invoicesplitter; +package com.mindee.v1.product.invoicesplitter; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.standard.BaseField; -import com.mindee.parsing.standard.LineItemField; +import com.mindee.v1.parsing.standard.BaseField; +import com.mindee.v1.parsing.standard.LineItemField; import java.util.HashMap; import java.util.List; import java.util.Map; diff --git a/src/main/java/com/mindee/product/multireceiptsdetector/MultiReceiptsDetectorV1.java b/src/main/java/com/mindee/v1/product/multireceiptsdetector/MultiReceiptsDetectorV1.java similarity index 74% rename from src/main/java/com/mindee/product/multireceiptsdetector/MultiReceiptsDetectorV1.java rename to src/main/java/com/mindee/v1/product/multireceiptsdetector/MultiReceiptsDetectorV1.java index 53fa8787d..1e9dc0f25 100644 --- a/src/main/java/com/mindee/product/multireceiptsdetector/MultiReceiptsDetectorV1.java +++ b/src/main/java/com/mindee/v1/product/multireceiptsdetector/MultiReceiptsDetectorV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.multireceiptsdetector; +package com.mindee.v1.product.multireceiptsdetector; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/multireceiptsdetector/MultiReceiptsDetectorV1Document.java b/src/main/java/com/mindee/v1/product/multireceiptsdetector/MultiReceiptsDetectorV1Document.java similarity index 83% rename from src/main/java/com/mindee/product/multireceiptsdetector/MultiReceiptsDetectorV1Document.java rename to src/main/java/com/mindee/v1/product/multireceiptsdetector/MultiReceiptsDetectorV1Document.java index 64d6f6d25..6d4682e66 100644 --- a/src/main/java/com/mindee/product/multireceiptsdetector/MultiReceiptsDetectorV1Document.java +++ b/src/main/java/com/mindee/v1/product/multireceiptsdetector/MultiReceiptsDetectorV1Document.java @@ -1,10 +1,10 @@ -package com.mindee.product.multireceiptsdetector; +package com.mindee.v1.product.multireceiptsdetector; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.PositionField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.PositionField; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/passport/PassportV1.java b/src/main/java/com/mindee/v1/product/passport/PassportV1.java similarity index 72% rename from src/main/java/com/mindee/product/passport/PassportV1.java rename to src/main/java/com/mindee/v1/product/passport/PassportV1.java index d9549530b..4cb8700ef 100644 --- a/src/main/java/com/mindee/product/passport/PassportV1.java +++ b/src/main/java/com/mindee/v1/product/passport/PassportV1.java @@ -1,8 +1,8 @@ -package com.mindee.product.passport; +package com.mindee.v1.product.passport; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/passport/PassportV1Document.java b/src/main/java/com/mindee/v1/product/passport/PassportV1Document.java similarity index 93% rename from src/main/java/com/mindee/product/passport/PassportV1Document.java rename to src/main/java/com/mindee/v1/product/passport/PassportV1Document.java index feeb9a1bf..f8e7a03ac 100644 --- a/src/main/java/com/mindee/product/passport/PassportV1Document.java +++ b/src/main/java/com/mindee/v1/product/passport/PassportV1Document.java @@ -1,11 +1,11 @@ -package com.mindee.product.passport; +package com.mindee.v1.product.passport; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/receipt/ReceiptV5.java b/src/main/java/com/mindee/v1/product/receipt/ReceiptV5.java similarity index 72% rename from src/main/java/com/mindee/product/receipt/ReceiptV5.java rename to src/main/java/com/mindee/v1/product/receipt/ReceiptV5.java index 64c071e54..289c32130 100644 --- a/src/main/java/com/mindee/product/receipt/ReceiptV5.java +++ b/src/main/java/com/mindee/v1/product/receipt/ReceiptV5.java @@ -1,8 +1,8 @@ -package com.mindee.product.receipt; +package com.mindee.v1.product.receipt; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.mindee.http.EndpointInfo; -import com.mindee.parsing.common.Inference; +import com.mindee.v1.http.EndpointInfo; +import com.mindee.v1.parsing.common.Inference; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/product/receipt/ReceiptV5Document.java b/src/main/java/com/mindee/v1/product/receipt/ReceiptV5Document.java similarity index 91% rename from src/main/java/com/mindee/product/receipt/ReceiptV5Document.java rename to src/main/java/com/mindee/v1/product/receipt/ReceiptV5Document.java index 1234964b6..6ca34663e 100644 --- a/src/main/java/com/mindee/product/receipt/ReceiptV5Document.java +++ b/src/main/java/com/mindee/v1/product/receipt/ReceiptV5Document.java @@ -1,18 +1,18 @@ -package com.mindee.product.receipt; +package com.mindee.v1.product.receipt; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.common.Prediction; -import com.mindee.parsing.standard.AmountField; -import com.mindee.parsing.standard.ClassificationField; -import com.mindee.parsing.standard.CompanyRegistrationField; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.LocaleField; -import com.mindee.parsing.standard.StringField; -import com.mindee.parsing.standard.Taxes; -import com.mindee.parsing.standard.TaxesDeserializer; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.common.Prediction; +import com.mindee.v1.parsing.standard.AmountField; +import com.mindee.v1.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.standard.CompanyRegistrationField; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.LocaleField; +import com.mindee.v1.parsing.standard.StringField; +import com.mindee.v1.parsing.standard.Taxes; +import com.mindee.v1.parsing.standard.TaxesDeserializer; import java.util.ArrayList; import java.util.List; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/product/receipt/ReceiptV5LineItem.java b/src/main/java/com/mindee/v1/product/receipt/ReceiptV5LineItem.java similarity index 93% rename from src/main/java/com/mindee/product/receipt/ReceiptV5LineItem.java rename to src/main/java/com/mindee/v1/product/receipt/ReceiptV5LineItem.java index 75ac5ca57..23859c4a3 100644 --- a/src/main/java/com/mindee/product/receipt/ReceiptV5LineItem.java +++ b/src/main/java/com/mindee/v1/product/receipt/ReceiptV5LineItem.java @@ -1,10 +1,10 @@ -package com.mindee.product.receipt; +package com.mindee.v1.product.receipt; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.SummaryHelper; -import com.mindee.parsing.standard.BaseField; -import com.mindee.parsing.standard.LineItemField; +import com.mindee.v1.parsing.SummaryHelper; +import com.mindee.v1.parsing.standard.BaseField; +import com.mindee.v1.parsing.standard.LineItemField; import java.util.HashMap; import java.util.Map; import lombok.Getter; diff --git a/src/main/java/com/mindee/MindeeClientV2.java b/src/main/java/com/mindee/v2/MindeeClient.java similarity index 80% rename from src/main/java/com/mindee/MindeeClientV2.java rename to src/main/java/com/mindee/v2/MindeeClient.java index 9dc2f23f3..520494d6b 100644 --- a/src/main/java/com/mindee/MindeeClientV2.java +++ b/src/main/java/com/mindee/v2/MindeeClient.java @@ -1,35 +1,36 @@ -package com.mindee; +package com.mindee.v2; -import com.mindee.http.MindeeApiV2; -import com.mindee.http.MindeeHttpApiV2; -import com.mindee.http.MindeeHttpExceptionV2; import com.mindee.input.LocalInputSource; import com.mindee.input.URLInputSource; -import com.mindee.parsing.v2.CommonResponse; -import com.mindee.parsing.v2.ErrorResponse; -import com.mindee.parsing.v2.InferenceResponse; -import com.mindee.parsing.v2.JobResponse; import com.mindee.v2.clientOptions.BaseParameters; +import com.mindee.v2.http.MindeeApiV2; +import com.mindee.v2.http.MindeeHttpApiV2; +import com.mindee.v2.http.MindeeHttpExceptionV2; +import com.mindee.v2.parsing.CommonResponse; +import com.mindee.v2.parsing.ErrorResponse; +import com.mindee.v2.parsing.JobResponse; +import com.mindee.v2.product.extraction.ExtractionResponse; +import com.mindee.v2.product.extraction.params.ExtractionParameters; import java.io.IOException; /** * Entry point for the Mindee **V2** API features. */ -public class MindeeClientV2 { +public class MindeeClient { private final MindeeApiV2 mindeeApi; /** Uses an API key read from the environment variables. */ - public MindeeClientV2() { + public MindeeClient() { this(createDefaultApiV2("")); } /** Uses the supplied API key. */ - public MindeeClientV2(String apiKey) { + public MindeeClient(String apiKey) { this(createDefaultApiV2(apiKey)); } /** Inject both a PDF implementation and an HTTP implementation. */ - public MindeeClientV2(MindeeApiV2 mindeeApi) { + public MindeeClient(MindeeApiV2 mindeeApi) { this.mindeeApi = mindeeApi; } @@ -38,7 +39,7 @@ public MindeeClientV2(MindeeApiV2 mindeeApi) { */ public JobResponse enqueueInference( LocalInputSource inputSource, - InferenceParameters params + ExtractionParameters params ) throws IOException { return enqueue(inputSource, params); } @@ -48,7 +49,7 @@ public JobResponse enqueueInference( */ public JobResponse enqueueInference( URLInputSource inputSource, - InferenceParameters params + ExtractionParameters params ) throws IOException { return enqueue(inputSource, params); } @@ -90,8 +91,8 @@ public JobResponse getJob(String jobId) { /** * @deprecated use `getResult` instead. */ - public InferenceResponse getInference(String inferenceId) { - return getResult(InferenceResponse.class, inferenceId); + public ExtractionResponse getInference(String inferenceId) { + return getResult(ExtractionResponse.class, inferenceId); } /** @@ -111,21 +112,21 @@ public TResponse getResult( /** * @deprecated use `enqueueAndGetResult` instead. */ - public InferenceResponse enqueueAndGetInference( + public ExtractionResponse enqueueAndGetInference( LocalInputSource inputSource, - InferenceParameters options + ExtractionParameters options ) throws IOException, InterruptedException { - return enqueueAndGetResult(InferenceResponse.class, inputSource, options); + return enqueueAndGetResult(ExtractionResponse.class, inputSource, options); } /** * @deprecated use `enqueueAndGetResult` instead. */ - public InferenceResponse enqueueAndGetInference( + public ExtractionResponse enqueueAndGetInference( URLInputSource inputSource, - InferenceParameters options + ExtractionParameters options ) throws IOException, InterruptedException { - return enqueueAndGetResult(InferenceResponse.class, inputSource, options); + return enqueueAndGetResult(ExtractionResponse.class, inputSource, options); } /** @@ -133,7 +134,7 @@ public InferenceResponse enqueueAndGetInference( * * @param inputSource The local input source to send. * @param params The parameters to send along with the file. - * @return an instance of {@link InferenceResponse}. + * @return an instance of {@link ExtractionResponse}. * @throws IOException Throws if the file can't be accessed. * @throws InterruptedException Throws if the thread is interrupted. */ @@ -152,7 +153,7 @@ public TResponse enqueueAndGetResult( * * @param inputSource The URL input source to send. * @param params The parameters to send along with the file. - * @return an instance of {@link InferenceResponse}. + * @return an instance of {@link ExtractionResponse}. * @throws IOException Throws if the file can't be accessed. * @throws InterruptedException Throws if the thread is interrupted. */ @@ -170,7 +171,7 @@ public TResponse enqueueAndGetResult( * Common logic for polling an asynchronous job for local & url files. * * @param initialJob The initial job response. - * @return an instance of {@link InferenceResponse}. + * @return an instance of {@link ExtractionResponse}. * @throws InterruptedException Throws if interrupted. */ private TResponse pollAndFetch( @@ -205,9 +206,9 @@ private TResponse pollAndFetch( } private static MindeeApiV2 createDefaultApiV2(String apiKey) { - MindeeSettingsV2 settings = apiKey == null || apiKey.trim().isEmpty() - ? new MindeeSettingsV2() - : new MindeeSettingsV2(apiKey); + MindeeSettings settings = apiKey == null || apiKey.trim().isEmpty() + ? new MindeeSettings() + : new MindeeSettings(apiKey); return MindeeHttpApiV2.builder().mindeeSettings(settings).build(); } } diff --git a/src/main/java/com/mindee/MindeeSettingsV2.java b/src/main/java/com/mindee/v2/MindeeSettings.java similarity index 85% rename from src/main/java/com/mindee/MindeeSettingsV2.java rename to src/main/java/com/mindee/v2/MindeeSettings.java index 3d95ba56a..36666ac52 100644 --- a/src/main/java/com/mindee/MindeeSettingsV2.java +++ b/src/main/java/com/mindee/v2/MindeeSettings.java @@ -1,4 +1,4 @@ -package com.mindee; +package com.mindee.v2; import java.util.Optional; import lombok.Builder; @@ -9,13 +9,13 @@ */ @Getter @Builder -public class MindeeSettingsV2 { +public class MindeeSettings { private static final String DEFAULT_MINDEE_V2_API_URL = "https://api-v2.mindee.net/v2"; private final String apiKey; private final String baseUrl; - public MindeeSettingsV2() { + public MindeeSettings() { this("", ""); } @@ -23,11 +23,11 @@ public Optional getApiKey() { return Optional.ofNullable(apiKey); } - public MindeeSettingsV2(String apiKey) { + public MindeeSettings(String apiKey) { this(apiKey, ""); } - public MindeeSettingsV2(String apiKey, String baseUrl) { + public MindeeSettings(String apiKey, String baseUrl) { if (apiKey == null || apiKey.trim().isEmpty()) { String apiKeyFromEnv = System.getenv("MINDEE_V2_API_KEY"); diff --git a/src/main/java/com/mindee/http/MindeeApiV2.java b/src/main/java/com/mindee/v2/http/MindeeApiV2.java similarity index 92% rename from src/main/java/com/mindee/http/MindeeApiV2.java rename to src/main/java/com/mindee/v2/http/MindeeApiV2.java index c93db9791..197e7b5fd 100644 --- a/src/main/java/com/mindee/http/MindeeApiV2.java +++ b/src/main/java/com/mindee/v2/http/MindeeApiV2.java @@ -1,13 +1,13 @@ -package com.mindee.http; +package com.mindee.v2.http; import com.mindee.MindeeException; +import com.mindee.http.MindeeApiCommon; import com.mindee.input.LocalInputSource; import com.mindee.input.URLInputSource; -import com.mindee.parsing.v2.CommonResponse; -import com.mindee.parsing.v2.ErrorResponse; -import com.mindee.parsing.v2.JobResponse; import com.mindee.v2.clientOptions.BaseParameters; -import com.mindee.v2.http.ProductInfo; +import com.mindee.v2.parsing.CommonResponse; +import com.mindee.v2.parsing.ErrorResponse; +import com.mindee.v2.parsing.JobResponse; import java.io.IOException; /** diff --git a/src/main/java/com/mindee/http/MindeeHttpApiV2.java b/src/main/java/com/mindee/v2/http/MindeeHttpApiV2.java similarity index 95% rename from src/main/java/com/mindee/http/MindeeHttpApiV2.java rename to src/main/java/com/mindee/v2/http/MindeeHttpApiV2.java index 0f15df371..0a01686d4 100644 --- a/src/main/java/com/mindee/http/MindeeHttpApiV2.java +++ b/src/main/java/com/mindee/v2/http/MindeeHttpApiV2.java @@ -1,16 +1,15 @@ -package com.mindee.http; +package com.mindee.v2.http; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.json.JsonMapper; import com.mindee.MindeeException; -import com.mindee.MindeeSettingsV2; import com.mindee.input.LocalInputSource; import com.mindee.input.URLInputSource; -import com.mindee.parsing.v2.CommonResponse; -import com.mindee.parsing.v2.ErrorResponse; -import com.mindee.parsing.v2.JobResponse; +import com.mindee.v2.MindeeSettings; import com.mindee.v2.clientOptions.BaseParameters; -import com.mindee.v2.http.ProductInfo; +import com.mindee.v2.parsing.CommonResponse; +import com.mindee.v2.parsing.ErrorResponse; +import com.mindee.v2.parsing.JobResponse; import java.io.IOException; import java.net.URISyntaxException; import java.nio.charset.StandardCharsets; @@ -39,19 +38,19 @@ public final class MindeeHttpApiV2 extends MindeeApiV2 { /** * The MindeeSetting needed to make the api call. */ - private final MindeeSettingsV2 mindeeSettings; + private final MindeeSettings mindeeSettings; /** * The HttpClientBuilder used to create HttpClient objects used to make api calls over http. * Defaults to HttpClientBuilder.create().useSystemProperties() */ private final HttpClientBuilder httpClientBuilder; - public MindeeHttpApiV2(MindeeSettingsV2 mindeeSettings) { + public MindeeHttpApiV2(MindeeSettings mindeeSettings) { this(mindeeSettings, null); } @Builder - private MindeeHttpApiV2(MindeeSettingsV2 mindeeSettings, HttpClientBuilder httpClientBuilder) { + private MindeeHttpApiV2(MindeeSettings mindeeSettings, HttpClientBuilder httpClientBuilder) { this.mindeeSettings = mindeeSettings; if (httpClientBuilder != null) { diff --git a/src/main/java/com/mindee/http/MindeeHttpExceptionV2.java b/src/main/java/com/mindee/v2/http/MindeeHttpExceptionV2.java similarity index 95% rename from src/main/java/com/mindee/http/MindeeHttpExceptionV2.java rename to src/main/java/com/mindee/v2/http/MindeeHttpExceptionV2.java index 86db6657e..409ca231e 100644 --- a/src/main/java/com/mindee/http/MindeeHttpExceptionV2.java +++ b/src/main/java/com/mindee/v2/http/MindeeHttpExceptionV2.java @@ -1,4 +1,4 @@ -package com.mindee.http; +package com.mindee.v2.http; import com.mindee.MindeeException; import lombok.Getter; diff --git a/src/main/java/com/mindee/v2/parsing/BaseInference.java b/src/main/java/com/mindee/v2/parsing/BaseInference.java index 26053d457..daa22b9fd 100644 --- a/src/main/java/com/mindee/v2/parsing/BaseInference.java +++ b/src/main/java/com/mindee/v2/parsing/BaseInference.java @@ -2,7 +2,9 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.v2.*; +import com.mindee.v2.parsing.inference.InferenceFile; +import com.mindee.v2.parsing.inference.InferenceJob; +import com.mindee.v2.parsing.inference.InferenceModel; import java.util.StringJoiner; import lombok.AllArgsConstructor; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/parsing/v2/CommonResponse.java b/src/main/java/com/mindee/v2/parsing/CommonResponse.java similarity index 93% rename from src/main/java/com/mindee/parsing/v2/CommonResponse.java rename to src/main/java/com/mindee/v2/parsing/CommonResponse.java index 72f625f3f..807a3b2ca 100644 --- a/src/main/java/com/mindee/parsing/v2/CommonResponse.java +++ b/src/main/java/com/mindee/v2/parsing/CommonResponse.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import lombok.Data; diff --git a/src/main/java/com/mindee/parsing/v2/ErrorItem.java b/src/main/java/com/mindee/v2/parsing/ErrorItem.java similarity index 95% rename from src/main/java/com/mindee/parsing/v2/ErrorItem.java rename to src/main/java/com/mindee/v2/parsing/ErrorItem.java index 8d70edad1..da1a9917d 100644 --- a/src/main/java/com/mindee/parsing/v2/ErrorItem.java +++ b/src/main/java/com/mindee/v2/parsing/ErrorItem.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/ErrorResponse.java b/src/main/java/com/mindee/v2/parsing/ErrorResponse.java similarity index 97% rename from src/main/java/com/mindee/parsing/v2/ErrorResponse.java rename to src/main/java/com/mindee/v2/parsing/ErrorResponse.java index bd81b579f..9aebb55cd 100644 --- a/src/main/java/com/mindee/parsing/v2/ErrorResponse.java +++ b/src/main/java/com/mindee/v2/parsing/ErrorResponse.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/Job.java b/src/main/java/com/mindee/v2/parsing/Job.java similarity index 95% rename from src/main/java/com/mindee/parsing/v2/Job.java rename to src/main/java/com/mindee/v2/parsing/Job.java index 1080f5b6c..8d260e3fb 100644 --- a/src/main/java/com/mindee/parsing/v2/Job.java +++ b/src/main/java/com/mindee/v2/parsing/Job.java @@ -1,9 +1,9 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.mindee.parsing.common.LocalDateTimeDeserializer; +import com.mindee.v1.parsing.common.LocalDateTimeDeserializer; import java.time.LocalDateTime; import java.util.List; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/mindee/parsing/v2/JobResponse.java b/src/main/java/com/mindee/v2/parsing/JobResponse.java similarity index 93% rename from src/main/java/com/mindee/parsing/v2/JobResponse.java rename to src/main/java/com/mindee/v2/parsing/JobResponse.java index 0753d1cd3..1f99052d1 100644 --- a/src/main/java/com/mindee/parsing/v2/JobResponse.java +++ b/src/main/java/com/mindee/v2/parsing/JobResponse.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/JobWebhook.java b/src/main/java/com/mindee/v2/parsing/JobWebhook.java similarity index 91% rename from src/main/java/com/mindee/parsing/v2/JobWebhook.java rename to src/main/java/com/mindee/v2/parsing/JobWebhook.java index 1a892eb69..fd3af5489 100644 --- a/src/main/java/com/mindee/parsing/v2/JobWebhook.java +++ b/src/main/java/com/mindee/v2/parsing/JobWebhook.java @@ -1,9 +1,9 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.mindee.parsing.common.LocalDateTimeDeserializer; +import com.mindee.v1.parsing.common.LocalDateTimeDeserializer; import java.time.LocalDateTime; import lombok.AllArgsConstructor; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/mindee/parsing/v2/DataSchemaActiveOptions.java b/src/main/java/com/mindee/v2/parsing/inference/DataSchemaActiveOptions.java similarity index 95% rename from src/main/java/com/mindee/parsing/v2/DataSchemaActiveOptions.java rename to src/main/java/com/mindee/v2/parsing/inference/DataSchemaActiveOptions.java index 5d14c28f2..0b3898dde 100644 --- a/src/main/java/com/mindee/parsing/v2/DataSchemaActiveOptions.java +++ b/src/main/java/com/mindee/v2/parsing/inference/DataSchemaActiveOptions.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing.inference; import static com.mindee.parsing.SummaryHelper.formatForDisplay; diff --git a/src/main/java/com/mindee/parsing/v2/InferenceActiveOptions.java b/src/main/java/com/mindee/v2/parsing/inference/InferenceActiveOptions.java similarity index 97% rename from src/main/java/com/mindee/parsing/v2/InferenceActiveOptions.java rename to src/main/java/com/mindee/v2/parsing/inference/InferenceActiveOptions.java index 96fbc27b4..5ecbdc047 100644 --- a/src/main/java/com/mindee/parsing/v2/InferenceActiveOptions.java +++ b/src/main/java/com/mindee/v2/parsing/inference/InferenceActiveOptions.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing.inference; import static com.mindee.parsing.SummaryHelper.formatForDisplay; diff --git a/src/main/java/com/mindee/parsing/v2/InferenceFile.java b/src/main/java/com/mindee/v2/parsing/inference/InferenceFile.java similarity index 96% rename from src/main/java/com/mindee/parsing/v2/InferenceFile.java rename to src/main/java/com/mindee/v2/parsing/inference/InferenceFile.java index 4276b969a..f8c963601 100644 --- a/src/main/java/com/mindee/parsing/v2/InferenceFile.java +++ b/src/main/java/com/mindee/v2/parsing/inference/InferenceFile.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing.inference; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/InferenceJob.java b/src/main/java/com/mindee/v2/parsing/inference/InferenceJob.java similarity index 94% rename from src/main/java/com/mindee/parsing/v2/InferenceJob.java rename to src/main/java/com/mindee/v2/parsing/inference/InferenceJob.java index e5a60db44..69c499a4a 100644 --- a/src/main/java/com/mindee/parsing/v2/InferenceJob.java +++ b/src/main/java/com/mindee/v2/parsing/inference/InferenceJob.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing.inference; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/InferenceModel.java b/src/main/java/com/mindee/v2/parsing/inference/InferenceModel.java similarity index 94% rename from src/main/java/com/mindee/parsing/v2/InferenceModel.java rename to src/main/java/com/mindee/v2/parsing/inference/InferenceModel.java index bee0eb258..a7ccc9647 100644 --- a/src/main/java/com/mindee/parsing/v2/InferenceModel.java +++ b/src/main/java/com/mindee/v2/parsing/inference/InferenceModel.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing.inference; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/RagMetadata.java b/src/main/java/com/mindee/v2/parsing/inference/RagMetadata.java similarity index 92% rename from src/main/java/com/mindee/parsing/v2/RagMetadata.java rename to src/main/java/com/mindee/v2/parsing/inference/RagMetadata.java index afadb2e3e..3594cd57d 100644 --- a/src/main/java/com/mindee/parsing/v2/RagMetadata.java +++ b/src/main/java/com/mindee/v2/parsing/inference/RagMetadata.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing.inference; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/RawText.java b/src/main/java/com/mindee/v2/parsing/inference/RawText.java similarity index 95% rename from src/main/java/com/mindee/parsing/v2/RawText.java rename to src/main/java/com/mindee/v2/parsing/inference/RawText.java index e8df9ed97..ba3b8953a 100644 --- a/src/main/java/com/mindee/parsing/v2/RawText.java +++ b/src/main/java/com/mindee/v2/parsing/inference/RawText.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing.inference; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/RawTextPage.java b/src/main/java/com/mindee/v2/parsing/inference/RawTextPage.java similarity index 93% rename from src/main/java/com/mindee/parsing/v2/RawTextPage.java rename to src/main/java/com/mindee/v2/parsing/inference/RawTextPage.java index 072bd69fb..a14b2b222 100644 --- a/src/main/java/com/mindee/parsing/v2/RawTextPage.java +++ b/src/main/java/com/mindee/v2/parsing/inference/RawTextPage.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing.inference; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/field/BaseField.java b/src/main/java/com/mindee/v2/parsing/inference/field/BaseField.java similarity index 92% rename from src/main/java/com/mindee/parsing/v2/field/BaseField.java rename to src/main/java/com/mindee/v2/parsing/inference/field/BaseField.java index b7a16ea89..e95ea0be4 100644 --- a/src/main/java/com/mindee/parsing/v2/field/BaseField.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/BaseField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/field/DynamicField.java b/src/main/java/com/mindee/v2/parsing/inference/field/DynamicField.java similarity index 98% rename from src/main/java/com/mindee/parsing/v2/field/DynamicField.java rename to src/main/java/com/mindee/v2/parsing/inference/field/DynamicField.java index 5ca96bc81..c0966bf0c 100644 --- a/src/main/java/com/mindee/parsing/v2/field/DynamicField.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/DynamicField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; diff --git a/src/main/java/com/mindee/parsing/v2/field/DynamicFieldDeserializer.java b/src/main/java/com/mindee/v2/parsing/inference/field/DynamicFieldDeserializer.java similarity index 96% rename from src/main/java/com/mindee/parsing/v2/field/DynamicFieldDeserializer.java rename to src/main/java/com/mindee/v2/parsing/inference/field/DynamicFieldDeserializer.java index 9601c1af5..ddd8eb9d1 100644 --- a/src/main/java/com/mindee/parsing/v2/field/DynamicFieldDeserializer.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/DynamicFieldDeserializer.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.ObjectCodec; diff --git a/src/main/java/com/mindee/parsing/v2/field/FieldConfidence.java b/src/main/java/com/mindee/v2/parsing/inference/field/FieldConfidence.java similarity index 98% rename from src/main/java/com/mindee/parsing/v2/field/FieldConfidence.java rename to src/main/java/com/mindee/v2/parsing/inference/field/FieldConfidence.java index f0e6d7beb..d99ec58d9 100644 --- a/src/main/java/com/mindee/parsing/v2/field/FieldConfidence.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/FieldConfidence.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; diff --git a/src/main/java/com/mindee/parsing/v2/field/FieldLocation.java b/src/main/java/com/mindee/v2/parsing/inference/field/FieldLocation.java similarity index 85% rename from src/main/java/com/mindee/parsing/v2/field/FieldLocation.java rename to src/main/java/com/mindee/v2/parsing/inference/field/FieldLocation.java index f82c40888..73814e7b1 100644 --- a/src/main/java/com/mindee/parsing/v2/field/FieldLocation.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/FieldLocation.java @@ -1,10 +1,11 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.mindee.geometry.Polygon; import com.mindee.geometry.PolygonDeserializer; +import com.mindee.geometry.PositionDataField; import lombok.AllArgsConstructor; import lombok.EqualsAndHashCode; import lombok.Getter; @@ -18,7 +19,7 @@ @JsonIgnoreProperties(ignoreUnknown = true) @AllArgsConstructor @NoArgsConstructor -public class FieldLocation { +public class FieldLocation implements PositionDataField { /** * Free polygon made up of points. diff --git a/src/main/java/com/mindee/parsing/v2/field/InferenceFields.java b/src/main/java/com/mindee/v2/parsing/inference/field/InferenceFields.java similarity index 98% rename from src/main/java/com/mindee/parsing/v2/field/InferenceFields.java rename to src/main/java/com/mindee/v2/parsing/inference/field/InferenceFields.java index 49bfc508c..025e79d89 100644 --- a/src/main/java/com/mindee/parsing/v2/field/InferenceFields.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/InferenceFields.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.mindee.parsing.SummaryHelper; diff --git a/src/main/java/com/mindee/parsing/v2/field/ListField.java b/src/main/java/com/mindee/v2/parsing/inference/field/ListField.java similarity index 97% rename from src/main/java/com/mindee/parsing/v2/field/ListField.java rename to src/main/java/com/mindee/v2/parsing/inference/field/ListField.java index c64d92f76..e21030611 100644 --- a/src/main/java/com/mindee/parsing/v2/field/ListField.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/ListField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/field/ObjectField.java b/src/main/java/com/mindee/v2/parsing/inference/field/ObjectField.java similarity index 99% rename from src/main/java/com/mindee/parsing/v2/field/ObjectField.java rename to src/main/java/com/mindee/v2/parsing/inference/field/ObjectField.java index e3c2a12db..d9cf325b1 100644 --- a/src/main/java/com/mindee/parsing/v2/field/ObjectField.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/ObjectField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/src/main/java/com/mindee/parsing/v2/field/SimpleField.java b/src/main/java/com/mindee/v2/parsing/inference/field/SimpleField.java similarity index 98% rename from src/main/java/com/mindee/parsing/v2/field/SimpleField.java rename to src/main/java/com/mindee/v2/parsing/inference/field/SimpleField.java index 84c76c224..1f7d36847 100644 --- a/src/main/java/com/mindee/parsing/v2/field/SimpleField.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/SimpleField.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import static com.mindee.parsing.SummaryHelper.formatForDisplay; diff --git a/src/main/java/com/mindee/parsing/v2/field/SimpleFieldDeserializer.java b/src/main/java/com/mindee/v2/parsing/inference/field/SimpleFieldDeserializer.java similarity index 97% rename from src/main/java/com/mindee/parsing/v2/field/SimpleFieldDeserializer.java rename to src/main/java/com/mindee/v2/parsing/inference/field/SimpleFieldDeserializer.java index 9d2ae2db2..17bfdee62 100644 --- a/src/main/java/com/mindee/parsing/v2/field/SimpleFieldDeserializer.java +++ b/src/main/java/com/mindee/v2/parsing/inference/field/SimpleFieldDeserializer.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2.field; +package com.mindee.v2.parsing.inference.field; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.ObjectCodec; diff --git a/src/main/java/com/mindee/v2/product/classification/ClassificationResponse.java b/src/main/java/com/mindee/v2/product/classification/ClassificationResponse.java index e21c33ab5..eba19e4fd 100644 --- a/src/main/java/com/mindee/v2/product/classification/ClassificationResponse.java +++ b/src/main/java/com/mindee/v2/product/classification/ClassificationResponse.java @@ -2,8 +2,8 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.v2.CommonResponse; import com.mindee.v2.http.ProductInfo; +import com.mindee.v2.parsing.CommonResponse; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/v2/product/crop/CropItem.java b/src/main/java/com/mindee/v2/product/crop/CropItem.java index 1c8c1aa1c..4e998b486 100644 --- a/src/main/java/com/mindee/v2/product/crop/CropItem.java +++ b/src/main/java/com/mindee/v2/product/crop/CropItem.java @@ -2,7 +2,7 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.v2.field.FieldLocation; +import com.mindee.v2.parsing.inference.field.FieldLocation; import lombok.AllArgsConstructor; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/main/java/com/mindee/v2/product/crop/CropResponse.java b/src/main/java/com/mindee/v2/product/crop/CropResponse.java index 7d39b2cb9..0c7a34197 100644 --- a/src/main/java/com/mindee/v2/product/crop/CropResponse.java +++ b/src/main/java/com/mindee/v2/product/crop/CropResponse.java @@ -2,8 +2,8 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.v2.CommonResponse; import com.mindee.v2.http.ProductInfo; +import com.mindee.v2.parsing.CommonResponse; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/parsing/v2/Inference.java b/src/main/java/com/mindee/v2/product/extraction/ExtractionInference.java similarity index 81% rename from src/main/java/com/mindee/parsing/v2/Inference.java rename to src/main/java/com/mindee/v2/product/extraction/ExtractionInference.java index 6fecd35d9..7a04169a4 100644 --- a/src/main/java/com/mindee/parsing/v2/Inference.java +++ b/src/main/java/com/mindee/v2/product/extraction/ExtractionInference.java @@ -1,8 +1,9 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.product.extraction; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.mindee.v2.parsing.BaseInference; +import com.mindee.v2.parsing.inference.InferenceActiveOptions; import java.util.StringJoiner; import lombok.AllArgsConstructor; import lombok.Getter; @@ -15,7 +16,7 @@ @JsonIgnoreProperties(ignoreUnknown = true) @AllArgsConstructor @NoArgsConstructor -public class Inference extends BaseInference { +public class ExtractionInference extends BaseInference { /** * Active options for the inference. */ diff --git a/src/main/java/com/mindee/parsing/v2/InferenceResponse.java b/src/main/java/com/mindee/v2/product/extraction/ExtractionResponse.java similarity index 67% rename from src/main/java/com/mindee/parsing/v2/InferenceResponse.java rename to src/main/java/com/mindee/v2/product/extraction/ExtractionResponse.java index a68de9a4a..a736035fb 100644 --- a/src/main/java/com/mindee/parsing/v2/InferenceResponse.java +++ b/src/main/java/com/mindee/v2/product/extraction/ExtractionResponse.java @@ -1,8 +1,9 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.product.extraction; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.mindee.v2.http.ProductInfo; +import com.mindee.v2.parsing.CommonResponse; import lombok.Getter; /** @@ -11,11 +12,11 @@ @Getter @JsonIgnoreProperties(ignoreUnknown = true) @ProductInfo(slug = "extraction") -public class InferenceResponse extends CommonResponse { +public class ExtractionResponse extends CommonResponse { /** * Inference result. */ @JsonProperty("inference") - private Inference inference; + private ExtractionInference inference; } diff --git a/src/main/java/com/mindee/parsing/v2/InferenceResult.java b/src/main/java/com/mindee/v2/product/extraction/ExtractionResult.java similarity index 81% rename from src/main/java/com/mindee/parsing/v2/InferenceResult.java rename to src/main/java/com/mindee/v2/product/extraction/ExtractionResult.java index c47331cf8..d0709eb70 100644 --- a/src/main/java/com/mindee/parsing/v2/InferenceResult.java +++ b/src/main/java/com/mindee/v2/product/extraction/ExtractionResult.java @@ -1,8 +1,10 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.product.extraction; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.v2.field.InferenceFields; +import com.mindee.v2.parsing.inference.RagMetadata; +import com.mindee.v2.parsing.inference.RawText; +import com.mindee.v2.parsing.inference.field.InferenceFields; import java.util.StringJoiner; import lombok.AllArgsConstructor; import lombok.EqualsAndHashCode; @@ -17,7 +19,7 @@ @JsonIgnoreProperties(ignoreUnknown = true) @AllArgsConstructor @NoArgsConstructor -public final class InferenceResult { +public final class ExtractionResult { /** * Extracted fields, the key corresponds to the field's name in the data schema. diff --git a/src/main/java/com/mindee/InferenceParameters.java b/src/main/java/com/mindee/v2/product/extraction/params/ExtractionParameters.java similarity index 91% rename from src/main/java/com/mindee/InferenceParameters.java rename to src/main/java/com/mindee/v2/product/extraction/params/ExtractionParameters.java index 285bda60e..077d8f73c 100644 --- a/src/main/java/com/mindee/InferenceParameters.java +++ b/src/main/java/com/mindee/v2/product/extraction/params/ExtractionParameters.java @@ -1,5 +1,6 @@ -package com.mindee; +package com.mindee.v2.product.extraction.params; +import com.mindee.AsyncPollingOptions; import com.mindee.v2.clientOptions.BaseParameters; import com.mindee.v2.http.ProductInfo; import lombok.EqualsAndHashCode; @@ -12,7 +13,7 @@ @Getter @EqualsAndHashCode(callSuper = true) @ProductInfo(slug = "extraction") -public final class InferenceParameters extends BaseParameters { +public final class ExtractionParameters extends BaseParameters { /** * Enhance extraction accuracy with Retrieval-Augmented Generation. */ @@ -40,7 +41,7 @@ public final class InferenceParameters extends BaseParameters { */ private final String dataSchema; - private InferenceParameters( + private ExtractionParameters( String modelId, String alias, String[] webhookIds, @@ -95,7 +96,7 @@ public static Builder builder(String modelId) { } /** - * Fluent builder for {@link InferenceParameters}. + * Fluent builder for {@link ExtractionParameters}. */ public static final class Builder extends BaseParameters.BaseBuilder { private Boolean rag = null; @@ -148,9 +149,9 @@ public Builder dataSchema(String dataSchema) { return this; } - /** Build an immutable {@link InferenceParameters} instance. */ - public InferenceParameters build() { - return new InferenceParameters( + /** Build an immutable {@link ExtractionParameters} instance. */ + public ExtractionParameters build() { + return new ExtractionParameters( modelId, alias, webhookIds, diff --git a/src/main/java/com/mindee/v2/product/ocr/OcrResponse.java b/src/main/java/com/mindee/v2/product/ocr/OcrResponse.java index 36dc333a6..d5dfea6fc 100644 --- a/src/main/java/com/mindee/v2/product/ocr/OcrResponse.java +++ b/src/main/java/com/mindee/v2/product/ocr/OcrResponse.java @@ -2,8 +2,8 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.v2.CommonResponse; import com.mindee.v2.http.ProductInfo; +import com.mindee.v2.parsing.CommonResponse; import lombok.Getter; /** diff --git a/src/main/java/com/mindee/v2/product/split/SplitResponse.java b/src/main/java/com/mindee/v2/product/split/SplitResponse.java index 248612323..504ede8c7 100644 --- a/src/main/java/com/mindee/v2/product/split/SplitResponse.java +++ b/src/main/java/com/mindee/v2/product/split/SplitResponse.java @@ -2,8 +2,8 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mindee.parsing.v2.CommonResponse; import com.mindee.v2.http.ProductInfo; +import com.mindee.v2.parsing.CommonResponse; import lombok.Getter; /** diff --git a/src/test/java/com/mindee/geometry/PolygonUtilsTest.java b/src/test/java/com/mindee/geometry/PolygonUtilsTest.java index 6829c962b..4b489569e 100644 --- a/src/test/java/com/mindee/geometry/PolygonUtilsTest.java +++ b/src/test/java/com/mindee/geometry/PolygonUtilsTest.java @@ -9,56 +9,36 @@ public class PolygonUtilsTest { @Test public void givenAValidPolygonMustGetTheValidCentroid() { - // given - Polygon polygonWichIsNotRectangle = PolygonSample.getPolygonAsRectangle(); - - // then - Point centroid = polygonWichIsNotRectangle.getCentroid(); - + Polygon nonRectangularPolygon = PolygonSample.getPolygonAsRectangle(); + Point centroid = nonRectangularPolygon.getCentroid(); Assertions.assertEquals(new Point(0.149, 0.538), centroid); } @Test public void givenAValidPolygonMustGetTheMaxX() { - // given - Polygon polygonWichIsNotRectangle = PolygonSample.getPolygonAsRectangle(); - - // then - Double maxX = PolygonUtils.getMaxXCoordinate(polygonWichIsNotRectangle); - + Polygon nonRectangularPolygon = PolygonSample.getPolygonAsRectangle(); + Double maxX = nonRectangularPolygon.getMinMaxX().getMax(); Assertions.assertEquals(0.175, maxX); } @Test public void givenAValidPolygonMustGetTheMinX() { - // given - Polygon polygonWichIsNotRectangle = PolygonSample.getPolygonAsRectangle(); - - // then - Double minX = PolygonUtils.getMinXCoordinate(polygonWichIsNotRectangle); - + Polygon nonRectangularPolygon = PolygonSample.getPolygonAsRectangle(); + Double minX = nonRectangularPolygon.getMinMaxX().getMin(); Assertions.assertEquals(0.123, minX); } @Test public void givenAValidPolygonMustGetTheMaxY() { - // given - Polygon polygonWichIsNotRectangle = PolygonSample.getPolygonAsRectangle(); - - // then - Double maxY = PolygonUtils.getMaxYCoordinate(polygonWichIsNotRectangle); - + Polygon nonRectangularPolygon = PolygonSample.getPolygonAsRectangle(); + Double maxY = nonRectangularPolygon.getMinMaxY().getMax(); Assertions.assertEquals(0.546, maxY); } @Test public void givenAValidPolygonMustGetTheMinY() { - // given - Polygon polygonWichIsNotRectangle = PolygonSample.getPolygonAsRectangle(); - - // then - Double minY = PolygonUtils.getMinYCoordinate(polygonWichIsNotRectangle); - + Polygon nonRectangularPolygon = PolygonSample.getPolygonAsRectangle(); + Double minY = nonRectangularPolygon.getMinMaxY().getMin(); Assertions.assertEquals(0.53, minY); } @@ -86,12 +66,12 @@ public void combinePolygonsWithTwoNotNullMustGetAValidPolygon() { ); // then - Polygon mergedPolygon = PolygonUtils.combine(polygon1, polygon2); + Polygon mergedPolygon = polygon1.combine(polygon2); - Assertions.assertEquals(0.442, PolygonUtils.getMinYCoordinate(mergedPolygon)); - Assertions.assertEquals(0.081, PolygonUtils.getMinXCoordinate(mergedPolygon)); - Assertions.assertEquals(0.451, PolygonUtils.getMaxYCoordinate(mergedPolygon)); - Assertions.assertEquals(0.26, PolygonUtils.getMaxXCoordinate(mergedPolygon)); + Assertions.assertEquals(0.081, mergedPolygon.getMinMaxX().getMin()); + Assertions.assertEquals(0.26, mergedPolygon.getMinMaxX().getMax()); + Assertions.assertEquals(0.442, mergedPolygon.getMinMaxY().getMin()); + Assertions.assertEquals(0.451, mergedPolygon.getMinMaxY().getMax()); } @Test @@ -99,12 +79,10 @@ public void combineWithNullPolygonMustThrow() { assertThrows(IllegalStateException.class, () -> { Polygon polygon = PolygonUtils.combine(null, null); }); - } @Test public void combineWith1PolygonAndANullPolygonMustGetNull() { - // given Polygon polygon1 = new Polygon( Arrays .asList( @@ -115,15 +93,12 @@ public void combineWith1PolygonAndANullPolygonMustGetNull() { ) ); - Polygon polygon2 = null; - - // then - Polygon mergedPolygon = PolygonUtils.combine(polygon1, polygon2); + Polygon mergedPolygon = polygon1.combine(null); - Assertions.assertEquals(0.442, PolygonUtils.getMinYCoordinate(mergedPolygon)); - Assertions.assertEquals(0.081, PolygonUtils.getMinXCoordinate(mergedPolygon)); - Assertions.assertEquals(0.451, PolygonUtils.getMaxYCoordinate(mergedPolygon)); - Assertions.assertEquals(0.15, PolygonUtils.getMaxXCoordinate(mergedPolygon)); + Assertions.assertEquals(0.081, mergedPolygon.getMinMaxX().getMin()); + Assertions.assertEquals(0.15, mergedPolygon.getMinMaxX().getMax()); + Assertions.assertEquals(0.442, mergedPolygon.getMinMaxY().getMin()); + Assertions.assertEquals(0.451, mergedPolygon.getMinMaxY().getMax()); } } diff --git a/src/test/java/com/mindee/http/MindeeHttpApiTest.java b/src/test/java/com/mindee/http/MindeeHttpApiV1Test.java similarity index 88% rename from src/test/java/com/mindee/http/MindeeHttpApiTest.java rename to src/test/java/com/mindee/http/MindeeHttpApiV1Test.java index e933d50e2..036545bcd 100644 --- a/src/test/java/com/mindee/http/MindeeHttpApiTest.java +++ b/src/test/java/com/mindee/http/MindeeHttpApiV1Test.java @@ -13,13 +13,17 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import com.github.tomakehurst.wiremock.junit.WireMockRule; -import com.mindee.MindeeSettings; -import com.mindee.PredictOptions; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.invoice.InvoiceV4; -import com.mindee.product.invoicesplitter.InvoiceSplitterV1; +import com.mindee.v1.MindeeSettings; +import com.mindee.v1.clientOptions.PredictOptions; +import com.mindee.v1.http.Endpoint; +import com.mindee.v1.http.MindeeHttpApiV1; +import com.mindee.v1.http.MindeeHttpExceptionV1; +import com.mindee.v1.http.RequestParameters; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.invoice.InvoiceV4; +import com.mindee.v1.product.invoicesplitter.InvoiceSplitterV1; import java.io.File; import java.io.IOException; import java.net.URL; @@ -42,7 +46,7 @@ import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -public class MindeeHttpApiTest { +public class MindeeHttpApiV1Test { MockWebServer mockWebServer = new MockWebServer(); private static final ObjectMapper objectMapper = new ObjectMapper(); @@ -57,7 +61,7 @@ public void stopWebServer() throws Exception { mockWebServer.shutdown(); } - private MindeeHttpApi getClientForResponse(Path filePath, int statusCode) throws IOException { + private MindeeHttpApiV1 getClientForResponse(Path filePath, int statusCode) throws IOException { String url = String.format("http://localhost:%s", mockWebServer.getPort()); mockWebServer .enqueue( @@ -67,20 +71,23 @@ private MindeeHttpApi getClientForResponse(Path filePath, int statusCode) throws ); HttpClientBuilder httpClientBuilder = HttpClients.custom().disableAutomaticRetries(); - return MindeeHttpApi + return MindeeHttpApiV1 .builder() .mindeeSettings(new MindeeSettings("abc", url)) .httpClientBuilder(httpClientBuilder) .build(); } - private MindeeHttpApi getClientForResponse(String filePath, int statusCode) throws IOException { + private MindeeHttpApiV1 getClientForResponse(String filePath, int statusCode) throws IOException { return getClientForResponse(getV1ResourcePath(filePath), statusCode); } @Test void givenAResponseFromTheEndpoint_whenDeserialized_mustHaveValidSummary() throws IOException { - MindeeHttpApi client = getClientForResponse("products/invoices/response_v4/complete.json", 200); + MindeeHttpApiV1 client = getClientForResponse( + "products/invoices/response_v4/complete.json", + 200 + ); Path filePath = getV1ResourcePath("products/invoices/invoice.pdf"); @@ -110,7 +117,10 @@ void givenAResponseFromTheEndpoint_whenDeserialized_mustHaveValidSummary() throw @Test void givenParseParametersWithFile_whenParsed_shouldBuildRequestCorrectly() throws IOException, InterruptedException { - MindeeHttpApi client = getClientForResponse("products/invoices/response_v4/complete.json", 200); + MindeeHttpApiV1 client = getClientForResponse( + "products/invoices/response_v4/complete.json", + 200 + ); Path filePath = getV1ResourcePath("products/invoices/invoice.pdf"); byte[] fileBytes = Files.readAllBytes(filePath); Document document = client @@ -137,7 +147,10 @@ void givenParseParametersWithFile_whenParsed_shouldBuildRequestCorrectly() throw @Test void givenPredictOptions_whenParsed_shouldBuildRequestCorrectly() throws IOException, InterruptedException { - MindeeHttpApi client = getClientForResponse("products/invoices/response_v4/complete.json", 200); + MindeeHttpApiV1 client = getClientForResponse( + "products/invoices/response_v4/complete.json", + 200 + ); Path filePath = getV1ResourcePath("products/invoices/invoice.pdf"); byte[] fileBytes = Files.readAllBytes(filePath); PredictOptions predictOptions = PredictOptions.builder().cropper(true).allWords(true).build(); @@ -169,7 +182,10 @@ void givenPredictOptions_whenParsed_shouldBuildRequestCorrectly() throws IOExcep @Test void givenParseParametersWithFileUrl_whenParsed_shouldBuildRequestCorrectly() throws IOException, InterruptedException { - MindeeHttpApi client = getClientForResponse("products/invoices/response_v4/complete.json", 200); + MindeeHttpApiV1 client = getClientForResponse( + "products/invoices/response_v4/complete.json", + 200 + ); Document document = client .predictPost( @@ -216,7 +232,7 @@ void givenAnUrlBuilderFunction_whenParsed_callsTheCorrectUrl() throws IOExceptio HttpClientBuilder httpClientBuilder = HttpClients.custom().disableAutomaticRetries(); - MindeeHttpApi client = MindeeHttpApi + MindeeHttpApiV1 client = MindeeHttpApiV1 .builder() .mindeeSettings(new MindeeSettings("abc", url)) .httpClientBuilder(httpClientBuilder) @@ -272,7 +288,7 @@ void givenAHttpClientBuilder_whenParseCalled_usesClientBuilderToMakeHttpClient() .setRoutePlanner(routePlanner) .disableAutomaticRetries(); - MindeeHttpApi client = MindeeHttpApi + MindeeHttpApiV1 client = MindeeHttpApiV1 .builder() .mindeeSettings(new MindeeSettings("abc", url)) .httpClientBuilder(httpClientBuilder) @@ -311,7 +327,7 @@ void givenAHttpClientBuilder_whenParseCalled_usesClientBuilderToMakeHttpClient() @Test void givenAnAsncResponse_whenDeserialized_mustHaveValidJob() throws IOException, InterruptedException { Path path = getV1ResourcePath("async/post_success.json"); - MindeeHttpApi client = getClientForResponse(path, 200); + MindeeHttpApiV1 client = getClientForResponse(path, 200); File file = new File(getV1ResourcePathString("products/invoices/invoice.pdf")); AsyncPredictResponse response = client @@ -342,7 +358,7 @@ void givenAnAsncResponse_whenDeserialized_mustHaveValidJob() throws IOException, @Test void givenAResponseFromTheJobEndpoint_whenDeserialized_mustHaveValidJobAndDocument() throws IOException, InterruptedException { Path path = getV1ResourcePath("async/get_completed.json"); - MindeeHttpApi client = getClientForResponse(path, 200); + MindeeHttpApiV1 client = getClientForResponse(path, 200); AsyncPredictResponse response = client .documentQueueGet( @@ -370,7 +386,7 @@ void givenAResponseFromTheJobEndpoint_whenDeserialized_mustHaveValidJobAndDocume @Test void givenError401_noToken_mustThrowMindeeHttpException() throws IOException { - MindeeHttpApi client = getClientForResponse("errors/error_401_no_token.json", 401); + MindeeHttpApiV1 client = getClientForResponse("errors/error_401_no_token.json", 401); File file = new File(getV1ResourcePathString("products/invoices/invoice.pdf")); byte[] fileInBytes = Files.readAllBytes(file.toPath()); @@ -380,9 +396,9 @@ void givenError401_noToken_mustThrowMindeeHttpException() throws IOException { .fileName(file.getName()) .build(); - MindeeHttpException httpError = Assertions + MindeeHttpExceptionV1 httpError = Assertions .assertThrows( - MindeeHttpException.class, + MindeeHttpExceptionV1.class, () -> client.predictPost(InvoiceV4.class, new Endpoint(InvoiceV4.class), parseParameter) ); Assertions.assertEquals(401, httpError.getStatusCode()); @@ -392,7 +408,7 @@ void givenError401_noToken_mustThrowMindeeHttpException() throws IOException { @Test void givenError429_mustThrowMindeeHttpException() throws IOException { - MindeeHttpApi client = getClientForResponse("errors/error_429_too_many_requests.json", 429); + MindeeHttpApiV1 client = getClientForResponse("errors/error_429_too_many_requests.json", 429); File file = new File(getV1ResourcePathString("products/invoices/invoice.pdf")); byte[] fileInBytes = Files.readAllBytes(file.toPath()); @@ -402,9 +418,9 @@ void givenError429_mustThrowMindeeHttpException() throws IOException { .fileName(file.getName()) .build(); - MindeeHttpException httpError = Assertions + MindeeHttpExceptionV1 httpError = Assertions .assertThrows( - MindeeHttpException.class, + MindeeHttpExceptionV1.class, () -> client.predictPost(InvoiceV4.class, new Endpoint(InvoiceV4.class), parseParameter) ); Assertions.assertEquals(429, httpError.getStatusCode()); @@ -415,7 +431,7 @@ void givenError429_mustThrowMindeeHttpException() throws IOException { @Test void givenError_inHtml_mustThrowMindeeHttpException() throws IOException { - MindeeHttpApi client = getClientForResponse("errors/error_50x.html", 413); + MindeeHttpApiV1 client = getClientForResponse("errors/error_50x.html", 413); Path filePath = getV1ResourcePath("products/invoices/invoice.pdf"); byte[] fileBytes = Files.readAllBytes(filePath); @@ -425,9 +441,9 @@ void givenError_inHtml_mustThrowMindeeHttpException() throws IOException { .fileName(filePath.getFileName().toString()) .build(); - MindeeHttpException httpError = Assertions + MindeeHttpExceptionV1 httpError = Assertions .assertThrows( - MindeeHttpException.class, + MindeeHttpExceptionV1.class, () -> client.predictPost(InvoiceV4.class, new Endpoint(InvoiceV4.class), parseParameter) ); Assertions.assertEquals(413, httpError.getStatusCode()); @@ -442,7 +458,7 @@ void givenError_inHtml_mustThrowMindeeHttpException() throws IOException { @Test void givenError400_noDetails_mustThrowMindeeHttpException() throws IOException { - MindeeHttpApi client = getClientForResponse("errors/error_400_no_details.json", 400); + MindeeHttpApiV1 client = getClientForResponse("errors/error_400_no_details.json", 400); Path filePath = getV1ResourcePath("products/invoices/invoice.pdf"); byte[] fileBytes = Files.readAllBytes(filePath); @@ -452,9 +468,9 @@ void givenError400_noDetails_mustThrowMindeeHttpException() throws IOException { .fileName(filePath.getFileName().toString()) .build(); - MindeeHttpException httpError = Assertions + MindeeHttpExceptionV1 httpError = Assertions .assertThrows( - MindeeHttpException.class, + MindeeHttpExceptionV1.class, () -> client.predictPost(InvoiceV4.class, new Endpoint(InvoiceV4.class), parseParameter) ); Assertions.assertEquals(400, httpError.getStatusCode()); diff --git a/src/test/java/com/mindee/extraction/ImageExtractorTest.java b/src/test/java/com/mindee/image/ImageExtractorTest.java similarity index 93% rename from src/test/java/com/mindee/extraction/ImageExtractorTest.java rename to src/test/java/com/mindee/image/ImageExtractorTest.java index d5798c265..cff2fa79f 100644 --- a/src/test/java/com/mindee/extraction/ImageExtractorTest.java +++ b/src/test/java/com/mindee/image/ImageExtractorTest.java @@ -1,4 +1,4 @@ -package com.mindee.extraction; +package com.mindee.image; import static com.mindee.TestingUtilities.getResourcePath; import static com.mindee.TestingUtilities.getV1ResourcePath; @@ -7,12 +7,12 @@ import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.Page; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.barcodereader.BarcodeReaderV1; -import com.mindee.product.barcodereader.BarcodeReaderV1Document; -import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1; -import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1Document; +import com.mindee.v1.parsing.common.Page; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.barcodereader.BarcodeReaderV1; +import com.mindee.v1.product.barcodereader.BarcodeReaderV1Document; +import com.mindee.v1.product.multireceiptsdetector.MultiReceiptsDetectorV1; +import com.mindee.v1.product.multireceiptsdetector.MultiReceiptsDetectorV1Document; import java.io.IOException; import java.util.List; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/input/LocalResponseV2Test.java b/src/test/java/com/mindee/input/LocalResponseV2Test.java index d7066df9d..5213d31aa 100644 --- a/src/test/java/com/mindee/input/LocalResponseV2Test.java +++ b/src/test/java/com/mindee/input/LocalResponseV2Test.java @@ -2,7 +2,7 @@ import static com.mindee.TestingUtilities.getV2ResourcePath; -import com.mindee.parsing.v2.InferenceResponse; +import com.mindee.v2.product.extraction.ExtractionResponse; import java.io.File; import java.io.IOException; import java.nio.file.Files; @@ -34,7 +34,7 @@ protected void assertLocalResponse(LocalResponse localResponse) { ); Assertions.assertEquals(this.signature, localResponse.getHmacSignature(this.secretKey)); Assertions.assertTrue(localResponse.isValidHmacSignature(this.secretKey, this.signature)); - InferenceResponse response = localResponse.deserializeResponse(InferenceResponse.class); + ExtractionResponse response = localResponse.deserializeResponse(ExtractionResponse.class); Assertions.assertNotNull(response); Assertions.assertNotNull(response.getInference()); } diff --git a/src/test/java/com/mindee/input/URLInputSourceIT.java b/src/test/java/com/mindee/input/URLInputSourceIT.java index 44bd772e1..577ae483a 100644 --- a/src/test/java/com/mindee/input/URLInputSourceIT.java +++ b/src/test/java/com/mindee/input/URLInputSourceIT.java @@ -3,9 +3,9 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; -import com.mindee.MindeeClient; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.invoice.InvoiceV4; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.invoice.InvoiceV4; import java.io.IOException; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; diff --git a/src/test/java/com/mindee/extraction/PDFExtractorTest.java b/src/test/java/com/mindee/pdf/PDFExtractorTest.java similarity index 95% rename from src/test/java/com/mindee/extraction/PDFExtractorTest.java rename to src/test/java/com/mindee/pdf/PDFExtractorTest.java index bfdaaaf8c..aa4810349 100644 --- a/src/test/java/com/mindee/extraction/PDFExtractorTest.java +++ b/src/test/java/com/mindee/pdf/PDFExtractorTest.java @@ -1,12 +1,12 @@ -package com.mindee.extraction; +package com.mindee.pdf; import static com.mindee.TestingUtilities.getV1ResourcePath; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.invoicesplitter.InvoiceSplitterV1; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.invoicesplitter.InvoiceSplitterV1; import java.io.IOException; import java.util.List; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/MindeeClientTest.java b/src/test/java/com/mindee/v1/MindeeClientTest.java similarity index 95% rename from src/test/java/com/mindee/MindeeClientTest.java rename to src/test/java/com/mindee/v1/MindeeClientTest.java index 7ec009b5c..0136fb7fc 100644 --- a/src/test/java/com/mindee/MindeeClientTest.java +++ b/src/test/java/com/mindee/v1/MindeeClientTest.java @@ -1,25 +1,26 @@ -package com.mindee; +package com.mindee.v1; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getResourcePath; import static com.mindee.TestingUtilities.getV1ResourcePathString; -import com.mindee.http.Endpoint; -import com.mindee.http.MindeeApi; -import com.mindee.http.RequestParameters; import com.mindee.input.LocalInputSource; import com.mindee.input.LocalResponse; import com.mindee.input.PageOptions; import com.mindee.input.PageOptionsOperation; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.Job; -import com.mindee.parsing.common.PredictResponse; import com.mindee.pdf.PdfOperation; import com.mindee.pdf.SplitPdf; -import com.mindee.product.generated.GeneratedV1; -import com.mindee.product.internationalid.InternationalIdV2; -import com.mindee.product.invoice.InvoiceV4; +import com.mindee.v1.clientOptions.PredictOptions; +import com.mindee.v1.http.Endpoint; +import com.mindee.v1.http.MindeeApiV1; +import com.mindee.v1.http.RequestParameters; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.Job; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.generated.GeneratedV1; +import com.mindee.v1.product.internationalid.InternationalIdV2; +import com.mindee.v1.product.invoice.InvoiceV4; import java.io.File; import java.io.IOException; import java.net.URL; @@ -39,12 +40,12 @@ class MindeeClientTest { MindeeClient client; - MindeeApi mindeeApi; + MindeeApiV1 mindeeApi; PdfOperation pdfOperation; @BeforeEach public void setUp() { - mindeeApi = Mockito.mock(MindeeApi.class); + mindeeApi = Mockito.mock(MindeeApiV1.class); pdfOperation = Mockito.mock(PdfOperation.class); client = new MindeeClient(pdfOperation, mindeeApi); } diff --git a/src/test/java/com/mindee/MindeeSettingsTest.java b/src/test/java/com/mindee/v1/MindeeSettingsTest.java similarity index 96% rename from src/test/java/com/mindee/MindeeSettingsTest.java rename to src/test/java/com/mindee/v1/MindeeSettingsTest.java index 46f76d69d..80e81df9c 100644 --- a/src/test/java/com/mindee/MindeeSettingsTest.java +++ b/src/test/java/com/mindee/v1/MindeeSettingsTest.java @@ -1,4 +1,4 @@ -package com.mindee; +package com.mindee.v1; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; diff --git a/src/test/java/com/mindee/extraction/InvoiceSplitterAutoExtractionIT.java b/src/test/java/com/mindee/v1/fileOperation/InvoiceSplitterAutoExtractionIT.java similarity index 90% rename from src/test/java/com/mindee/extraction/InvoiceSplitterAutoExtractionIT.java rename to src/test/java/com/mindee/v1/fileOperation/InvoiceSplitterAutoExtractionIT.java index e4d80c16b..982efc911 100644 --- a/src/test/java/com/mindee/extraction/InvoiceSplitterAutoExtractionIT.java +++ b/src/test/java/com/mindee/v1/fileOperation/InvoiceSplitterAutoExtractionIT.java @@ -1,17 +1,19 @@ -package com.mindee.extraction; +package com.mindee.v1.fileOperation; import static com.mindee.TestingUtilities.getV1ResourcePath; import static com.mindee.TestingUtilities.levenshteinRatio; -import com.mindee.MindeeClient; import com.mindee.MindeeException; import com.mindee.TestingUtilities; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.product.invoice.InvoiceV4; -import com.mindee.product.invoicesplitter.InvoiceSplitterV1; +import com.mindee.pdf.ExtractedPDF; +import com.mindee.pdf.PDFExtractor; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.product.invoice.InvoiceV4; +import com.mindee.v1.product.invoicesplitter.InvoiceSplitterV1; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; diff --git a/src/test/java/com/mindee/parsing/common/AsyncPredictResponseTest.java b/src/test/java/com/mindee/v1/parsing/common/AsyncPredictResponseTest.java similarity index 97% rename from src/test/java/com/mindee/parsing/common/AsyncPredictResponseTest.java rename to src/test/java/com/mindee/v1/parsing/common/AsyncPredictResponseTest.java index 83d1e5701..df3b20c96 100644 --- a/src/test/java/com/mindee/parsing/common/AsyncPredictResponseTest.java +++ b/src/test/java/com/mindee/v1/parsing/common/AsyncPredictResponseTest.java @@ -1,11 +1,11 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import static com.mindee.TestingUtilities.getV1ResourcePath; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.product.invoicesplitter.InvoiceSplitterV1; +import com.mindee.v1.product.invoicesplitter.InvoiceSplitterV1; import java.io.IOException; import java.nio.file.Path; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/parsing/common/CropperTest.java b/src/test/java/com/mindee/v1/parsing/common/CropperTest.java similarity index 85% rename from src/test/java/com/mindee/parsing/common/CropperTest.java rename to src/test/java/com/mindee/v1/parsing/common/CropperTest.java index 48a553bf4..ddfe4f592 100644 --- a/src/test/java/com/mindee/parsing/common/CropperTest.java +++ b/src/test/java/com/mindee/v1/parsing/common/CropperTest.java @@ -1,12 +1,12 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import static com.mindee.TestingUtilities.getV1ResourcePath; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.standard.PositionField; -import com.mindee.product.receipt.ReceiptV5; -import com.mindee.product.receipt.ReceiptV5Document; +import com.mindee.v1.parsing.standard.PositionField; +import com.mindee.v1.product.receipt.ReceiptV5; +import com.mindee.v1.product.receipt.ReceiptV5Document; import java.io.IOException; import java.util.List; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/parsing/common/ErrorTest.java b/src/test/java/com/mindee/v1/parsing/common/ErrorTest.java similarity index 85% rename from src/test/java/com/mindee/parsing/common/ErrorTest.java rename to src/test/java/com/mindee/v1/parsing/common/ErrorTest.java index 16915947e..b4cd1ccbd 100644 --- a/src/test/java/com/mindee/parsing/common/ErrorTest.java +++ b/src/test/java/com/mindee/v1/parsing/common/ErrorTest.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import static com.mindee.TestingUtilities.getV1ResourcePath; @@ -15,10 +15,10 @@ void given_details_as_object_mustBeDeserialized() throws IOException { ObjectMapper objectMapper = new ObjectMapper(); objectMapper.findAndRegisterModules(); - Error error = objectMapper + com.mindee.v1.parsing.common.Error error = objectMapper .readValue( getV1ResourcePath("errors/with_object_response_in_detail.json").toFile(), - Error.class + com.mindee.v1.parsing.common.Error.class ); Assertions.assertNotNull(error); @@ -32,7 +32,7 @@ void given_details_as_string_mustBeDeserialized() throws IOException { ObjectMapper objectMapper = new ObjectMapper(); objectMapper.findAndRegisterModules(); - Error error = objectMapper + com.mindee.v1.parsing.common.Error error = objectMapper .readValue( getV1ResourcePath("errors/with_string_response_in_detail.json").toFile(), Error.class diff --git a/src/test/java/com/mindee/parsing/common/FullTextOcrTest.java b/src/test/java/com/mindee/v1/parsing/common/FullTextOcrTest.java similarity index 92% rename from src/test/java/com/mindee/parsing/common/FullTextOcrTest.java rename to src/test/java/com/mindee/v1/parsing/common/FullTextOcrTest.java index cf8d1f24e..227811733 100644 --- a/src/test/java/com/mindee/parsing/common/FullTextOcrTest.java +++ b/src/test/java/com/mindee/v1/parsing/common/FullTextOcrTest.java @@ -1,11 +1,11 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import static com.mindee.TestingUtilities.getV1ResourcePath; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.product.internationalid.InternationalIdV2; -import com.mindee.product.internationalid.InternationalIdV2Document; +import com.mindee.v1.product.internationalid.InternationalIdV2; +import com.mindee.v1.product.internationalid.InternationalIdV2Document; import java.io.IOException; import java.nio.file.Files; import java.util.List; diff --git a/src/test/java/com/mindee/parsing/common/OcrTest.java b/src/test/java/com/mindee/v1/parsing/common/OcrTest.java similarity index 91% rename from src/test/java/com/mindee/parsing/common/OcrTest.java rename to src/test/java/com/mindee/v1/parsing/common/OcrTest.java index ea21a0e90..cc31a58b5 100644 --- a/src/test/java/com/mindee/parsing/common/OcrTest.java +++ b/src/test/java/com/mindee/v1/parsing/common/OcrTest.java @@ -1,12 +1,12 @@ -package com.mindee.parsing.common; +package com.mindee.v1.parsing.common; import static com.mindee.TestingUtilities.getV1ResourcePath; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.ocr.Ocr; -import com.mindee.parsing.common.ocr.Word; -import com.mindee.product.receipt.ReceiptV5; +import com.mindee.v1.parsing.common.ocr.Ocr; +import com.mindee.v1.parsing.common.ocr.Word; +import com.mindee.v1.product.receipt.ReceiptV5; import java.io.IOException; import java.nio.file.Files; import java.util.List; diff --git a/src/test/java/com/mindee/parsing/standard/DateFieldTest.java b/src/test/java/com/mindee/v1/parsing/standard/DateFieldTest.java similarity index 94% rename from src/test/java/com/mindee/parsing/standard/DateFieldTest.java rename to src/test/java/com/mindee/v1/parsing/standard/DateFieldTest.java index ec2667a84..1389ea0d6 100644 --- a/src/test/java/com/mindee/parsing/standard/DateFieldTest.java +++ b/src/test/java/com/mindee/v1/parsing/standard/DateFieldTest.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.standard; +package com.mindee.v1.parsing.standard; import com.mindee.geometry.Point; import com.mindee.geometry.Polygon; diff --git a/src/test/java/com/mindee/product/barcodereader/BarcodeReaderV1Test.java b/src/test/java/com/mindee/v1/product/barcodereader/BarcodeReaderV1Test.java similarity index 92% rename from src/test/java/com/mindee/product/barcodereader/BarcodeReaderV1Test.java rename to src/test/java/com/mindee/v1/product/barcodereader/BarcodeReaderV1Test.java index 794481672..d92f10193 100644 --- a/src/test/java/com/mindee/product/barcodereader/BarcodeReaderV1Test.java +++ b/src/test/java/com/mindee/v1/product/barcodereader/BarcodeReaderV1Test.java @@ -1,12 +1,12 @@ -package com.mindee.product.barcodereader; +package com.mindee.v1.product.barcodereader; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/cropper/CropperV1Test.java b/src/test/java/com/mindee/v1/product/cropper/CropperV1Test.java similarity index 91% rename from src/test/java/com/mindee/product/cropper/CropperV1Test.java rename to src/test/java/com/mindee/v1/product/cropper/CropperV1Test.java index d6a8a7b31..881c8f348 100644 --- a/src/test/java/com/mindee/product/cropper/CropperV1Test.java +++ b/src/test/java/com/mindee/v1/product/cropper/CropperV1Test.java @@ -1,13 +1,13 @@ -package com.mindee.product.cropper; +package com.mindee.v1.product.cropper; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.Page; -import com.mindee.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.Page; +import com.mindee.v1.parsing.common.PredictResponse; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/driverlicense/DriverLicenseV1Test.java b/src/test/java/com/mindee/v1/product/driverlicense/DriverLicenseV1Test.java similarity index 94% rename from src/test/java/com/mindee/product/driverlicense/DriverLicenseV1Test.java rename to src/test/java/com/mindee/v1/product/driverlicense/DriverLicenseV1Test.java index 97c2b14ac..a219ce099 100644 --- a/src/test/java/com/mindee/product/driverlicense/DriverLicenseV1Test.java +++ b/src/test/java/com/mindee/v1/product/driverlicense/DriverLicenseV1Test.java @@ -1,12 +1,12 @@ -package com.mindee.product.driverlicense; +package com.mindee.v1.product.driverlicense; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/financialdocument/FinancialDocumentV1Test.java b/src/test/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1Test.java similarity index 98% rename from src/test/java/com/mindee/product/financialdocument/FinancialDocumentV1Test.java rename to src/test/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1Test.java index 87eb7df0f..1bf75781b 100644 --- a/src/test/java/com/mindee/product/financialdocument/FinancialDocumentV1Test.java +++ b/src/test/java/com/mindee/v1/product/financialdocument/FinancialDocumentV1Test.java @@ -1,12 +1,12 @@ -package com.mindee.product.financialdocument; +package com.mindee.v1.product.financialdocument; import static com.mindee.TestingUtilities.getV1ResourcePath; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; import java.io.File; import java.io.IOException; import java.nio.file.Files; diff --git a/src/test/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2Test.java b/src/test/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2Test.java similarity index 93% rename from src/test/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2Test.java rename to src/test/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2Test.java index 7b73f8df2..b75e93764 100644 --- a/src/test/java/com/mindee/product/fr/bankaccountdetails/BankAccountDetailsV2Test.java +++ b/src/test/java/com/mindee/v1/product/fr/bankaccountdetails/BankAccountDetailsV2Test.java @@ -1,12 +1,12 @@ -package com.mindee.product.fr.bankaccountdetails; +package com.mindee.v1.product.fr.bankaccountdetails; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/fr/cartegrise/CarteGriseV1Test.java b/src/test/java/com/mindee/v1/product/fr/cartegrise/CarteGriseV1Test.java similarity index 96% rename from src/test/java/com/mindee/product/fr/cartegrise/CarteGriseV1Test.java rename to src/test/java/com/mindee/v1/product/fr/cartegrise/CarteGriseV1Test.java index 146477982..3121e6b70 100644 --- a/src/test/java/com/mindee/product/fr/cartegrise/CarteGriseV1Test.java +++ b/src/test/java/com/mindee/v1/product/fr/cartegrise/CarteGriseV1Test.java @@ -1,12 +1,12 @@ -package com.mindee.product.fr.cartegrise; +package com.mindee.v1.product.fr.cartegrise; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/fr/idcard/IdCardV1Test.java b/src/test/java/com/mindee/v1/product/fr/idcard/IdCardV1Test.java similarity index 92% rename from src/test/java/com/mindee/product/fr/idcard/IdCardV1Test.java rename to src/test/java/com/mindee/v1/product/fr/idcard/IdCardV1Test.java index 5669371e7..d34aa9197 100644 --- a/src/test/java/com/mindee/product/fr/idcard/IdCardV1Test.java +++ b/src/test/java/com/mindee/v1/product/fr/idcard/IdCardV1Test.java @@ -1,14 +1,14 @@ -package com.mindee.product.fr.idcard; +package com.mindee.v1.product.fr.idcard; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.Page; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.Page; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.standard.ClassificationField; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/fr/idcard/IdCardV2Test.java b/src/test/java/com/mindee/v1/product/fr/idcard/IdCardV2Test.java similarity index 93% rename from src/test/java/com/mindee/product/fr/idcard/IdCardV2Test.java rename to src/test/java/com/mindee/v1/product/fr/idcard/IdCardV2Test.java index a03abb0ac..905947f2a 100644 --- a/src/test/java/com/mindee/product/fr/idcard/IdCardV2Test.java +++ b/src/test/java/com/mindee/v1/product/fr/idcard/IdCardV2Test.java @@ -1,14 +1,14 @@ -package com.mindee.product.fr.idcard; +package com.mindee.v1.product.fr.idcard; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.Page; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.Page; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.standard.ClassificationField; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/generated/GeneratedV1Test.java b/src/test/java/com/mindee/v1/product/generated/GeneratedV1Test.java similarity index 95% rename from src/test/java/com/mindee/product/generated/GeneratedV1Test.java rename to src/test/java/com/mindee/v1/product/generated/GeneratedV1Test.java index 13683ecf8..7901d0f6a 100644 --- a/src/test/java/com/mindee/product/generated/GeneratedV1Test.java +++ b/src/test/java/com/mindee/v1/product/generated/GeneratedV1Test.java @@ -1,18 +1,18 @@ -package com.mindee.product.generated; +package com.mindee.v1.product.generated; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.generated.GeneratedFeature; -import com.mindee.parsing.generated.GeneratedObject; -import com.mindee.parsing.standard.AmountField; -import com.mindee.parsing.standard.BooleanField; -import com.mindee.parsing.standard.ClassificationField; -import com.mindee.parsing.standard.DateField; -import com.mindee.parsing.standard.StringField; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.generated.GeneratedFeature; +import com.mindee.v1.parsing.generated.GeneratedObject; +import com.mindee.v1.parsing.standard.AmountField; +import com.mindee.v1.parsing.standard.BooleanField; +import com.mindee.v1.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.standard.DateField; +import com.mindee.v1.parsing.standard.StringField; import java.io.File; import java.io.IOException; import java.time.LocalDate; diff --git a/src/test/java/com/mindee/product/ind/indianpassport/IndianPassportV1Test.java b/src/test/java/com/mindee/v1/product/ind/indianpassport/IndianPassportV1Test.java similarity index 93% rename from src/test/java/com/mindee/product/ind/indianpassport/IndianPassportV1Test.java rename to src/test/java/com/mindee/v1/product/ind/indianpassport/IndianPassportV1Test.java index 02c3b68d5..c702be1a0 100644 --- a/src/test/java/com/mindee/product/ind/indianpassport/IndianPassportV1Test.java +++ b/src/test/java/com/mindee/v1/product/ind/indianpassport/IndianPassportV1Test.java @@ -1,13 +1,13 @@ -package com.mindee.product.ind.indianpassport; +package com.mindee.v1.product.ind.indianpassport; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.standard.ClassificationField; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/internationalid/InternationalIdV2Test.java b/src/test/java/com/mindee/v1/product/internationalid/InternationalIdV2Test.java similarity index 93% rename from src/test/java/com/mindee/product/internationalid/InternationalIdV2Test.java rename to src/test/java/com/mindee/v1/product/internationalid/InternationalIdV2Test.java index 5833c8d67..5a2ba4966 100644 --- a/src/test/java/com/mindee/product/internationalid/InternationalIdV2Test.java +++ b/src/test/java/com/mindee/v1/product/internationalid/InternationalIdV2Test.java @@ -1,13 +1,13 @@ -package com.mindee.product.internationalid; +package com.mindee.v1.product.internationalid; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.standard.ClassificationField; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/invoice/InvoiceV4Test.java b/src/test/java/com/mindee/v1/product/invoice/InvoiceV4Test.java similarity index 94% rename from src/test/java/com/mindee/product/invoice/InvoiceV4Test.java rename to src/test/java/com/mindee/v1/product/invoice/InvoiceV4Test.java index 9e4027f75..e1c00fd62 100644 --- a/src/test/java/com/mindee/product/invoice/InvoiceV4Test.java +++ b/src/test/java/com/mindee/v1/product/invoice/InvoiceV4Test.java @@ -1,13 +1,13 @@ -package com.mindee.product.invoice; +package com.mindee.v1.product.invoice; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.standard.ClassificationField; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1Test.java b/src/test/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1Test.java similarity index 92% rename from src/test/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1Test.java rename to src/test/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1Test.java index 863f58dd8..baedb539d 100644 --- a/src/test/java/com/mindee/product/invoicesplitter/InvoiceSplitterV1Test.java +++ b/src/test/java/com/mindee/v1/product/invoicesplitter/InvoiceSplitterV1Test.java @@ -1,12 +1,12 @@ -package com.mindee.product.invoicesplitter; +package com.mindee.v1.product.invoicesplitter; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/multireceiptsdetector/MultiReceiptsDetectorV1Test.java b/src/test/java/com/mindee/v1/product/multireceiptsdetector/MultiReceiptsDetectorV1Test.java similarity index 92% rename from src/test/java/com/mindee/product/multireceiptsdetector/MultiReceiptsDetectorV1Test.java rename to src/test/java/com/mindee/v1/product/multireceiptsdetector/MultiReceiptsDetectorV1Test.java index d0aae9d78..317791e12 100644 --- a/src/test/java/com/mindee/product/multireceiptsdetector/MultiReceiptsDetectorV1Test.java +++ b/src/test/java/com/mindee/v1/product/multireceiptsdetector/MultiReceiptsDetectorV1Test.java @@ -1,12 +1,12 @@ -package com.mindee.product.multireceiptsdetector; +package com.mindee.v1.product.multireceiptsdetector; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/passport/PassportV1Test.java b/src/test/java/com/mindee/v1/product/passport/PassportV1Test.java similarity index 94% rename from src/test/java/com/mindee/product/passport/PassportV1Test.java rename to src/test/java/com/mindee/v1/product/passport/PassportV1Test.java index 9ba9121fc..d671d1211 100644 --- a/src/test/java/com/mindee/product/passport/PassportV1Test.java +++ b/src/test/java/com/mindee/v1/product/passport/PassportV1Test.java @@ -1,12 +1,12 @@ -package com.mindee.product.passport; +package com.mindee.v1.product.passport; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/product/receipt/ReceiptV5Test.java b/src/test/java/com/mindee/v1/product/receipt/ReceiptV5Test.java similarity index 93% rename from src/test/java/com/mindee/product/receipt/ReceiptV5Test.java rename to src/test/java/com/mindee/v1/product/receipt/ReceiptV5Test.java index fd1466201..ef78a50c0 100644 --- a/src/test/java/com/mindee/product/receipt/ReceiptV5Test.java +++ b/src/test/java/com/mindee/v1/product/receipt/ReceiptV5Test.java @@ -1,13 +1,13 @@ -package com.mindee.product.receipt; +package com.mindee.v1.product.receipt; import static com.mindee.TestingUtilities.assertStringEqualsFile; import static com.mindee.TestingUtilities.getV1ResourcePathString; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.parsing.common.Document; -import com.mindee.parsing.common.PredictResponse; -import com.mindee.parsing.standard.ClassificationField; +import com.mindee.v1.parsing.common.Document; +import com.mindee.v1.parsing.common.PredictResponse; +import com.mindee.v1.parsing.standard.ClassificationField; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Assertions; diff --git a/src/test/java/com/mindee/workflow/WorkflowIT.java b/src/test/java/com/mindee/v1/workflow/WorkflowIT.java similarity index 85% rename from src/test/java/com/mindee/workflow/WorkflowIT.java rename to src/test/java/com/mindee/v1/workflow/WorkflowIT.java index 323dde272..1f848415f 100644 --- a/src/test/java/com/mindee/workflow/WorkflowIT.java +++ b/src/test/java/com/mindee/v1/workflow/WorkflowIT.java @@ -1,17 +1,17 @@ -package com.mindee.workflow; +package com.mindee.v1.workflow; import static com.mindee.TestingUtilities.getV1ResourcePath; -import com.mindee.MindeeClient; -import com.mindee.PredictOptions; -import com.mindee.WorkflowOptions; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.AsyncPredictResponse; -import com.mindee.parsing.common.Execution; -import com.mindee.parsing.common.ExecutionPriority; -import com.mindee.parsing.common.WorkflowResponse; -import com.mindee.product.financialdocument.FinancialDocumentV1; -import com.mindee.product.generated.GeneratedV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.clientOptions.PredictOptions; +import com.mindee.v1.clientOptions.WorkflowOptions; +import com.mindee.v1.parsing.common.AsyncPredictResponse; +import com.mindee.v1.parsing.common.Execution; +import com.mindee.v1.parsing.common.ExecutionPriority; +import com.mindee.v1.parsing.common.WorkflowResponse; +import com.mindee.v1.product.financialdocument.FinancialDocumentV1; +import com.mindee.v1.product.generated.GeneratedV1; import java.io.IOException; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; diff --git a/src/test/java/com/mindee/workflow/WorkflowTest.java b/src/test/java/com/mindee/v1/workflow/WorkflowTest.java similarity index 94% rename from src/test/java/com/mindee/workflow/WorkflowTest.java rename to src/test/java/com/mindee/v1/workflow/WorkflowTest.java index cba596487..53110badd 100644 --- a/src/test/java/com/mindee/workflow/WorkflowTest.java +++ b/src/test/java/com/mindee/v1/workflow/WorkflowTest.java @@ -1,17 +1,17 @@ -package com.mindee.workflow; +package com.mindee.v1.workflow; import static com.mindee.TestingUtilities.getResourcePath; import static com.mindee.TestingUtilities.getV1ResourcePath; import static org.mockito.Mockito.when; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.MindeeClient; -import com.mindee.http.MindeeApi; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.common.Execution; -import com.mindee.parsing.common.WorkflowResponse; import com.mindee.pdf.PdfOperation; -import com.mindee.product.generated.GeneratedV1; +import com.mindee.v1.MindeeClient; +import com.mindee.v1.http.MindeeApiV1; +import com.mindee.v1.parsing.common.Execution; +import com.mindee.v1.parsing.common.WorkflowResponse; +import com.mindee.v1.product.generated.GeneratedV1; import java.io.IOException; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; @@ -27,14 +27,14 @@ public class WorkflowTest { MindeeClient client; @Mock MindeeClient mockedClient; - MindeeApi mindeeApi; + MindeeApiV1 mindeeApi; PdfOperation pdfOperation; private ObjectMapper objectMapper; @BeforeEach public void setUp() { - mindeeApi = Mockito.mock(MindeeApi.class); + mindeeApi = Mockito.mock(MindeeApiV1.class); pdfOperation = Mockito.mock(PdfOperation.class); client = new MindeeClient(pdfOperation, mindeeApi); diff --git a/src/test/java/com/mindee/MindeeClientV2IT.java b/src/test/java/com/mindee/v2/MindeeClientIT.java similarity index 77% rename from src/test/java/com/mindee/MindeeClientV2IT.java rename to src/test/java/com/mindee/v2/MindeeClientIT.java index c96225be5..e82f3c5fa 100644 --- a/src/test/java/com/mindee/MindeeClientV2IT.java +++ b/src/test/java/com/mindee/v2/MindeeClientIT.java @@ -1,37 +1,39 @@ -package com.mindee; +package com.mindee.v2; import static com.mindee.TestingUtilities.getResourcePath; import static com.mindee.TestingUtilities.getV2ResourcePath; import static com.mindee.TestingUtilities.readFileAsString; import static org.junit.jupiter.api.Assertions.*; -import com.mindee.http.MindeeHttpExceptionV2; +import com.mindee.AsyncPollingOptions; import com.mindee.input.LocalInputSource; import com.mindee.input.URLInputSource; -import com.mindee.parsing.v2.Inference; -import com.mindee.parsing.v2.InferenceActiveOptions; -import com.mindee.parsing.v2.InferenceFile; -import com.mindee.parsing.v2.InferenceResponse; -import com.mindee.parsing.v2.InferenceResult; -import com.mindee.parsing.v2.RawText; -import com.mindee.parsing.v2.field.InferenceFields; -import com.mindee.parsing.v2.field.SimpleField; +import com.mindee.v2.http.MindeeHttpExceptionV2; +import com.mindee.v2.parsing.inference.InferenceActiveOptions; +import com.mindee.v2.parsing.inference.InferenceFile; +import com.mindee.v2.parsing.inference.RawText; +import com.mindee.v2.parsing.inference.field.InferenceFields; +import com.mindee.v2.parsing.inference.field.SimpleField; +import com.mindee.v2.product.extraction.ExtractionInference; +import com.mindee.v2.product.extraction.ExtractionResponse; +import com.mindee.v2.product.extraction.ExtractionResult; +import com.mindee.v2.product.extraction.params.ExtractionParameters; import java.io.IOException; import org.junit.jupiter.api.*; @TestInstance(TestInstance.Lifecycle.PER_CLASS) @Tag("integration") @DisplayName("MindeeV2 – Integration Tests") -class MindeeClientV2IT { +class MindeeClientIT { - private MindeeClientV2 mindeeClient; + private MindeeClient mindeeClient; private String modelId; @BeforeAll void setUp() { String apiKey = System.getenv("MINDEE_V2_API_KEY"); modelId = System.getenv("MINDEE_V2_SE_TESTS_FINDOC_MODEL_ID"); - mindeeClient = new MindeeClientV2(apiKey); + mindeeClient = new MindeeClient(apiKey); } @Test @@ -40,7 +42,7 @@ void parseFile_emptyMultiPage_mustSucceed() throws IOException, InterruptedExcep LocalInputSource source = new LocalInputSource( getResourcePath("file_types/pdf/multipage_cut-2.pdf") ); - InferenceParameters params = InferenceParameters + ExtractionParameters params = ExtractionParameters .builder(modelId) .rag(false) .rawText(true) @@ -53,10 +55,10 @@ void parseFile_emptyMultiPage_mustSucceed() throws IOException, InterruptedExcep ) .build(); - InferenceResponse response = mindeeClient - .enqueueAndGetResult(InferenceResponse.class, source, params); + ExtractionResponse response = mindeeClient + .enqueueAndGetResult(ExtractionResponse.class, source, params); assertNotNull(response); - Inference inference = response.getInference(); + ExtractionInference inference = response.getInference(); assertNotNull(inference); InferenceFile file = inference.getFile(); @@ -74,7 +76,7 @@ void parseFile_emptyMultiPage_mustSucceed() throws IOException, InterruptedExcep assertFalse(activeOptions.getPolygon()); assertFalse(activeOptions.getConfidence()); - InferenceResult result = inference.getResult(); + ExtractionResult result = inference.getResult(); assertNotNull(result); RawText rawText = result.getRawText(); @@ -91,16 +93,16 @@ void parseFile_filledSinglePage_mustSucceed() throws IOException, InterruptedExc getV2ResourcePath("products/extraction/financial_document/default_sample.jpg") ); - InferenceParameters params = InferenceParameters + ExtractionParameters params = ExtractionParameters .builder(modelId) .rag(false) .alias("java-integration-test_single-page") .textContext("this is an invoice") .build(); - InferenceResponse response = mindeeClient.enqueueAndGetInference(source, params); + ExtractionResponse response = mindeeClient.enqueueAndGetInference(source, params); assertNotNull(response); - Inference inference = response.getInference(); + ExtractionInference inference = response.getInference(); assertNotNull(inference); InferenceFile file = inference.getFile(); @@ -118,7 +120,7 @@ void parseFile_filledSinglePage_mustSucceed() throws IOException, InterruptedExc assertFalse(activeOptions.getPolygon()); assertFalse(activeOptions.getConfidence()); - InferenceResult result = inference.getResult(); + ExtractionResult result = inference.getResult(); assertNotNull(result); RawText rawText = result.getRawText(); @@ -139,7 +141,7 @@ void parseFile_dataSchemaReplace_mustSucceed() throws IOException, InterruptedEx getV2ResourcePath("products/extraction/financial_document/default_sample.jpg") ); - InferenceParameters params = InferenceParameters + ExtractionParameters params = ExtractionParameters .builder(modelId) .rag(false) .alias("java-integration-test_data-schema-replace") @@ -148,13 +150,13 @@ void parseFile_dataSchemaReplace_mustSucceed() throws IOException, InterruptedEx ) .build(); - InferenceResponse response = mindeeClient - .enqueueAndGetResult(InferenceResponse.class, source, params); + ExtractionResponse response = mindeeClient + .enqueueAndGetResult(ExtractionResponse.class, source, params); assertNotNull(response); - Inference inference = response.getInference(); + ExtractionInference inference = response.getInference(); assertNotNull(inference); - InferenceResult result = inference.getResult(); + ExtractionResult result = inference.getResult(); assertNotNull(result); RawText rawText = result.getRawText(); @@ -172,7 +174,7 @@ void parseFile_dataSchemaReplace_mustSucceed() throws IOException, InterruptedEx @DisplayName("Invalid model ID – enqueue must raise 422") void invalidModel_mustThrowError() throws IOException { LocalInputSource source = new LocalInputSource(getResourcePath("file_types/pdf/blank_1.pdf")); - InferenceParameters params = InferenceParameters + ExtractionParameters params = ExtractionParameters .builder("INVALID_MODEL_ID") .textContext("this is invalid") .build(); @@ -188,7 +190,7 @@ void invalidModel_mustThrowError() throws IOException { @DisplayName("Invalid webhook ID – enqueue must raise 422") void invalidWebhook_mustThrowError() throws IOException { LocalInputSource source = new LocalInputSource(getResourcePath("file_types/pdf/blank_1.pdf")); - InferenceParameters params = InferenceParameters + ExtractionParameters params = ExtractionParameters .builder(modelId) .webhookIds(new String[] { "INVALID_WEBHOOK_ID" }) .build(); @@ -218,9 +220,9 @@ void urlInputSource_mustNotRaiseErrors() throws IOException, InterruptedExceptio .builder(System.getenv("MINDEE_V2_SE_TESTS_BLANK_PDF_URL")) .build(); - InferenceParameters options = InferenceParameters.builder(modelId).build(); + ExtractionParameters options = ExtractionParameters.builder(modelId).build(); - InferenceResponse response = mindeeClient.enqueueAndGetInference(urlSource, options); + ExtractionResponse response = mindeeClient.enqueueAndGetInference(urlSource, options); assertNotNull(response); assertNotNull(response.getInference()); diff --git a/src/test/java/com/mindee/MindeeClientV2Test.java b/src/test/java/com/mindee/v2/MindeeClientTest.java similarity index 77% rename from src/test/java/com/mindee/MindeeClientV2Test.java rename to src/test/java/com/mindee/v2/MindeeClientTest.java index 90ddb2b4a..5cf1d2a27 100644 --- a/src/test/java/com/mindee/MindeeClientV2Test.java +++ b/src/test/java/com/mindee/v2/MindeeClientTest.java @@ -1,4 +1,4 @@ -package com.mindee; +package com.mindee.v2; import static com.mindee.TestingUtilities.getResourcePath; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -10,11 +10,12 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; -import com.mindee.http.MindeeApiV2; import com.mindee.input.LocalInputSource; import com.mindee.input.LocalResponse; -import com.mindee.parsing.v2.InferenceResponse; -import com.mindee.parsing.v2.JobResponse; +import com.mindee.v2.http.MindeeApiV2; +import com.mindee.v2.parsing.JobResponse; +import com.mindee.v2.product.extraction.ExtractionResponse; +import com.mindee.v2.product.extraction.params.ExtractionParameters; import java.io.IOException; import org.apache.commons.io.FileUtils; import org.junit.jupiter.api.DisplayName; @@ -23,12 +24,12 @@ import org.mockito.Mockito; @DisplayName("MindeeV2 – Client and API Tests") -class MindeeClientV2Test { +class MindeeClientTest { /** * Creates a fully mocked MindeeClientV2. */ - private static MindeeClientV2 makeClientWithMockedApi(MindeeApiV2 mockedApi) { - return new MindeeClientV2(mockedApi); + private static MindeeClient makeClientWithMockedApi(MindeeApiV2 mockedApi) { + return new MindeeClient(mockedApi); } @Nested @@ -38,21 +39,21 @@ class Enqueue { @DisplayName("sends exactly one HTTP call and yields a non-null response") void enqueue_post_async() throws IOException { MindeeApiV2 predictable = Mockito.mock(MindeeApiV2.class); - when(predictable.reqPostEnqueue(any(LocalInputSource.class), any(InferenceParameters.class))) + when(predictable.reqPostEnqueue(any(LocalInputSource.class), any(ExtractionParameters.class))) .thenReturn(new JobResponse()); - MindeeClientV2 mindeeClient = makeClientWithMockedApi(predictable); + MindeeClient mindeeClient = makeClientWithMockedApi(predictable); LocalInputSource input = new LocalInputSource(getResourcePath("file_types/pdf/blank_1.pdf")); JobResponse response = mindeeClient .enqueueInference( input, - InferenceParameters.builder("dummy-model-id").textContext("test text context").build() + ExtractionParameters.builder("dummy-model-id").textContext("test text context").build() ); assertNotNull(response, "enqueue() must return a response"); verify(predictable, atMostOnce()) - .reqPostEnqueue(any(LocalInputSource.class), any(InferenceParameters.class)); + .reqPostEnqueue(any(LocalInputSource.class), any(ExtractionParameters.class)); } } @@ -71,7 +72,7 @@ void document_getJob_async() throws JsonProcessingException { when(predictable.reqGetJob(anyString())).thenReturn(processing); - MindeeClientV2 mindeeClient = makeClientWithMockedApi(predictable); + MindeeClient mindeeClient = makeClientWithMockedApi(predictable); JobResponse response = mindeeClient.getJob("dummy-id"); assertNotNull(response, "getJob() must return a response"); @@ -81,7 +82,7 @@ void document_getJob_async() throws JsonProcessingException { @Nested @DisplayName("getInference()") - class GetInference { + class GetExtractionInference { @Test @DisplayName("hits the HTTP endpoint once and returns a non-null response") void document_getInference_async() throws IOException { @@ -95,14 +96,14 @@ void document_getInference_async() throws IOException { ObjectMapper mapper = new ObjectMapper(); mapper.findAndRegisterModules(); - InferenceResponse processing = mapper.readValue(json, InferenceResponse.class); + ExtractionResponse processing = mapper.readValue(json, ExtractionResponse.class); - when(predictable.reqGetResult(eq(InferenceResponse.class), anyString())) + when(predictable.reqGetResult(eq(ExtractionResponse.class), anyString())) .thenReturn(processing); - MindeeClientV2 mindeeClient = makeClientWithMockedApi(predictable); + MindeeClient mindeeClient = makeClientWithMockedApi(predictable); - InferenceResponse response = mindeeClient + ExtractionResponse response = mindeeClient .getInference("12345678-1234-1234-1234-123456789abc"); assertNotNull(response, "getInference() must return a response"); assertEquals( @@ -121,7 +122,7 @@ void document_getInference_async() throws IOException { .getValue(), "Result must deserialize fields properly." ); - verify(predictable, atMostOnce()).reqGetResult(eq(InferenceResponse.class), anyString()); + verify(predictable, atMostOnce()).reqGetResult(eq(ExtractionResponse.class), anyString()); } } @@ -135,7 +136,7 @@ void inference_loadsLocally() throws IOException { LocalResponse localResponse = new LocalResponse( getResourcePath("v2/products/extraction/financial_document/complete.json") ); - InferenceResponse loaded = localResponse.deserializeResponse(InferenceResponse.class); + ExtractionResponse loaded = localResponse.deserializeResponse(ExtractionResponse.class); assertNotNull(loaded, "Loaded InferenceResponse must not be null"); assertEquals( diff --git a/src/test/java/com/mindee/v2/MindeeSettingsTest.java b/src/test/java/com/mindee/v2/MindeeSettingsTest.java new file mode 100644 index 000000000..797c5692e --- /dev/null +++ b/src/test/java/com/mindee/v2/MindeeSettingsTest.java @@ -0,0 +1,17 @@ +package com.mindee.v2; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junitpioneer.jupiter.SetEnvironmentVariable; + +public class MindeeSettingsTest { + + @Test + @SetEnvironmentVariable(key = "MINDEE_V2_API_KEY", value = "abcd") + @SetEnvironmentVariable(key = "MINDEE_V2_API_URL", value = "https://example.com") + void setEnvironmentVariablesAndEmptyParams() { + MindeeSettings settings = new MindeeSettings("", ""); + Assertions.assertEquals("abcd", settings.getApiKey().orElse("")); + Assertions.assertEquals("https://example.com", settings.getBaseUrl()); + } +} diff --git a/src/test/java/com/mindee/parsing/v2/ExtractionTest.java b/src/test/java/com/mindee/v2/parsing/ExtractionTest.java similarity index 87% rename from src/test/java/com/mindee/parsing/v2/ExtractionTest.java rename to src/test/java/com/mindee/v2/parsing/ExtractionTest.java index 25700634e..1fabb85d2 100644 --- a/src/test/java/com/mindee/parsing/v2/ExtractionTest.java +++ b/src/test/java/com/mindee/v2/parsing/ExtractionTest.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing; import static com.mindee.TestingUtilities.getV2ResourcePath; import static com.mindee.TestingUtilities.readFileAsString; @@ -13,14 +13,23 @@ import com.mindee.geometry.Point; import com.mindee.geometry.Polygon; import com.mindee.input.LocalResponse; -import com.mindee.parsing.v2.field.DynamicField; -import com.mindee.parsing.v2.field.DynamicField.FieldType; -import com.mindee.parsing.v2.field.FieldConfidence; -import com.mindee.parsing.v2.field.FieldLocation; -import com.mindee.parsing.v2.field.InferenceFields; -import com.mindee.parsing.v2.field.ListField; -import com.mindee.parsing.v2.field.ObjectField; -import com.mindee.parsing.v2.field.SimpleField; +import com.mindee.v2.parsing.inference.InferenceActiveOptions; +import com.mindee.v2.parsing.inference.InferenceFile; +import com.mindee.v2.parsing.inference.InferenceJob; +import com.mindee.v2.parsing.inference.InferenceModel; +import com.mindee.v2.parsing.inference.RagMetadata; +import com.mindee.v2.parsing.inference.RawText; +import com.mindee.v2.parsing.inference.RawTextPage; +import com.mindee.v2.parsing.inference.field.DynamicField; +import com.mindee.v2.parsing.inference.field.DynamicField.FieldType; +import com.mindee.v2.parsing.inference.field.FieldConfidence; +import com.mindee.v2.parsing.inference.field.FieldLocation; +import com.mindee.v2.parsing.inference.field.InferenceFields; +import com.mindee.v2.parsing.inference.field.ListField; +import com.mindee.v2.parsing.inference.field.ObjectField; +import com.mindee.v2.parsing.inference.field.SimpleField; +import com.mindee.v2.product.extraction.ExtractionInference; +import com.mindee.v2.product.extraction.ExtractionResponse; import java.io.IOException; import java.math.BigDecimal; import java.util.HashMap; @@ -34,9 +43,9 @@ @DisplayName("MindeeV2 - Extraction Model Tests") class ExtractionTest { - private InferenceResponse loadResponse(String filePath) throws IOException { + private ExtractionResponse loadResponse(String filePath) throws IOException { LocalResponse localResponse = new LocalResponse(getV2ResourcePath(filePath)); - return localResponse.deserializeResponse(InferenceResponse.class); + return localResponse.deserializeResponse(ExtractionResponse.class); } @Nested @@ -46,7 +55,7 @@ class BlankPredictionTest { @Test @DisplayName("all properties must be valid") void asyncPredict_whenEmpty_mustHaveValidProperties() throws IOException { - InferenceResponse response = loadResponse( + ExtractionResponse response = loadResponse( "products/extraction/financial_document/blank.json" ); InferenceFields fields = response.getInference().getResult().getFields(); @@ -100,10 +109,10 @@ class CompletePredictionTest { @Test @DisplayName("every exposed property must be valid and consistent") void asyncPredict_whenComplete_mustExposeAllProperties() throws IOException { - InferenceResponse response = loadResponse( + ExtractionResponse response = loadResponse( "products/extraction/financial_document/complete.json" ); - Inference inference = response.getInference(); + ExtractionInference inference = response.getInference(); assertNotNull(inference); assertEquals("12345678-1234-1234-1234-123456789abc", inference.getId()); @@ -175,8 +184,8 @@ class DeepNestedFieldsTest { @Test @DisplayName("all nested structures must be typed correctly") void deepNestedFields_mustExposeCorrectTypes() throws IOException { - InferenceResponse resp = loadResponse("products/extraction/deep_nested_fields.json"); - Inference inf = resp.getInference(); + ExtractionResponse resp = loadResponse("products/extraction/deep_nested_fields.json"); + ExtractionInference inf = resp.getInference(); assertNotNull(inf); InferenceFields root = inf.getResult().getFields(); @@ -241,8 +250,8 @@ private void testSimpleFieldString(SimpleField field) { @Test @DisplayName("simple fields must be recognised") void standardFieldTypes_mustExposeSimpleFieldValues() throws IOException { - InferenceResponse response = loadResponse("products/extraction/standard_field_types.json"); - Inference inference = response.getInference(); + ExtractionResponse response = loadResponse("products/extraction/standard_field_types.json"); + ExtractionInference inference = response.getInference(); assertNotNull(inference); InferenceFields fields = inference.getResult().getFields(); @@ -298,8 +307,8 @@ void standardFieldTypes_mustExposeSimpleFieldValues() throws IOException { @Test @DisplayName("simple list fields must be recognised") void standardFieldTypes_mustExposeSimpleListFieldValues() throws IOException { - InferenceResponse response = loadResponse("products/extraction/standard_field_types.json"); - Inference inference = response.getInference(); + ExtractionResponse response = loadResponse("products/extraction/standard_field_types.json"); + ExtractionInference inference = response.getInference(); assertNotNull(inference); InferenceFields fields = inference.getResult().getFields(); @@ -341,8 +350,8 @@ private void testObjectSubFieldSimpleString(String fieldName, SimpleField subFie @Test @DisplayName("object list fields must be recognised") void standardFieldTypes_mustExposeObjectListFieldValues() throws IOException { - InferenceResponse response = loadResponse("products/extraction/standard_field_types.json"); - Inference inference = response.getInference(); + ExtractionResponse response = loadResponse("products/extraction/standard_field_types.json"); + ExtractionInference inference = response.getInference(); assertNotNull(inference); InferenceFields fields = inference.getResult().getFields(); @@ -391,8 +400,8 @@ void standardFieldTypes_mustExposeObjectListFieldValues() throws IOException { @Test @DisplayName("simple / object / list variants must be recognised") void standardFieldTypes_mustExposeObjectFieldValues() throws IOException { - InferenceResponse response = loadResponse("products/extraction/standard_field_types.json"); - Inference inference = response.getInference(); + ExtractionResponse response = loadResponse("products/extraction/standard_field_types.json"); + ExtractionInference inference = response.getInference(); assertNotNull(inference); InferenceFields fields = inference.getResult().getFields(); @@ -426,8 +435,8 @@ void standardFieldTypes_mustExposeObjectFieldValues() throws IOException { @Test @DisplayName("allow getting fields using generics") void standardFieldTypes_getWithGenerics() throws IOException { - InferenceResponse response = loadResponse("products/extraction/standard_field_types.json"); - Inference inference = response.getInference(); + ExtractionResponse response = loadResponse("products/extraction/standard_field_types.json"); + ExtractionInference inference = response.getInference(); assertNotNull(inference); InferenceFields fields = inference.getResult().getFields(); @@ -462,8 +471,8 @@ void standardFieldTypes_getWithGenerics() throws IOException { @Test @DisplayName("confidence and locations must be usable") void standardFieldTypes_confidenceAndLocations() throws IOException { - InferenceResponse response = loadResponse("products/extraction/standard_field_types.json"); - Inference inference = response.getInference(); + ExtractionResponse response = loadResponse("products/extraction/standard_field_types.json"); + ExtractionInference inference = response.getInference(); assertNotNull(inference); InferenceFields fields = inference.getResult().getFields(); @@ -502,8 +511,8 @@ class RawTextTest { @Test @DisplayName("raw texts option must be parsed and exposed") void rawTexts_mustBeAccessible() throws IOException { - InferenceResponse response = loadResponse("products/extraction/raw_texts.json"); - Inference inference = response.getInference(); + ExtractionResponse response = loadResponse("products/extraction/raw_texts.json"); + ExtractionInference inference = response.getInference(); assertNotNull(inference); InferenceActiveOptions activeOptions = inference.getActiveOptions(); @@ -537,8 +546,8 @@ class RagMetadataTest { @Test @DisplayName("RAG metadata when matched") void rag_mustBeFilled_whenMatched() throws IOException { - InferenceResponse response = loadResponse("products/extraction/rag_matched.json"); - Inference inference = response.getInference(); + ExtractionResponse response = loadResponse("products/extraction/rag_matched.json"); + ExtractionInference inference = response.getInference(); assertNotNull(inference); RagMetadata rag = inference.getResult().getRag(); @@ -549,8 +558,8 @@ void rag_mustBeFilled_whenMatched() throws IOException { @Test @DisplayName("RAG metadata when not matched") void rag_mustBeNull_whenNotMatched() throws IOException { - InferenceResponse response = loadResponse("products/extraction/rag_not_matched.json"); - Inference inference = response.getInference(); + ExtractionResponse response = loadResponse("products/extraction/rag_not_matched.json"); + ExtractionInference inference = response.getInference(); assertNotNull(inference); RagMetadata rag = inference.getResult().getRag(); @@ -565,11 +574,11 @@ class RstDisplay { @Test @DisplayName("rst display must be parsed and exposed") void rstDisplay_mustBeAccessible() throws IOException { - InferenceResponse resp = loadResponse("products/extraction/standard_field_types.json"); + ExtractionResponse resp = loadResponse("products/extraction/standard_field_types.json"); String rstRef = readFileAsString( getV2ResourcePath("products/extraction/standard_field_types.rst") ); - Inference inference = resp.getInference(); + ExtractionInference inference = resp.getInference(); assertNotNull(inference); assertEquals(rstRef, resp.getInference().toString()); } @@ -581,8 +590,8 @@ class TextContextTest { @Test @DisplayName("should be present and true when enabled") void textContext_mustBePresentAndTrue() throws IOException { - InferenceResponse resp = loadResponse("products/extraction/text_context_enabled.json"); - Inference inference = resp.getInference(); + ExtractionResponse resp = loadResponse("products/extraction/text_context_enabled.json"); + ExtractionInference inference = resp.getInference(); assertNotNull(inference); assertTrue(inference.getActiveOptions().getTextContext()); } @@ -594,8 +603,8 @@ class DataSchemaTest { @Test @DisplayName("should be present and true when enabled") void textContext_mustBePresentAndTrue() throws IOException { - InferenceResponse resp = loadResponse("products/extraction/data_schema_replace.json"); - Inference inference = resp.getInference(); + ExtractionResponse resp = loadResponse("products/extraction/data_schema_replace.json"); + ExtractionInference inference = resp.getInference(); assertNotNull(inference); InferenceFields fields = inference.getResult().getFields(); assertEquals("a test value", fields.get("test_replace").getSimpleField().getStringValue()); diff --git a/src/test/java/com/mindee/parsing/v2/JobTest.java b/src/test/java/com/mindee/v2/parsing/JobTest.java similarity index 98% rename from src/test/java/com/mindee/parsing/v2/JobTest.java rename to src/test/java/com/mindee/v2/parsing/JobTest.java index 7d905a752..e4d2f3c8b 100644 --- a/src/test/java/com/mindee/parsing/v2/JobTest.java +++ b/src/test/java/com/mindee/v2/parsing/JobTest.java @@ -1,4 +1,4 @@ -package com.mindee.parsing.v2; +package com.mindee.v2.parsing; import static com.mindee.TestingUtilities.getV2ResourcePath; import static org.junit.jupiter.api.Assertions.assertEquals; diff --git a/src/test/java/com/mindee/v2/product/CropIT.java b/src/test/java/com/mindee/v2/product/CropIT.java index f4d445967..9aa3abff3 100644 --- a/src/test/java/com/mindee/v2/product/CropIT.java +++ b/src/test/java/com/mindee/v2/product/CropIT.java @@ -4,9 +4,9 @@ import static org.junit.jupiter.api.Assertions.*; import com.mindee.AsyncPollingOptions; -import com.mindee.MindeeClientV2; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.v2.InferenceFile; +import com.mindee.v2.MindeeClient; +import com.mindee.v2.parsing.inference.InferenceFile; import com.mindee.v2.product.crop.CropInference; import com.mindee.v2.product.crop.CropResponse; import com.mindee.v2.product.crop.CropResult; @@ -23,14 +23,14 @@ @DisplayName("MindeeV2 –Integration Tests - Crop") class CropIT { - private MindeeClientV2 mindeeClient; + private MindeeClient mindeeClient; private String modelId; @BeforeAll void setUp() { String apiKey = System.getenv("MINDEE_V2_API_KEY"); modelId = System.getenv("MINDEE_V2_SE_TESTS_CROP_MODEL_ID"); - mindeeClient = new MindeeClientV2(apiKey); + mindeeClient = new MindeeClient(apiKey); } @Test diff --git a/src/test/java/com/mindee/v2/product/SplitIT.java b/src/test/java/com/mindee/v2/product/SplitIT.java index ce897416a..8c536b528 100644 --- a/src/test/java/com/mindee/v2/product/SplitIT.java +++ b/src/test/java/com/mindee/v2/product/SplitIT.java @@ -6,9 +6,9 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import com.mindee.AsyncPollingOptions; -import com.mindee.MindeeClientV2; import com.mindee.input.LocalInputSource; -import com.mindee.parsing.v2.InferenceFile; +import com.mindee.v2.MindeeClient; +import com.mindee.v2.parsing.inference.InferenceFile; import com.mindee.v2.product.split.SplitInference; import com.mindee.v2.product.split.SplitResponse; import com.mindee.v2.product.split.SplitResult; @@ -25,14 +25,14 @@ @DisplayName("MindeeV2 –Integration Tests - Split") class SplitIT { - private MindeeClientV2 mindeeClient; + private MindeeClient mindeeClient; private String modelId; @BeforeAll void setUp() { String apiKey = System.getenv("MINDEE_V2_API_KEY"); modelId = System.getenv("MINDEE_V2_SE_TESTS_SPLIT_MODEL_ID"); - mindeeClient = new MindeeClientV2(apiKey); + mindeeClient = new MindeeClient(apiKey); } @Test