diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index afe3d4e..895a3fd 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -30,6 +30,8 @@ src/Regula.DocumentReader.WebClient/Model/AuthenticityCheckResultListInner.cs src/Regula.DocumentReader.WebClient/Model/AuthenticityResult.cs src/Regula.DocumentReader.WebClient/Model/AuthenticityResultType.cs src/Regula.DocumentReader.WebClient/Model/BarCodeModuleType.cs +src/Regula.DocumentReader.WebClient/Model/BarcodePositionItem.cs +src/Regula.DocumentReader.WebClient/Model/BarcodePositionResult.cs src/Regula.DocumentReader.WebClient/Model/BarcodeType.cs src/Regula.DocumentReader.WebClient/Model/BcPDF417INFO.cs src/Regula.DocumentReader.WebClient/Model/BcROIDETECT.cs @@ -191,7 +193,6 @@ src/Regula.DocumentReader.WebClient/Model/RfidCertificateType.cs src/Regula.DocumentReader.WebClient/Model/RfidDG1.cs src/Regula.DocumentReader.WebClient/Model/RfidDataFile.cs src/Regula.DocumentReader.WebClient/Model/RfidDataFileType.cs -src/Regula.DocumentReader.WebClient/Model/RfidDataGroupTypeTag.cs src/Regula.DocumentReader.WebClient/Model/RfidDistinguishedName.cs src/Regula.DocumentReader.WebClient/Model/RfidLocation.cs src/Regula.DocumentReader.WebClient/Model/RfidOrigin.cs diff --git a/src/Regula.DocumentReader.WebClient/Model/BarcodePositionItem.cs b/src/Regula.DocumentReader.WebClient/Model/BarcodePositionItem.cs new file mode 100644 index 0000000..3e65a01 --- /dev/null +++ b/src/Regula.DocumentReader.WebClient/Model/BarcodePositionItem.cs @@ -0,0 +1,93 @@ +/* + * Regula Document Reader Web API + * + * Documents recognition as easy as reading two bytes. # Clients: * [JavaScript](https://github.com/regulaforensics/DocumentReader-web-js-client) client for the browser and node.js based on axios * [Java](https://github.com/regulaforensics/DocumentReader-web-java-client) client compatible with jvm and android * [Python](https://github.com/regulaforensics/DocumentReader-web-python-client) 3.5+ client * [C#](https://github.com/regulaforensics/DocumentReader-web-csharp-client) client for .NET & .NET Core + * + * The version of the OpenAPI document: 8.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using FileParameter = Regula.DocumentReader.WebClient.Client.FileParameter; +using OpenAPIDateConverter = Regula.DocumentReader.WebClient.Client.OpenAPIDateConverter; + +namespace Regula.DocumentReader.WebClient.Model +{ + /// + /// BarcodePositionItem + /// + [DataContract(Name = "BarcodePositionItem")] + public partial class BarcodePositionItem : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + protected BarcodePositionItem() { } + /// + /// Initializes a new instance of the class. + /// + /// barcodePosition (required). + public BarcodePositionItem(DocumentPosition barcodePosition = default(DocumentPosition)) + { + // to ensure "barcodePosition" is required (not null) + if (barcodePosition == null) + { + throw new ArgumentNullException("barcodePosition is a required property for BarcodePositionItem and cannot be null"); + } + this.BarcodePosition = barcodePosition; + } + + /// + /// Gets or Sets BarcodePosition + /// + [DataMember(Name = "BarcodePosition", IsRequired = true, EmitDefaultValue = true)] + public DocumentPosition BarcodePosition { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class BarcodePositionItem {\n"); + sb.Append(" BarcodePosition: ").Append(BarcodePosition).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/Regula.DocumentReader.WebClient/Model/BarcodePositionResult.cs b/src/Regula.DocumentReader.WebClient/Model/BarcodePositionResult.cs new file mode 100644 index 0000000..208afb5 --- /dev/null +++ b/src/Regula.DocumentReader.WebClient/Model/BarcodePositionResult.cs @@ -0,0 +1,114 @@ +/* + * Regula Document Reader Web API + * + * Documents recognition as easy as reading two bytes. # Clients: * [JavaScript](https://github.com/regulaforensics/DocumentReader-web-js-client) client for the browser and node.js based on axios * [Java](https://github.com/regulaforensics/DocumentReader-web-java-client) client compatible with jvm and android * [Python](https://github.com/regulaforensics/DocumentReader-web-python-client) 3.5+ client * [C#](https://github.com/regulaforensics/DocumentReader-web-csharp-client) client for .NET & .NET Core + * + * The version of the OpenAPI document: 8.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using JsonSubTypes; +using System.ComponentModel.DataAnnotations; +using FileParameter = Regula.DocumentReader.WebClient.Client.FileParameter; +using OpenAPIDateConverter = Regula.DocumentReader.WebClient.Client.OpenAPIDateConverter; + +namespace Regula.DocumentReader.WebClient.Model +{ + /// + /// Contains information about barcode position on the input image, its center, angle, etc + /// + [DataContract(Name = "BarcodePositionResult")] + public partial class BarcodePositionResult : ResultItem, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + protected BarcodePositionResult() { } + /// + /// Initializes a new instance of the class. + /// + /// barcodePosition (required). + /// bufLength. + /// light. + /// listIdx. + /// pageIdx. + /// resultType (required) (default to Result.BARCODE_POSITION). + public BarcodePositionResult(DocumentPosition barcodePosition = default(DocumentPosition), int bufLength = default(int), int light = default(int), int listIdx = default(int), int pageIdx = default(int), Result resultType = Result.BARCODE_POSITION) : base(bufLength, light, listIdx, pageIdx, resultType) + { + // to ensure "barcodePosition" is required (not null) + if (barcodePosition == null) + { + throw new ArgumentNullException("barcodePosition is a required property for BarcodePositionResult and cannot be null"); + } + this.BarcodePosition = barcodePosition; + } + + /// + /// Gets or Sets BarcodePosition + /// + [DataMember(Name = "BarcodePosition", IsRequired = true, EmitDefaultValue = true)] + public DocumentPosition BarcodePosition { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class BarcodePositionResult {\n"); + sb.Append(" ").Append(base.ToString().Replace("\n", "\n ")).Append("\n"); + sb.Append(" BarcodePosition: ").Append(BarcodePosition).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public override string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + return this.BaseValidate(validationContext); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + protected IEnumerable BaseValidate(ValidationContext validationContext) + { + foreach (var x in base.BaseValidate(validationContext)) + { + yield return x; + } + yield break; + } + } + +} diff --git a/src/Regula.DocumentReader.WebClient/Model/ContainerListListInner.cs b/src/Regula.DocumentReader.WebClient/Model/ContainerListListInner.cs index 0a528a0..a435bb8 100644 --- a/src/Regula.DocumentReader.WebClient/Model/ContainerListListInner.cs +++ b/src/Regula.DocumentReader.WebClient/Model/ContainerListListInner.cs @@ -167,6 +167,18 @@ public ContainerListListInner(ImageQualityResult actualInstance) this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); } + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of BarcodePositionResult. + public ContainerListListInner(BarcodePositionResult actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + /// /// Initializes a new instance of the class /// with the class @@ -329,6 +341,10 @@ public override Object ActualInstance { this._actualInstance = value; } + else if (value.GetType() == typeof(BarcodePositionResult) || value is BarcodePositionResult) + { + this._actualInstance = value; + } else if (value.GetType() == typeof(ByteArrayResult) || value is ByteArrayResult) { this._actualInstance = value; @@ -419,7 +435,7 @@ public override Object ActualInstance } else { - throw new ArgumentException("Invalid instance found. Must be the following types: AuthenticityResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult"); + throw new ArgumentException("Invalid instance found. Must be the following types: AuthenticityResult, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult"); } } } @@ -534,6 +550,16 @@ public ImageQualityResult GetImageQualityResult() return (ImageQualityResult)this.ActualInstance; } + /// + /// Get the actual instance of `BarcodePositionResult`. If the actual instance is not `BarcodePositionResult`, + /// the InvalidClassException will be thrown + /// + /// An instance of BarcodePositionResult + public BarcodePositionResult GetBarcodePositionResult() + { + return (BarcodePositionResult)this.ActualInstance; + } + /// /// Get the actual instance of `DocumentPositionResult`. If the actual instance is not `DocumentPositionResult`, /// the InvalidClassException will be thrown @@ -712,6 +738,26 @@ public static ContainerListListInner FromJson(string jsonString) System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into AuthenticityResult: {1}", jsonString, exception.ToString())); } + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(BarcodePositionResult).GetProperty("AdditionalProperties") == null) + { + newContainerListListInner = new ContainerListListInner(JsonConvert.DeserializeObject(jsonString, ContainerListListInner.SerializerSettings)); + } + else + { + newContainerListListInner = new ContainerListListInner(JsonConvert.DeserializeObject(jsonString, ContainerListListInner.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("BarcodePositionResult"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into BarcodePositionResult: {1}", jsonString, exception.ToString())); + } + try { // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize diff --git a/src/Regula.DocumentReader.WebClient/Model/DocumentPositionResult.cs b/src/Regula.DocumentReader.WebClient/Model/DocumentPositionResult.cs index 6e88238..dc14d43 100644 --- a/src/Regula.DocumentReader.WebClient/Model/DocumentPositionResult.cs +++ b/src/Regula.DocumentReader.WebClient/Model/DocumentPositionResult.cs @@ -46,8 +46,8 @@ protected DocumentPositionResult() { } /// light. /// listIdx. /// pageIdx. - /// resultType (required) (default to Result.BARCODE_POSITION). - public DocumentPositionResult(DocumentPosition documentPosition = default(DocumentPosition), int bufLength = default(int), int light = default(int), int listIdx = default(int), int pageIdx = default(int), Result resultType = Result.BARCODE_POSITION) : base(bufLength, light, listIdx, pageIdx, resultType) + /// resultType (required) (default to Result.DOCUMENT_POSITION). + public DocumentPositionResult(DocumentPosition documentPosition = default(DocumentPosition), int bufLength = default(int), int light = default(int), int listIdx = default(int), int pageIdx = default(int), Result resultType = Result.DOCUMENT_POSITION) : base(bufLength, light, listIdx, pageIdx, resultType) { // to ensure "documentPosition" is required (not null) if (documentPosition == null) diff --git a/src/Regula.DocumentReader.WebClient/Model/EncryptedRCLItem.cs b/src/Regula.DocumentReader.WebClient/Model/EncryptedRCLItem.cs index 8caa42a..2b1bfb4 100644 --- a/src/Regula.DocumentReader.WebClient/Model/EncryptedRCLItem.cs +++ b/src/Regula.DocumentReader.WebClient/Model/EncryptedRCLItem.cs @@ -56,7 +56,7 @@ protected EncryptedRCLItem() { } /// /// Base64 encoded data /* - [B@449b4f85 + [B@1c224bac */ [DataMember(Name = "EncryptedRCL", IsRequired = true, EmitDefaultValue = true)] public byte[] EncryptedRCL { get; set; } diff --git a/src/Regula.DocumentReader.WebClient/Model/EncryptedRCLResult.cs b/src/Regula.DocumentReader.WebClient/Model/EncryptedRCLResult.cs index 8051be1..a3b905f 100644 --- a/src/Regula.DocumentReader.WebClient/Model/EncryptedRCLResult.cs +++ b/src/Regula.DocumentReader.WebClient/Model/EncryptedRCLResult.cs @@ -62,7 +62,7 @@ protected EncryptedRCLResult() { } /// /// Base64 encoded data /* - [B@449b4f85 + [B@1c224bac */ [DataMember(Name = "EncryptedRCL", IsRequired = true, EmitDefaultValue = true)] public byte[] EncryptedRCL { get; set; } diff --git a/src/Regula.DocumentReader.WebClient/Model/LicenseItem.cs b/src/Regula.DocumentReader.WebClient/Model/LicenseItem.cs index 79d9b53..bb41f3c 100644 --- a/src/Regula.DocumentReader.WebClient/Model/LicenseItem.cs +++ b/src/Regula.DocumentReader.WebClient/Model/LicenseItem.cs @@ -56,7 +56,7 @@ protected LicenseItem() { } /// /// Base64 encoded data /* - [B@769d7d5d + [B@4333699a */ [DataMember(Name = "License", IsRequired = true, EmitDefaultValue = true)] public byte[] License { get; set; } diff --git a/src/Regula.DocumentReader.WebClient/Model/LicenseResult.cs b/src/Regula.DocumentReader.WebClient/Model/LicenseResult.cs index 620787a..91c4470 100644 --- a/src/Regula.DocumentReader.WebClient/Model/LicenseResult.cs +++ b/src/Regula.DocumentReader.WebClient/Model/LicenseResult.cs @@ -62,7 +62,7 @@ protected LicenseResult() { } /// /// Base64 encoded data /* - [B@769d7d5d + [B@4333699a */ [DataMember(Name = "License", IsRequired = true, EmitDefaultValue = true)] public byte[] License { get; set; } diff --git a/src/Regula.DocumentReader.WebClient/Model/ResultItem.cs b/src/Regula.DocumentReader.WebClient/Model/ResultItem.cs index c07a4d8..67eb0a7 100644 --- a/src/Regula.DocumentReader.WebClient/Model/ResultItem.cs +++ b/src/Regula.DocumentReader.WebClient/Model/ResultItem.cs @@ -61,7 +61,7 @@ namespace Regula.DocumentReader.WebClient.Model [JsonSubtypes.KnownSubType(typeof(LicenseResult), "50")] [JsonSubtypes.KnownSubType(typeof(GraphicsResult), "6")] [JsonSubtypes.KnownSubType(typeof(MRZPositionResult), "61")] - [JsonSubtypes.KnownSubType(typeof(DocumentPositionResult), "62")] + [JsonSubtypes.KnownSubType(typeof(BarcodePositionResult), "62")] [JsonSubtypes.KnownSubType(typeof(MRZTestQualityResult), "7")] [JsonSubtypes.KnownSubType(typeof(DocumentTypesCandidatesResult), "8")] [JsonSubtypes.KnownSubType(typeof(DocumentPositionResult), "85")] diff --git a/src/Regula.DocumentReader.WebClient/Model/RfidApplicationType.cs b/src/Regula.DocumentReader.WebClient/Model/RfidApplicationType.cs index 533b371..0e97964 100644 --- a/src/Regula.DocumentReader.WebClient/Model/RfidApplicationType.cs +++ b/src/Regula.DocumentReader.WebClient/Model/RfidApplicationType.cs @@ -33,9 +33,9 @@ namespace Regula.DocumentReader.WebClient.Model public enum RfidApplicationType { /// - /// Enum UNSPECIFIED for value: 0 + /// Enum ROOT_FILES for value: 0 /// - UNSPECIFIED = 0, + ROOT_FILES = 0, /// /// Enum E_PASSPORT for value: 1 @@ -75,12 +75,7 @@ public enum RfidApplicationType /// /// Enum eDTC_PC for value: 8 /// - eDTC_PC = 8, - - /// - /// Enum ROOT_FILES for value: 0 - /// - ROOT_FILES = 0 + eDTC_PC = 8 } } diff --git a/src/Regula.DocumentReader.WebClient/Model/RfidDG1.cs b/src/Regula.DocumentReader.WebClient/Model/RfidDG1.cs index cbbab52..d5f25a0 100644 --- a/src/Regula.DocumentReader.WebClient/Model/RfidDG1.cs +++ b/src/Regula.DocumentReader.WebClient/Model/RfidDG1.cs @@ -33,12 +33,6 @@ namespace Regula.DocumentReader.WebClient.Model public partial class RfidDG1 : IValidatableObject { - /// - /// Gets or Sets Type - /// - [DataMember(Name = "Type", IsRequired = true, EmitDefaultValue = true)] - public RfidDataGroupTypeTag Type { get; set; } - /// /// Gets or Sets DocumentID /// @@ -68,7 +62,7 @@ protected RfidDG1() { } /// DO’s personal number or other additional data (required). /// Check digit of additional data (required). /// General check digit (required). - public RfidDG1(RfidDataGroupTypeTag type = default(RfidDataGroupTypeTag), DocumentFormat documentID = default(DocumentFormat), string documentType = default(string), string state = default(string), string holder = default(string), string documentNumber = default(string), decimal checkDigitDocumentNumber = default(decimal), string nationality = default(string), string birthday = default(string), decimal checkDigitBirthday = default(decimal), string sex = default(string), string expiryDate = default(string), decimal checkDigitExpiryDate = default(decimal), string optionalData = default(string), decimal checkDigitOptionalData = default(decimal), decimal checkDigitComposite = default(decimal)) + public RfidDG1(int type = default(int), DocumentFormat documentID = default(DocumentFormat), string documentType = default(string), string state = default(string), string holder = default(string), string documentNumber = default(string), decimal checkDigitDocumentNumber = default(decimal), string nationality = default(string), string birthday = default(string), decimal checkDigitBirthday = default(decimal), string sex = default(string), string expiryDate = default(string), decimal checkDigitExpiryDate = default(decimal), string optionalData = default(string), decimal checkDigitOptionalData = default(decimal), decimal checkDigitComposite = default(decimal)) { this.Type = type; this.DocumentID = documentID; @@ -133,6 +127,12 @@ protected RfidDG1() { } this.CheckDigitComposite = checkDigitComposite; } + /// + /// Gets or Sets Type + /// + [DataMember(Name = "Type", IsRequired = true, EmitDefaultValue = true)] + public int Type { get; set; } + /// /// Symbolic code of document type ///