Skip to content

SP-20990 fix autheticity #158

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Feb 17, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,32 +9,38 @@
*/

using System;
using System.Linq;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Runtime.Serialization;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using JsonSubTypes;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Regula.DocumentReader.WebClient.Client.OpenAPIDateConverter;
using Regula.DocumentReader.WebClient.Model.Ext.Autheticity;

namespace Regula.DocumentReader.WebClient.Model
{
/// <summary>
/// Common fields for all authenticity result objects
/// </summary>
[DataContract]
[JsonConverter(typeof(JsonSubtypes), "type")]
[JsonSubtypes.KnownSubType(typeof(PhotoIdentResult), "PhotoIdentResult")]
[JsonSubtypes.KnownSubType(typeof(OCRSecurityTextResult), "OCRSecurityTextResult")]
[JsonSubtypes.KnownSubType(typeof(SecurityFeatureResult), "SecurityFeatureResult")]
[JsonSubtypes.KnownSubType(typeof(IdentResult), "IdentResult")]
[JsonSubtypes.KnownSubType(typeof(FiberResult), "FiberResult")]
[JsonConverter(typeof(JsonSubtypes), "Type")]
[JsonSubtypes.KnownSubType(typeof(SecurityFeatureResult), AuthenticityResultType.UV_LUMINESCENCE)]
[JsonSubtypes.KnownSubType(typeof(SecurityFeatureResult), AuthenticityResultType.IR_B900)]
[JsonSubtypes.KnownSubType(typeof(IdentResult), AuthenticityResultType.IMAGE_PATTERN)]
[JsonSubtypes.KnownSubType(typeof(SecurityFeatureResult), AuthenticityResultType.AXIAL_PROTECTION)]
[JsonSubtypes.KnownSubType(typeof(FiberResult), AuthenticityResultType.UV_FIBERS)]
[JsonSubtypes.KnownSubType(typeof(IdentResult), AuthenticityResultType.IR_VISIBILITY)]
[JsonSubtypes.KnownSubType(typeof(OCRSecurityTextResult), AuthenticityResultType.OCR_SECURITY_TEXT)]
[JsonSubtypes.KnownSubType(typeof(ImageIdentChecks), AuthenticityResultType.IPI)]
[JsonSubtypes.KnownSubType(typeof(SecurityFeatureResult), AuthenticityResultType.PHOTO_EMBED_TYPE)]
[JsonSubtypes.KnownSubType(typeof(SecurityFeatureResult), AuthenticityResultType.HOLOGRAMS)]
[JsonSubtypes.KnownSubType(typeof(SecurityFeatureResult), AuthenticityResultType.OVI)]
[JsonSubtypes.KnownSubType(typeof(SecurityFeatureResult), AuthenticityResultType.PHOTO_AREA)]
[JsonSubtypes.KnownSubType(typeof(IdentResult), AuthenticityResultType.PORTRAIT_COMPARISON)]
[JsonSubtypes.KnownSubType(typeof(SecurityFeatureResult), AuthenticityResultType.BARCODE_FORMAT_CHECK)]
[JsonSubtypes.KnownSubType(typeof(IdentResult), AuthenticityResultType.KINEGRAM)]
[JsonSubtypes.KnownSubType(typeof(IdentResult), AuthenticityResultType.LETTER_SCREEN)]
public partial class AuthenticityCheckResultItem : IEquatable<AuthenticityCheckResultItem>, IValidatableObject
{
/// <summary>
Expand Down
20 changes: 19 additions & 1 deletion src/Regula.DocumentReader.WebClient/Model/ImageQA.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,8 @@ public partial class ImageQA : IEquatable<ImageQA>, IValidatableObject
/// <param name="glaresCheck">This option enables glares check while performing image quality validation..</param>
/// <param name="colornessCheck">This option enables colorness check while performing image quality validation..</param>
/// <param name="documentPositionIndent">This parameter specifies the necessary margin. Default 0..</param>
public ImageQA(double brightnessThreshold = default(double), int dpiThreshold = default(int), int angleThreshold = default(int), bool? focusCheck = default(bool?), bool? glaresCheck = default(bool?), bool? colornessCheck = default(bool?), int documentPositionIndent = default(int))
/// <param name="expectedPass">This parameter controls the quality checks that the image should pass to be considered a valid input during the scanning process..</param>
public ImageQA(double brightnessThreshold = default(double), int dpiThreshold = default(int), int angleThreshold = default(int), bool? focusCheck = default(bool?), bool? glaresCheck = default(bool?), bool? colornessCheck = default(bool?), int documentPositionIndent = default(int), List<InputImageQualityChecks> expectedPass = default(List<InputImageQualityChecks>))
{
this.BrightnessThreshold = brightnessThreshold;
this.DpiThreshold = dpiThreshold;
Expand All @@ -49,6 +50,7 @@ public partial class ImageQA : IEquatable<ImageQA>, IValidatableObject
this.GlaresCheck = glaresCheck;
this.ColornessCheck = colornessCheck;
this.DocumentPositionIndent = documentPositionIndent;
this.ExpectedPass = expectedPass;
}

/// <summary>
Expand Down Expand Up @@ -100,6 +102,13 @@ public partial class ImageQA : IEquatable<ImageQA>, IValidatableObject
[DataMember(Name="documentPositionIndent", EmitDefaultValue=false)]
public int DocumentPositionIndent { get; set; }

/// <summary>
/// This parameter controls the quality checks that the image should pass to be considered a valid input during the scanning process.
/// </summary>
/// <value>This parameter controls the quality checks that the image should pass to be considered a valid input during the scanning process.</value>
[DataMember(Name="expectedPass", EmitDefaultValue=false)]
public List<InputImageQualityChecks> ExpectedPass { get; set; }

/// <summary>
/// Returns the string presentation of the object
/// </summary>
Expand All @@ -115,6 +124,7 @@ public override string ToString()
sb.Append(" GlaresCheck: ").Append(GlaresCheck).Append("\n");
sb.Append(" ColornessCheck: ").Append(ColornessCheck).Append("\n");
sb.Append(" DocumentPositionIndent: ").Append(DocumentPositionIndent).Append("\n");
sb.Append(" ExpectedPass: ").Append(ExpectedPass).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
Expand Down Expand Up @@ -183,6 +193,12 @@ public bool Equals(ImageQA input)
this.DocumentPositionIndent == input.DocumentPositionIndent ||
(this.DocumentPositionIndent != null &&
this.DocumentPositionIndent.Equals(input.DocumentPositionIndent))
) &&
(
this.ExpectedPass == input.ExpectedPass ||
this.ExpectedPass != null &&
input.ExpectedPass != null &&
this.ExpectedPass.SequenceEqual(input.ExpectedPass)
);
}

Expand All @@ -209,6 +225,8 @@ public override int GetHashCode()
hashCode = hashCode * 59 + this.ColornessCheck.GetHashCode();
if (this.DocumentPositionIndent != null)
hashCode = hashCode * 59 + this.DocumentPositionIndent.GetHashCode();
if (this.ExpectedPass != null)
hashCode = hashCode * 59 + this.ExpectedPass.GetHashCode();
return hashCode;
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
/*
* 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: 7.2.0
*
* Generated by: https://github.com/openapitools/openapi-generator.git
*/

using System;
using System.Linq;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Runtime.Serialization;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System.ComponentModel.DataAnnotations;
using OpenAPIDateConverter = Regula.DocumentReader.WebClient.Client.OpenAPIDateConverter;

namespace Regula.DocumentReader.WebClient.Model
{
/// <summary>
/// Input image quality checks for the document processing
/// </summary>
/// <value>Input image quality checks for the document processing</value>

[JsonConverter(typeof(StringEnumConverter))]

public enum InputImageQualityChecks
{
/// <summary>
/// Enum Glares for value: glaresCheck
/// </summary>
[EnumMember(Value = "glaresCheck")]
Glares = 1,

/// <summary>
/// Enum Focus for value: focusCheck
/// </summary>
[EnumMember(Value = "focusCheck")]
Focus = 2,

/// <summary>
/// Enum Resolution for value: dpiThreshold
/// </summary>
[EnumMember(Value = "dpiThreshold")]
Resolution = 3,

/// <summary>
/// Enum Colorness for value: colornessCheck
/// </summary>
[EnumMember(Value = "colornessCheck")]
Colorness = 4,

/// <summary>
/// Enum Perspective for value: perspectiveCheck
/// </summary>
[EnumMember(Value = "perspectiveCheck")]
Perspective = 5,

/// <summary>
/// Enum Bounds for value: documentPosition
/// </summary>
[EnumMember(Value = "documentPosition")]
Bounds = 6,

/// <summary>
/// Enum Portrait for value: portraitCheck
/// </summary>
[EnumMember(Value = "portraitCheck")]
Portrait = 7,

/// <summary>
/// Enum Brightness for value: brightnessCheck
/// </summary>
[EnumMember(Value = "brightnessCheck")]
Brightness = 8

}

}
Original file line number Diff line number Diff line change
Expand Up @@ -33,34 +33,20 @@ public partial class ProcessRequestImage : IEquatable<ProcessRequestImage>, IVa
/// <summary>
/// Initializes a new instance of the <see cref="ProcessRequestImage" /> class.
/// </summary>
[JsonConstructorAttribute]
protected ProcessRequestImage() { }
/// <summary>
/// Initializes a new instance of the <see cref="ProcessRequestImage" /> class.
/// </summary>
/// <param name="imageData">imageData (required).</param>
/// <param name="imageData">imageData.</param>
/// <param name="light">light.</param>
/// <param name="pageIdx">page/image number.</param>
public ProcessRequestImage(ImageData imageData = default(ImageData), int light = default(int), int pageIdx = default(int))
{
// to ensure "imageData" is required (not null)
if (imageData == null)
{
throw new InvalidDataException("imageData is a required property for ProcessRequestImage and cannot be null");
}
else
{
this.ImageData = imageData;
}

this.ImageData = imageData;
this.Light = light;
this.PageIdx = pageIdx;
}

/// <summary>
/// Gets or Sets ImageData
/// </summary>
[DataMember(Name="ImageData", EmitDefaultValue=true)]
[DataMember(Name="ImageData", EmitDefaultValue=false)]
public ImageData ImageData { get; set; }

/// <summary>
Expand Down
Loading