diff --git a/Exadel.Compreface/Clients/ApiClient/ApiClient.cs b/Exadel.Compreface/Clients/ApiClient/ApiClient.cs
index 564537e5..bbb8e3f9 100644
--- a/Exadel.Compreface/Clients/ApiClient/ApiClient.cs
+++ b/Exadel.Compreface/Clients/ApiClient/ApiClient.cs
@@ -1,4 +1,8 @@
-using Exadel.Compreface.Configuration;
+using System;
+using System.Net.Http;
+using System.Threading;
+using System.Threading.Tasks;
+using Exadel.Compreface.Configuration;
using Flurl.Http.Content;
using Flurl.Http;
using Flurl;
diff --git a/Exadel.Compreface/Clients/ApiClient/IApiClient.cs b/Exadel.Compreface/Clients/ApiClient/IApiClient.cs
index 0a7560b2..e7295bb6 100644
--- a/Exadel.Compreface/Clients/ApiClient/IApiClient.cs
+++ b/Exadel.Compreface/Clients/ApiClient/IApiClient.cs
@@ -1,4 +1,8 @@
-using Flurl;
+using System;
+using System.Net.Http;
+using System.Threading;
+using System.Threading.Tasks;
+using Flurl;
using Flurl.Http.Content;
namespace Exadel.Compreface.Clients.ApiClient
diff --git a/Exadel.Compreface/Clients/CompreFaceClient/CompreFaceClient.cs b/Exadel.Compreface/Clients/CompreFaceClient/CompreFaceClient.cs
index dc1e177d..0ecf8d26 100644
--- a/Exadel.Compreface/Clients/CompreFaceClient/CompreFaceClient.cs
+++ b/Exadel.Compreface/Clients/CompreFaceClient/CompreFaceClient.cs
@@ -1,126 +1,136 @@
-using Exadel.Compreface.Configuration;
+using System;
+using System.Collections.Generic;
+using Exadel.Compreface.Configuration;
using Exadel.Compreface.Exceptions;
using Exadel.Compreface.Services.Attributes;
using Microsoft.Extensions.Configuration;
using System.Reflection;
+using Exadel.Compreface.Helpers;
-namespace Exadel.Compreface.Clients.CompreFaceClient;
-
-///
-/// Global CompreFace provider.
-///
-public class CompreFaceClient : ICompreFaceClient
+namespace Exadel.Compreface.Clients.CompreFaceClient
{
- private readonly string _domain;
- private readonly string _port;
-
- private readonly Dictionary _services = new();
-
///
- /// Constructor for string parameters.
+ /// Global CompreFace provider.
///
- /// Domain with protocol where CompreFace is located.
- /// CompreFace port.
- /// Is throwed if one of the parameters is null.
- public CompreFaceClient(string? domain, string? port)
+ public class CompreFaceClient : ICompreFaceClient
{
- _domain = domain ?? throw new ArgumentNullException($"{nameof(domain)} cannot be null!");
- _port = port ?? throw new ArgumentNullException($"{nameof(port)} cannot be null!");
- }
+ private readonly string _domain;
+ private readonly string _port;
+
+ private readonly Dictionary
+ _services = new Dictionary();
+
+ ///
+ /// Constructor for string parameters.
+ ///
+ /// Domain with protocol where CompreFace is located.
+ /// CompreFace port.
+ /// Is throwed if one of the parameters is null.
+ public CompreFaceClient(string domain, string port)
+ {
+ _domain = domain ?? throw new ArgumentNullException($"{nameof(domain)} cannot be null!");
+ _port = port ?? throw new ArgumentNullException($"{nameof(port)} cannot be null!");
+ }
- ///
- /// Constructor allows to setup CompreFaceClient from appsettings.json.
- ///
- /// IConfiguration object.
- /// Name of the section for domain parameter in an appsetting.json file.
- /// Name of the section for port parameter in an appsetting.json file.
- /// Is throwed if one of the sections in appseting.json doesn't have a value.
- public CompreFaceClient(IConfiguration configuration, string? domainSection, string? portSection)
- {
- _domain = configuration.GetSection(domainSection).Value ?? throw new ArgumentNullException($"{nameof(domainSection)} cannot be null!");
- _port = configuration.GetSection(portSection).Value ?? throw new ArgumentNullException($"{nameof(portSection)} cannot be null!");
- }
+ ///
+ /// Constructor allows to setup CompreFaceClient from appsettings.json.
+ ///
+ /// IConfiguration object.
+ /// Name of the section for domain parameter in an appsetting.json file.
+ /// Name of the section for port parameter in an appsetting.json file.
+ /// Is throwed if one of the sections in appseting.json doesn't have a value.
+ public CompreFaceClient(IConfiguration configuration, string domainSection, string portSection)
+ {
+ _domain = configuration.GetSection(domainSection).Value ??
+ throw new ArgumentNullException($"{nameof(domainSection)} cannot be null!");
+ _port = configuration.GetSection(portSection).Value ??
+ throw new ArgumentNullException($"{nameof(portSection)} cannot be null!");
+ }
- ///
- /// Creates instance of the service.
- ///
- /// Type of the service.
- /// Api key string from CompreFace.
- /// Is throwed if T doesn't belong to CompreFace services.
- /// var faceVerificationService = client.GetCompreFaceService("00000000-0000-0000-0000-000000000004")
- /// Service instance.
- public T GetCompreFaceService(string apiKey) where T : class
- {
- var compreFaceService = GetService(apiKey, typeof(T));
+ ///
+ /// Creates instance of the service.
+ ///
+ /// Type of the service.
+ /// Api key string from CompreFace.
+ /// Is throwed if T doesn't belong to CompreFace services.
+ /// var faceVerificationService = client.GetCompreFaceService("00000000-0000-0000-0000-000000000004")
+ /// Service instance.
+ public T GetCompreFaceService(string apiKey) where T : class
+ {
+ var compreFaceService = GetService(apiKey, typeof(T));
- return (T)compreFaceService;
- }
+ return (T)compreFaceService;
+ }
- ///
- /// Creates instance of the service with api key from appsettings.json file.
- ///
- ///
- /// IConfiguration object.
- /// Name of the section for api key parameter in an appsetting.json file.
- /// Is throwed if T doesn't belong to CompreFace services.
- /// Is throwed if api key section in appseting.json doesn't have a value.
- /// Service instance.
- public T GetCompreFaceService(IConfiguration configuration, string apiKeySection) where T : class
- {
+ ///
+ /// Creates instance of the service with api key from appsettings.json file.
+ ///
+ ///
+ /// IConfiguration object.
+ /// Name of the section for api key parameter in an appsetting.json file.
+ /// Is throwed if T doesn't belong to CompreFace services.
+ /// Is throwed if api key section in appseting.json doesn't have a value.
+ /// Service instance.
+ public T GetCompreFaceService(IConfiguration configuration, string apiKeySection) where T : class
+ {
- var apiKey = configuration.GetSection(apiKeySection).Value ?? throw new ArgumentNullException($"{nameof(apiKeySection)} cannot be null!");
- var compreFaceService = GetService(apiKey, typeof(T));
+ var apiKey = configuration.GetSection(apiKeySection).Value ??
+ throw new ArgumentNullException($"{nameof(apiKeySection)} cannot be null!");
+ var compreFaceService = GetService(apiKey, typeof(T));
- return (T)compreFaceService;
- }
+ return (T)compreFaceService;
+ }
- private object GetService(string apiKey, Type type)
- {
- try
+ private object GetService(string apiKey, Type type)
{
- var key = new ServiceDictionaryKey(apiKey, type);
- var baseService = _services.GetValueOrDefault(key);
-
- if (baseService == null)
+ try
{
- var config = new ComprefaceConfiguration(apiKey, _domain, _port);
- var apiClient = new ApiClient.ApiClient(config);
- baseService = ReturnServiceIfTypeIsValid(type, config, apiClient);
+ var key = new ServiceDictionaryKey(apiKey, type);
+ var baseService = _services.GetValueOrDefault(key);
- _services.Add(key, baseService!);
- }
+ if (baseService == null)
+ {
+ var config = new ComprefaceConfiguration(apiKey, _domain, _port);
+ var apiClient = new ApiClient.ApiClient(config);
+ baseService = ReturnServiceIfTypeIsValid(type, config, apiClient);
- return baseService;
- }
- catch (Exception)
- {
- throw;
+ _services.Add(key, baseService);
+ }
+
+ return baseService;
+ }
+ catch (Exception)
+ {
+ throw;
+ }
}
- }
- private object ReturnServiceIfTypeIsValid(Type type, ComprefaceConfiguration config, ApiClient.ApiClient apiClient)
- {
- object baseService = null;
+ private object ReturnServiceIfTypeIsValid(Type type, ComprefaceConfiguration config,
+ ApiClient.ApiClient apiClient)
+ {
+ object baseService = null;
- if (type.GetCustomAttribute(typeof(CompreFaceService)) != null)
- baseService = Activator.CreateInstance(type, config, apiClient);
+ if (type.GetCustomAttribute(typeof(CompreFaceService)) != null)
+ baseService = Activator.CreateInstance(type, config, apiClient);
- if (baseService == null)
- throw new TypeNotBelongCompreFaceException("Type doesn't belong to CompreFace services. Class should be covered by CompreFaceService attribute.");
+ if (baseService == null)
+ throw new TypeNotBelongCompreFaceException(
+ "Type doesn't belong to CompreFace services. Class should be covered by CompreFaceService attribute.");
- return baseService;
- }
+ return baseService;
+ }
- private class ServiceDictionaryKey
- {
- public string ApiKey { get; set; }
+ private class ServiceDictionaryKey
+ {
+ public string ApiKey { get; set; }
- public Type Type { get; set; }
+ public Type Type { get; set; }
- public ServiceDictionaryKey(string apiKey, Type type)
- {
- ApiKey = apiKey;
- Type = type;
+ public ServiceDictionaryKey(string apiKey, Type type)
+ {
+ ApiKey = apiKey;
+ Type = type;
+ }
}
}
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Clients/CompreFaceClient/ICompreFaceClient.cs b/Exadel.Compreface/Clients/CompreFaceClient/ICompreFaceClient.cs
index 95cac260..3c217148 100644
--- a/Exadel.Compreface/Clients/CompreFaceClient/ICompreFaceClient.cs
+++ b/Exadel.Compreface/Clients/CompreFaceClient/ICompreFaceClient.cs
@@ -4,8 +4,8 @@ namespace Exadel.Compreface.Clients.CompreFaceClient
{
public interface ICompreFaceClient
{
- public T GetCompreFaceService(string apiKey) where T : class;
+ T GetCompreFaceService(string apiKey) where T : class;
- public T GetCompreFaceService(IConfiguration configuration, string apiKeySection) where T : class;
+ T GetCompreFaceService(IConfiguration configuration, string apiKeySection) where T : class;
}
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Configuration/ComprefaceConfiguration.cs b/Exadel.Compreface/Configuration/ComprefaceConfiguration.cs
index a61957db..959cf1e6 100644
--- a/Exadel.Compreface/Configuration/ComprefaceConfiguration.cs
+++ b/Exadel.Compreface/Configuration/ComprefaceConfiguration.cs
@@ -1,27 +1,30 @@
-namespace Exadel.Compreface.Configuration;
+using System;
-///
-/// Setups main parameters for the CompreFace API.
-///
-public class ComprefaceConfiguration : IComprefaceConfiguration
+namespace Exadel.Compreface.Configuration
{
- public string Domain { get; set; }
-
- public string Port { get; set; }
-
- public string ApiKey { get; set; }
-
///
- ///
+ /// Setups main parameters for the CompreFace API.
///
- /// Api key of a service from CompreFace.
- /// Domain with protocol where CompreFace is located.
- /// CompreFace port.
- /// Is throwed if one of the parameters is null.
- public ComprefaceConfiguration(string apiKey, string domain, string port)
+ public class ComprefaceConfiguration : IComprefaceConfiguration
{
- Domain = domain ?? throw new ArgumentNullException($"{nameof(domain)} cannot be null!");
- Port = port ?? throw new ArgumentNullException($"{nameof(port)} cannot be null!");
- ApiKey = apiKey ?? throw new ArgumentNullException($"{nameof(apiKey)} cannot be null!");
+ public string Domain { get; set; }
+
+ public string Port { get; set; }
+
+ public string ApiKey { get; set; }
+
+ ///
+ ///
+ ///
+ /// Api key of a service from CompreFace.
+ /// Domain with protocol where CompreFace is located.
+ /// CompreFace port.
+ /// Is throwed if one of the parameters is null.
+ public ComprefaceConfiguration(string apiKey, string domain, string port)
+ {
+ Domain = domain ?? throw new ArgumentNullException($"{nameof(domain)} cannot be null!");
+ Port = port ?? throw new ArgumentNullException($"{nameof(port)} cannot be null!");
+ ApiKey = apiKey ?? throw new ArgumentNullException($"{nameof(apiKey)} cannot be null!");
+ }
}
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Configuration/IComprefaceConfiguration.cs b/Exadel.Compreface/Configuration/IComprefaceConfiguration.cs
index 9c9a3a1f..068d4712 100644
--- a/Exadel.Compreface/Configuration/IComprefaceConfiguration.cs
+++ b/Exadel.Compreface/Configuration/IComprefaceConfiguration.cs
@@ -1,10 +1,11 @@
-namespace Exadel.Compreface.Configuration;
-
-public interface IComprefaceConfiguration
+namespace Exadel.Compreface.Configuration
{
- public string Domain { get; }
+ public interface IComprefaceConfiguration
+ {
+ string Domain { get; }
- public string Port { get; }
+ string Port { get; }
- public string ApiKey { get; }
+ string ApiKey { get; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/AddSubjectExample/AddSubjectExampleRequestByFilePath.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/AddSubjectExample/AddSubjectExampleRequestByFilePath.cs
index 8d204e80..74cffa00 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/AddSubjectExample/AddSubjectExampleRequestByFilePath.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/AddSubjectExample/AddSubjectExampleRequestByFilePath.cs
@@ -1,14 +1,15 @@
using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
-namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.AddSubjectExample;
-
-///
-/// DTO helps to create an example of the subject by saving images.
-///
-public class AddSubjectExampleRequestByFilePath : BaseExampleRequest
+namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.AddSubjectExample
{
///
- /// Full file path.
+ /// DTO helps to create an example of the subject by saving images.
///
- public string FilePath { get; set; }
+ public class AddSubjectExampleRequestByFilePath : BaseExampleRequest
+ {
+ ///
+ /// Full file path.
+ ///
+ public string FilePath { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/AddSubjectExample/AddSubjectExampleResponse.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/AddSubjectExample/AddSubjectExampleResponse.cs
index 41fddcb1..1464a8bc 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/AddSubjectExample/AddSubjectExampleResponse.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/AddSubjectExample/AddSubjectExampleResponse.cs
@@ -1,8 +1,11 @@
-namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.AddSubjectExample;
+using System;
-public class AddSubjectExampleResponse
+namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.AddSubjectExample
{
- public Guid ImageId { get; set; }
+ public class AddSubjectExampleResponse
+ {
+ public Guid ImageId { get; set; }
- public string Subject { get; set; }
+ public string Subject { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteImageById/DeleteImageByIdRequest.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteImageById/DeleteImageByIdRequest.cs
index 86dfe22c..a0d1f1c2 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteImageById/DeleteImageByIdRequest.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteImageById/DeleteImageByIdRequest.cs
@@ -1,4 +1,6 @@
-namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteImageById
+using System;
+
+namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteImageById
{
public class DeleteImageByIdRequest
{
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteImageById/DeleteImageByIdResponse.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteImageById/DeleteImageByIdResponse.cs
index e9b99ba6..e33c3b1c 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteImageById/DeleteImageByIdResponse.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteImageById/DeleteImageByIdResponse.cs
@@ -1,4 +1,6 @@
-namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteImageById
+using System;
+
+namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteImageById
{
public class DeleteImageByIdResponse
{
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteMultipleExamples/DeleteMultipleExamplesRequest.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteMultipleExamples/DeleteMultipleExamplesRequest.cs
index b911e83d..1358d63e 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteMultipleExamples/DeleteMultipleExamplesRequest.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteMultipleExamples/DeleteMultipleExamplesRequest.cs
@@ -1,4 +1,7 @@
-namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteMultipleExamples
+using System;
+using System.Collections.Generic;
+
+namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteMultipleExamples
{
public class DeleteMultipleExampleRequest
{
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteMultipleExamples/DeleteMultipleExamplesResponse.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteMultipleExamples/DeleteMultipleExamplesResponse.cs
index 832ed9c5..95d8ffe1 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteMultipleExamples/DeleteMultipleExamplesResponse.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DeleteMultipleExamples/DeleteMultipleExamplesResponse.cs
@@ -1,4 +1,5 @@
-using Exadel.Compreface.DTOs.HelperDTOs;
+using System.Collections.Generic;
+using Exadel.Compreface.DTOs.HelperDTOs;
namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteMultipleExamples
{
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DownloadImageById/DownloadImageByIdDirectlyRequest.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DownloadImageById/DownloadImageByIdDirectlyRequest.cs
index 7f25019b..045cf62d 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DownloadImageById/DownloadImageByIdDirectlyRequest.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DownloadImageById/DownloadImageByIdDirectlyRequest.cs
@@ -1,4 +1,6 @@
-namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DownloadImageById
+using System;
+
+namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DownloadImageById
{
///
/// DTO for direct example downloading from recognition service.
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DownloadImageByIdFromSubject/DownloadImageByIdFromSubjectRequest.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DownloadImageByIdFromSubject/DownloadImageByIdFromSubjectRequest.cs
index f0246d9e..b6567356 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/DownloadImageByIdFromSubject/DownloadImageByIdFromSubjectRequest.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/DownloadImageByIdFromSubject/DownloadImageByIdFromSubjectRequest.cs
@@ -1,4 +1,6 @@
-namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DownloadImageByIdFromSubject
+using System;
+
+namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.DownloadImageByIdFromSubject
{
///
/// DTO for downloading of example from subject.
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/ListAllSubjectExamples/ListAllSubjectExamplesRequest.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/ListAllSubjectExamples/ListAllSubjectExamplesRequest.cs
index f937e0f7..f55e49f0 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/ListAllSubjectExamples/ListAllSubjectExamplesRequest.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/ListAllSubjectExamples/ListAllSubjectExamplesRequest.cs
@@ -1,22 +1,23 @@
-namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.ListAllExampleSubject;
-
-///
-/// DTO helps to retrieve a list of subjects saved in a Face Collection.
-///
-public class ListAllSubjectExamplesRequest
+namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.ListAllExampleSubject
{
///
- /// Page number of examples to return. Can be used for pagination. Default value is 0.
+ /// DTO helps to retrieve a list of subjects saved in a Face Collection.
///
- public int? Page { get; set; }
+ public class ListAllSubjectExamplesRequest
+ {
+ ///
+ /// Page number of examples to return. Can be used for pagination. Default value is 0.
+ ///
+ public int? Page { get; set; }
- ///
- /// Faces on page (page size). Can be used for pagination. Default value is 20.
- ///
- public int? Size { get; set; }
+ ///
+ /// Faces on page (page size). Can be used for pagination. Default value is 20.
+ ///
+ public int? Size { get; set; }
- ///
- /// What subject examples endpoint should return. If empty, return examples for all subjects.
- ///
- public string Subject { get; set; }
+ ///
+ /// What subject examples endpoint should return. If empty, return examples for all subjects.
+ ///
+ public string Subject { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/FaceCollectionDTOs/ListAllSubjectExamples/ListAllSubjectExamplesResponse.cs b/Exadel.Compreface/DTOs/FaceCollectionDTOs/ListAllSubjectExamples/ListAllSubjectExamplesResponse.cs
index 7b869a14..e64962ab 100644
--- a/Exadel.Compreface/DTOs/FaceCollectionDTOs/ListAllSubjectExamples/ListAllSubjectExamplesResponse.cs
+++ b/Exadel.Compreface/DTOs/FaceCollectionDTOs/ListAllSubjectExamples/ListAllSubjectExamplesResponse.cs
@@ -1,16 +1,18 @@
-using Exadel.Compreface.DTOs.HelperDTOs;
+using System.Collections.Generic;
+using Exadel.Compreface.DTOs.HelperDTOs;
-namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.ListAllExampleSubject;
-
-public class ListAllSubjectExamplesResponse
+namespace Exadel.Compreface.DTOs.FaceCollectionDTOs.ListAllExampleSubject
{
- public IList Faces { get; set; }
+ public class ListAllSubjectExamplesResponse
+ {
+ public IList Faces { get; set; }
+
+ public int PageNumber { get; set; }
+
+ public int PageSize { get; set; }
- public int PageNumber { get; set; }
+ public int TotalPages { get; set; }
- public int PageSize { get; set; }
-
- public int TotalPages { get; set; }
-
- public int TotalElements { get; set; }
+ public int TotalElements { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/FaceDetectionDTOs/FaceDetection/FaceDetectionResponse.cs b/Exadel.Compreface/DTOs/FaceDetectionDTOs/FaceDetection/FaceDetectionResponse.cs
index 9cede2e7..8bb2a958 100644
--- a/Exadel.Compreface/DTOs/FaceDetectionDTOs/FaceDetection/FaceDetectionResponse.cs
+++ b/Exadel.Compreface/DTOs/FaceDetectionDTOs/FaceDetection/FaceDetectionResponse.cs
@@ -1,4 +1,5 @@
-using Exadel.Compreface.DTOs.HelperDTOs;
+using System.Collections.Generic;
+using Exadel.Compreface.DTOs.HelperDTOs;
using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
namespace Exadel.Compreface.DTOs.FaceDetectionDTOs.FaceDetection
diff --git a/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationRequestByFilePath.cs b/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationRequestByFilePath.cs
index 7ff5027f..2ac902ec 100644
--- a/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationRequestByFilePath.cs
+++ b/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationRequestByFilePath.cs
@@ -1,10 +1,11 @@
using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
-namespace Exadel.Compreface.DTOs.FaceVerificationDTOs.FaceVerification;
-
-public class FaceVerificationRequestByFilePath : BaseFaceRequest
+namespace Exadel.Compreface.DTOs.FaceVerificationDTOs.FaceVerification
{
- public string SourceImageFilePath { get; set; }
+ public class FaceVerificationRequestByFilePath : BaseFaceRequest
+ {
+ public string SourceImageFilePath { get; set; }
- public string TargetImageFilePath { get; set; }
+ public string TargetImageFilePath { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationResponse.cs b/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationResponse.cs
index e7ae6d04..8271b4fb 100644
--- a/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationResponse.cs
+++ b/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationResponse.cs
@@ -1,26 +1,30 @@
+using System.Collections.Generic;
using Exadel.Compreface.DTOs.HelperDTOs;
using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
-namespace Exadel.Compreface.DTOs.FaceVerificationDTOs.FaceVerification;
-
-public class FaceVerificationResponse
+namespace Exadel.Compreface.DTOs.FaceVerificationDTOs.FaceVerification
{
- public IList Result { get; set; }
-}
-public class Result
-{
- public SourceImageFace SourceImageFace { get; set; }
+ public class FaceVerificationResponse
+ {
+ public IList Result { get; set; }
+ }
- public IList FaceMatches { get; set; }
+ public class Result
+ {
+ public SourceImageFace SourceImageFace { get; set; }
- public PluginVersions PluginsVersions { get; set; }
-}
+ public IList FaceMatches { get; set; }
-public class SourceImageFace : BaseResult
-{ }
+ public PluginVersions PluginsVersions { get; set; }
+ }
-public class FaceMatches : BaseResult
-{
- public decimal Similarity { get; set; }
+ public class SourceImageFace : BaseResult
+ {
+ }
+
+ public class FaceMatches : BaseResult
+ {
+ public decimal Similarity { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationWithBase64Request.cs b/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationWithBase64Request.cs
index f5364a9f..ee012a90 100644
--- a/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationWithBase64Request.cs
+++ b/Exadel.Compreface/DTOs/FaceVerificationDTOs/FaceVerification/FaceVerificationWithBase64Request.cs
@@ -1,10 +1,12 @@
using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
-namespace Exadel.Compreface.DTOs.FaceVerificationDTOs.FaceVerification;
-
-public class FaceVerificationWithBase64Request : BaseFaceRequest
+namespace Exadel.Compreface.DTOs.FaceVerificationDTOs.FaceVerification
{
- public string SourceImageWithBase64 { get; set; }
- public string TargetImageWithBase64 { get; set; }
+ public class FaceVerificationWithBase64Request : BaseFaceRequest
+ {
+ public string SourceImageWithBase64 { get; set; }
+
+ public string TargetImageWithBase64 { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/Age.cs b/Exadel.Compreface/DTOs/HelperDTOs/Age.cs
index f4f1d397..20332b8b 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/Age.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/Age.cs
@@ -1,10 +1,12 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs;
-
-public class Age
+namespace Exadel.Compreface.DTOs.HelperDTOs
{
- public decimal Probability { get; set; }
- public int High { get; set; }
+ public class Age
+ {
+ public decimal Probability { get; set; }
+
+ public int High { get; set; }
- public int Low { get; set; }
+ public int Low { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/BaseDTOs/BaseFaceRequest.cs b/Exadel.Compreface/DTOs/HelperDTOs/BaseDTOs/BaseFaceRequest.cs
index 9a3d04c7..f5716e2a 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/BaseDTOs/BaseFaceRequest.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/BaseDTOs/BaseFaceRequest.cs
@@ -1,27 +1,31 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
+using System.Collections.Generic;
-///
-/// Base class with several common properties.
-///
-public class BaseFaceRequest
+namespace Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs
{
- ///
- /// Optional property: maximum number of faces on the image to be recognized. It recognizes the biggest faces first. Value of 0 represents no limit. Default value: 0.
- ///
- public int? Limit { get; set; }
///
- /// Optional property: minimum required confidence that a recognized face is actually a face. Value is between 0.0 and 1.0.
+ /// Base class with several common properties.
///
- public decimal DetProbThreshold { get; set; }
+ public class BaseFaceRequest
+ {
+ ///
+ /// Optional property: maximum number of faces on the image to be recognized. It recognizes the biggest faces first. Value of 0 represents no limit. Default value: 0.
+ ///
+ public int? Limit { get; set; }
- ///
- /// Optional property: comma-separated slugs of face plugins. If empty, no additional information is returned.
- ///
- public IList FacePlugins { get; set; } = new List();
+ ///
+ /// Optional property: minimum required confidence that a recognized face is actually a face. Value is between 0.0 and 1.0.
+ ///
+ public decimal DetProbThreshold { get; set; }
- ///
- /// Optional property: if true includes system information like execution_time and plugin_version fields. Default value is false
- ///
- public bool Status { get; set; }
+ ///
+ /// Optional property: comma-separated slugs of face plugins. If empty, no additional information is returned.
+ ///
+ public IList FacePlugins { get; set; } = new List();
+
+ ///
+ /// Optional property: if true includes system information like execution_time and plugin_version fields. Default value is false
+ ///
+ public bool Status { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/BaseDTOs/BaseResult.cs b/Exadel.Compreface/DTOs/HelperDTOs/BaseDTOs/BaseResult.cs
index b7f3562a..4cb2cfd7 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/BaseDTOs/BaseResult.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/BaseDTOs/BaseResult.cs
@@ -1,18 +1,22 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
+using System.Collections.Generic;
-public class BaseResult
+namespace Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs
{
- public Age Age { get; set; }
- public Gender Gender { get; set; }
+ public class BaseResult
+ {
+ public Age Age { get; set; }
- public Mask Mask { get; set; }
+ public Gender Gender { get; set; }
- public Box Box { get; set; }
+ public Mask Mask { get; set; }
- public IList> Landmarks { get; set; }
+ public Box Box { get; set; }
- public ExecutionTime ExecutionTime { get; set; }
+ public IList> Landmarks { get; set; }
- public IList Embedding { get; set; }
+ public ExecutionTime ExecutionTime { get; set; }
+
+ public IList Embedding { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/Box.cs b/Exadel.Compreface/DTOs/HelperDTOs/Box.cs
index a7e2591c..0372306d 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/Box.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/Box.cs
@@ -1,14 +1,16 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs;
-
-public class Box
+namespace Exadel.Compreface.DTOs.HelperDTOs
{
- public decimal Probability { get; set; }
- public int XMax { get; set; }
-
- public int YMax { get; set; }
+ public class Box
+ {
+ public decimal Probability { get; set; }
+
+ public int XMax { get; set; }
+
+ public int YMax { get; set; }
+
+ public int XMin { get; set; }
- public int XMin { get; set; }
-
- public int YMin { get; set; }
+ public int YMin { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/ExecutionTime.cs b/Exadel.Compreface/DTOs/HelperDTOs/ExecutionTime.cs
index 676900a1..be3e2f18 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/ExecutionTime.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/ExecutionTime.cs
@@ -1,14 +1,16 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs;
-
-public class ExecutionTime
+namespace Exadel.Compreface.DTOs.HelperDTOs
{
- public decimal Age { get; set; }
- public decimal Gender { get; set; }
+ public class ExecutionTime
+ {
+ public decimal Age { get; set; }
+
+ public decimal Gender { get; set; }
- public decimal Detector { get; set; }
+ public decimal Detector { get; set; }
- public decimal Calculator { get; set; }
+ public decimal Calculator { get; set; }
- public decimal Mask { get; set; }
+ public decimal Mask { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/Face.cs b/Exadel.Compreface/DTOs/HelperDTOs/Face.cs
index e2e2e8f2..2d973c07 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/Face.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/Face.cs
@@ -1,8 +1,11 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs;
+using System;
-public class Face
+namespace Exadel.Compreface.DTOs.HelperDTOs
{
- public Guid ImageId { get; set; }
-
- public string Subject{ get; set; }
+ public class Face
+ {
+ public Guid ImageId { get; set; }
+
+ public string Subject { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/Gender.cs b/Exadel.Compreface/DTOs/HelperDTOs/Gender.cs
index 40129d65..8ae79c17 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/Gender.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/Gender.cs
@@ -1,8 +1,10 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs;
-
-public class Gender
+namespace Exadel.Compreface.DTOs.HelperDTOs
{
- public decimal Probability { get; set; }
- public string Value { get; set; }
+ public class Gender
+ {
+ public decimal Probability { get; set; }
+
+ public string Value { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/Mask.cs b/Exadel.Compreface/DTOs/HelperDTOs/Mask.cs
index 78b298ef..88ffc9b3 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/Mask.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/Mask.cs
@@ -1,8 +1,10 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs;
-
-public class Mask
+namespace Exadel.Compreface.DTOs.HelperDTOs
{
- public decimal Probability { get; set; }
- public string Value { get; set; }
+ public class Mask
+ {
+ public decimal Probability { get; set; }
+
+ public string Value { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/PluginVersions.cs b/Exadel.Compreface/DTOs/HelperDTOs/PluginVersions.cs
index b244ee56..6e439409 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/PluginVersions.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/PluginVersions.cs
@@ -1,14 +1,16 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs;
-
-public class PluginVersions
+namespace Exadel.Compreface.DTOs.HelperDTOs
{
- public string Age { get; set; }
-
- public string Gender { get; set; }
-
- public string Detector { get; set; }
-
- public string Calculator { get; set; }
-
- public string Mask { get; set; }
+
+ public class PluginVersions
+ {
+ public string Age { get; set; }
+
+ public string Gender { get; set; }
+
+ public string Detector { get; set; }
+
+ public string Calculator { get; set; }
+
+ public string Mask { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/HelperDTOs/SimilarSubject.cs b/Exadel.Compreface/DTOs/HelperDTOs/SimilarSubject.cs
index 0f8ac24e..17c0a965 100644
--- a/Exadel.Compreface/DTOs/HelperDTOs/SimilarSubject.cs
+++ b/Exadel.Compreface/DTOs/HelperDTOs/SimilarSubject.cs
@@ -1,8 +1,10 @@
-namespace Exadel.Compreface.DTOs.HelperDTOs;
-
-public class SimilarSubject
+namespace Exadel.Compreface.DTOs.HelperDTOs
{
- public decimal Similarity { get; set; }
- public string Subject { get; set; }
+ public class SimilarSubject
+ {
+ public decimal Similarity { get; set; }
+
+ public string Subject { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/BaseRequests/BaseRecognizeFaceFromImageRequest.cs b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/BaseRequests/BaseRecognizeFaceFromImageRequest.cs
index 2a227448..1e94c4be 100644
--- a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/BaseRequests/BaseRecognizeFaceFromImageRequest.cs
+++ b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/BaseRequests/BaseRecognizeFaceFromImageRequest.cs
@@ -1,14 +1,16 @@
using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
-namespace Exadel.Compreface.DTOs.RecognitionDTOs.BaseRequests;
-
-///
-/// Base class with several common properties.
-///
-public class BaseRecognizeFaceFromImageRequest : BaseFaceRequest
+namespace Exadel.Compreface.DTOs.RecognitionDTOs.BaseRequests
{
+
///
- /// Optional property: maximum number of subject predictions per face. It returns the most similar subjects. Default value: 1
+ /// Base class with several common properties.
///
- public int? PredictionCount { get; set; }
+ public class BaseRecognizeFaceFromImageRequest : BaseFaceRequest
+ {
+ ///
+ /// Optional property: maximum number of subject predictions per face. It returns the most similar subjects. Default value: 1
+ ///
+ public int? PredictionCount { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/BaseRequests/BaseVerifyFacesFromImageRequest.cs b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/BaseRequests/BaseVerifyFacesFromImageRequest.cs
index 7f18498a..0876897c 100644
--- a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/BaseRequests/BaseVerifyFacesFromImageRequest.cs
+++ b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/BaseRequests/BaseVerifyFacesFromImageRequest.cs
@@ -1,8 +1,11 @@
-using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
+using System;
+using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
-namespace Exadel.Compreface.DTOs.RecognitionDTOs.BaseRequests;
-
-public class BaseVerifyFacesFromImageRequest : BaseFaceRequest
+namespace Exadel.Compreface.DTOs.RecognitionDTOs.BaseRequests
{
- public Guid ImageId { get; set; }
+
+ public class BaseVerifyFacesFromImageRequest : BaseFaceRequest
+ {
+ public Guid ImageId { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFaceFromImageRequestByFilePath.cs b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFaceFromImageRequestByFilePath.cs
index ea143c97..5809c7c7 100644
--- a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFaceFromImageRequestByFilePath.cs
+++ b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFaceFromImageRequestByFilePath.cs
@@ -1,8 +1,10 @@
using Exadel.Compreface.DTOs.RecognitionDTOs.BaseRequests;
-namespace Exadel.Compreface.DTOs.RecognitionDTOs.RecognizeFaceFromImage;
-
-public class RecognizeFaceFromImageRequestByFilePath : BaseRecognizeFaceFromImageRequest
+namespace Exadel.Compreface.DTOs.RecognitionDTOs.RecognizeFaceFromImage
{
- public string FilePath { get; set; }
+
+ public class RecognizeFaceFromImageRequestByFilePath : BaseRecognizeFaceFromImageRequest
+ {
+ public string FilePath { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFaceFromImageResponse.cs b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFaceFromImageResponse.cs
index 5c09f6ae..77af244f 100644
--- a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFaceFromImageResponse.cs
+++ b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFaceFromImageResponse.cs
@@ -1,16 +1,19 @@
-using Exadel.Compreface.DTOs.HelperDTOs;
+using System.Collections.Generic;
+using Exadel.Compreface.DTOs.HelperDTOs;
using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
-namespace Exadel.Compreface.DTOs.RecognitionDTOs.RecognizeFaceFromImage;
-
-public class RecognizeFaceFromImageResponse
+namespace Exadel.Compreface.DTOs.RecognitionDTOs.RecognizeFaceFromImage
{
- public IList Result { get; set; }
- public PluginVersions PluginsVersions { get; set; }
-}
+ public class RecognizeFaceFromImageResponse
+ {
+ public IList Result { get; set; }
-public class Result : BaseResult
-{
- public IList Subjects { get; set; }
+ public PluginVersions PluginsVersions { get; set; }
+ }
+
+ public class Result : BaseResult
+ {
+ public IList Subjects { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFacesFromImageWithBase64Request.cs b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFacesFromImageWithBase64Request.cs
index 30238fe2..b7c55bba 100644
--- a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFacesFromImageWithBase64Request.cs
+++ b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/RecognizeFaceFromImage/RecognizeFacesFromImageWithBase64Request.cs
@@ -1,8 +1,10 @@
using Exadel.Compreface.DTOs.RecognitionDTOs.BaseRequests;
-namespace Exadel.Compreface.DTOs.RecognizeFaceFromImageDTOs.RecognizeFaceFromImage;
-
-public class RecognizeFacesFromImageWithBase64Request : BaseRecognizeFaceFromImageRequest
+namespace Exadel.Compreface.DTOs.RecognizeFaceFromImageDTOs.RecognizeFaceFromImage
{
- public string FileBase64Value { get; set; }
+
+ public class RecognizeFacesFromImageWithBase64Request : BaseRecognizeFaceFromImageRequest
+ {
+ public string FileBase64Value { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageByFilePathRequest.cs b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageByFilePathRequest.cs
index e71c0ad9..e3112145 100644
--- a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageByFilePathRequest.cs
+++ b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageByFilePathRequest.cs
@@ -1,8 +1,10 @@
using Exadel.Compreface.DTOs.RecognitionDTOs.BaseRequests;
-namespace Exadel.Compreface.DTOs.RecognitionDTOs.VerifyFacesFromImage;
-
-public class VerifyFacesFromImageByFilePathRequest : BaseVerifyFacesFromImageRequest
+namespace Exadel.Compreface.DTOs.RecognitionDTOs.VerifyFacesFromImage
{
- public string FilePath { get; set; }
+
+ public class VerifyFacesFromImageByFilePathRequest : BaseVerifyFacesFromImageRequest
+ {
+ public string FilePath { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageResponse.cs b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageResponse.cs
index dc6df133..b21e39ae 100644
--- a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageResponse.cs
+++ b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageResponse.cs
@@ -1,18 +1,21 @@
-using Exadel.Compreface.DTOs.HelperDTOs;
+using System.Collections.Generic;
+using Exadel.Compreface.DTOs.HelperDTOs;
using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
-namespace Exadel.Compreface.DTOs.RecognitionDTOs.VerifyFacesFromImage;
-
-public class VerifyFacesFromImageResponse
+namespace Exadel.Compreface.DTOs.RecognitionDTOs.VerifyFacesFromImage
{
- public IList Result { get; set; }
- public PluginVersions PluginsVersions { get; set; }
-}
+ public class VerifyFacesFromImageResponse
+ {
+ public IList Result { get; set; }
-public class Result : BaseResult
-{
- public string Subject { get; set; }
-
- public decimal Similarity { get; set; }
+ public PluginVersions PluginsVersions { get; set; }
+ }
+
+ public class Result : BaseResult
+ {
+ public string Subject { get; set; }
+
+ public decimal Similarity { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageWithBase64Request.cs b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageWithBase64Request.cs
index b1a94137..1fe4b111 100644
--- a/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageWithBase64Request.cs
+++ b/Exadel.Compreface/DTOs/RecognizeFaceFromImageDTOs/VerifyFacesFromImage/VerifyFacesFromImageWithBase64Request.cs
@@ -1,8 +1,10 @@
using Exadel.Compreface.DTOs.RecognitionDTOs.BaseRequests;
-namespace Exadel.Compreface.DTOs.RecognizeFaceFromImageDTOs.VerifyFacesFromImage;
-
-public class VerifyFacesFromImageWithBase64Request : BaseVerifyFacesFromImageRequest
+namespace Exadel.Compreface.DTOs.RecognizeFaceFromImageDTOs.VerifyFacesFromImage
{
- public string FileBase64Value { get; set; }
+
+ public class VerifyFacesFromImageWithBase64Request : BaseVerifyFacesFromImageRequest
+ {
+ public string FileBase64Value { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/SubjectDTOs/AddSubject/AddSubjectRequest.cs b/Exadel.Compreface/DTOs/SubjectDTOs/AddSubject/AddSubjectRequest.cs
index 5362cc95..edc528f1 100644
--- a/Exadel.Compreface/DTOs/SubjectDTOs/AddSubject/AddSubjectRequest.cs
+++ b/Exadel.Compreface/DTOs/SubjectDTOs/AddSubject/AddSubjectRequest.cs
@@ -1,6 +1,8 @@
-namespace Exadel.Compreface.DTOs.SubjectDTOs.AddSubject;
-
-public class AddSubjectRequest
+namespace Exadel.Compreface.DTOs.SubjectDTOs.AddSubject
{
- public string Subject { get; set; }
+
+ public class AddSubjectRequest
+ {
+ public string Subject { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/SubjectDTOs/AddSubject/AddSubjectResponse.cs b/Exadel.Compreface/DTOs/SubjectDTOs/AddSubject/AddSubjectResponse.cs
index 48dada0b..afefb7a1 100644
--- a/Exadel.Compreface/DTOs/SubjectDTOs/AddSubject/AddSubjectResponse.cs
+++ b/Exadel.Compreface/DTOs/SubjectDTOs/AddSubject/AddSubjectResponse.cs
@@ -1,6 +1,8 @@
-namespace Exadel.Compreface.DTOs.SubjectDTOs.AddSubject;
-
-public class AddSubjectResponse
+namespace Exadel.Compreface.DTOs.SubjectDTOs.AddSubject
{
- public string Subject { get; set; }
+
+ public class AddSubjectResponse
+ {
+ public string Subject { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/SubjectDTOs/DeleteAllSubjects/DeleteAllSubjectsResponse.cs b/Exadel.Compreface/DTOs/SubjectDTOs/DeleteAllSubjects/DeleteAllSubjectsResponse.cs
index 716f5367..df27c17b 100644
--- a/Exadel.Compreface/DTOs/SubjectDTOs/DeleteAllSubjects/DeleteAllSubjectsResponse.cs
+++ b/Exadel.Compreface/DTOs/SubjectDTOs/DeleteAllSubjects/DeleteAllSubjectsResponse.cs
@@ -1,6 +1,8 @@
-namespace Exadel.Compreface.DTOs.SubjectDTOs.DeleteAllSubjects;
-
-public class DeleteAllSubjectsResponse
+namespace Exadel.Compreface.DTOs.SubjectDTOs.DeleteAllSubjects
{
- public int Deleted { get; set; }
+
+ public class DeleteAllSubjectsResponse
+ {
+ public int Deleted { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/SubjectDTOs/DeleteSubject/DeleteSubjectRequest.cs b/Exadel.Compreface/DTOs/SubjectDTOs/DeleteSubject/DeleteSubjectRequest.cs
index d02909db..74666bba 100644
--- a/Exadel.Compreface/DTOs/SubjectDTOs/DeleteSubject/DeleteSubjectRequest.cs
+++ b/Exadel.Compreface/DTOs/SubjectDTOs/DeleteSubject/DeleteSubjectRequest.cs
@@ -1,6 +1,8 @@
-namespace Exadel.Compreface.DTOs.SubjectDTOs.DeleteSubject;
-
-public class DeleteSubjectRequest
+namespace Exadel.Compreface.DTOs.SubjectDTOs.DeleteSubject
{
- public string ActualSubject { get; set; }
+
+ public class DeleteSubjectRequest
+ {
+ public string ActualSubject { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/SubjectDTOs/DeleteSubject/DeleteSubjectResponse.cs b/Exadel.Compreface/DTOs/SubjectDTOs/DeleteSubject/DeleteSubjectResponse.cs
index f8d79417..dfc869a8 100644
--- a/Exadel.Compreface/DTOs/SubjectDTOs/DeleteSubject/DeleteSubjectResponse.cs
+++ b/Exadel.Compreface/DTOs/SubjectDTOs/DeleteSubject/DeleteSubjectResponse.cs
@@ -1,6 +1,8 @@
-namespace Exadel.Compreface.DTOs.SubjectDTOs.DeleteSubject;
-
-public class DeleteSubjectResponse
+namespace Exadel.Compreface.DTOs.SubjectDTOs.DeleteSubject
{
- public string Subject { get; set; }
+
+ public class DeleteSubjectResponse
+ {
+ public string Subject { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/SubjectDTOs/GetSubjectList/GetAllSubjectResponse.cs b/Exadel.Compreface/DTOs/SubjectDTOs/GetSubjectList/GetAllSubjectResponse.cs
index e0f970a5..7aa0dc8d 100644
--- a/Exadel.Compreface/DTOs/SubjectDTOs/GetSubjectList/GetAllSubjectResponse.cs
+++ b/Exadel.Compreface/DTOs/SubjectDTOs/GetSubjectList/GetAllSubjectResponse.cs
@@ -1,6 +1,10 @@
-namespace Exadel.Compreface.DTOs.SubjectDTOs.GetSubjectList;
+using System.Collections.Generic;
-public class GetAllSubjectResponse
+namespace Exadel.Compreface.DTOs.SubjectDTOs.GetSubjectList
{
- public IList Subjects { get; set; }
+
+ public class GetAllSubjectResponse
+ {
+ public IList Subjects { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/SubjectDTOs/RenameSubject/RenameSubjectRequest.cs b/Exadel.Compreface/DTOs/SubjectDTOs/RenameSubject/RenameSubjectRequest.cs
index 300b31c8..7f9bc247 100644
--- a/Exadel.Compreface/DTOs/SubjectDTOs/RenameSubject/RenameSubjectRequest.cs
+++ b/Exadel.Compreface/DTOs/SubjectDTOs/RenameSubject/RenameSubjectRequest.cs
@@ -1,8 +1,10 @@
-namespace Exadel.Compreface.DTOs.SubjectDTOs.RenameSubject;
-
-public class RenameSubjectRequest
+namespace Exadel.Compreface.DTOs.SubjectDTOs.RenameSubject
{
- public string CurrentSubject { get; set; }
- public string Subject { get; set; }
+ public class RenameSubjectRequest
+ {
+ public string CurrentSubject { get; set; }
+
+ public string Subject { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/DTOs/SubjectDTOs/RenameSubject/RenameSubjectResponse.cs b/Exadel.Compreface/DTOs/SubjectDTOs/RenameSubject/RenameSubjectResponse.cs
index 34f337cc..4825de3d 100644
--- a/Exadel.Compreface/DTOs/SubjectDTOs/RenameSubject/RenameSubjectResponse.cs
+++ b/Exadel.Compreface/DTOs/SubjectDTOs/RenameSubject/RenameSubjectResponse.cs
@@ -1,6 +1,8 @@
-namespace Exadel.Compreface.DTOs.SubjectDTOs.RenameSubject;
-
-public class RenameSubjectResponse
+namespace Exadel.Compreface.DTOs.SubjectDTOs.RenameSubject
{
- public bool Updated { get; set; }
+
+ public class RenameSubjectResponse
+ {
+ public bool Updated { get; set; }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Exadel.Compreface.csproj b/Exadel.Compreface/Exadel.Compreface.csproj
index 74948131..cb5ef9b4 100644
--- a/Exadel.Compreface/Exadel.Compreface.csproj
+++ b/Exadel.Compreface/Exadel.Compreface.csproj
@@ -1,11 +1,10 @@
- net6.0;net7.0
- enable
- enable
+ netstandard2.0
+ disable
True
- CompreFace.NET.Sdk
+ DeepThink.CompreFace.NET.Sdk
CompreFace NET SDK makes face recognition into your application even easier.
Exadel
Exadel
diff --git a/Exadel.Compreface/Exceptions/ServiceException.cs b/Exadel.Compreface/Exceptions/ServiceException.cs
index 531138a6..101cf45b 100644
--- a/Exadel.Compreface/Exceptions/ServiceException.cs
+++ b/Exadel.Compreface/Exceptions/ServiceException.cs
@@ -1,15 +1,22 @@
-namespace Exadel.Compreface.Exceptions;
+using System;
-public class ServiceException : Exception
+namespace Exadel.Compreface.Exceptions
{
- public ServiceException()
- { }
- public ServiceException(string message)
- : base(message)
- { }
+ public class ServiceException : Exception
+ {
+ public ServiceException()
+ {
+ }
- public ServiceException(string message, Exception inner)
- : base(message, inner)
- { }
+ public ServiceException(string message)
+ : base(message)
+ {
+ }
+
+ public ServiceException(string message, Exception inner)
+ : base(message, inner)
+ {
+ }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Exceptions/ServiceTimeoutException.cs b/Exadel.Compreface/Exceptions/ServiceTimeoutException.cs
index aa7f98e8..574107bb 100644
--- a/Exadel.Compreface/Exceptions/ServiceTimeoutException.cs
+++ b/Exadel.Compreface/Exceptions/ServiceTimeoutException.cs
@@ -1,15 +1,22 @@
-namespace Exadel.Compreface.Exceptions;
+using System;
-public class ServiceTimeoutException : Exception
+namespace Exadel.Compreface.Exceptions
{
- public ServiceTimeoutException()
- { }
- public ServiceTimeoutException(string message)
- : base(message)
- { }
+ public class ServiceTimeoutException : Exception
+ {
+ public ServiceTimeoutException()
+ {
+ }
- public ServiceTimeoutException(string message, Exception inner)
- : base(message, inner)
- { }
+ public ServiceTimeoutException(string message)
+ : base(message)
+ {
+ }
+
+ public ServiceTimeoutException(string message, Exception inner)
+ : base(message, inner)
+ {
+ }
+ }
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Exceptions/TypeNotBelongCompreFaceException.cs b/Exadel.Compreface/Exceptions/TypeNotBelongCompreFaceException.cs
index 7995389a..37123fc8 100644
--- a/Exadel.Compreface/Exceptions/TypeNotBelongCompreFaceException.cs
+++ b/Exadel.Compreface/Exceptions/TypeNotBelongCompreFaceException.cs
@@ -1,4 +1,6 @@
-namespace Exadel.Compreface.Exceptions
+using System;
+
+namespace Exadel.Compreface.Exceptions
{
public class TypeNotBelongCompreFaceException : Exception
{
diff --git a/Exadel.Compreface/Helpers/ConvertUrlToBase64StringHelpers.cs b/Exadel.Compreface/Helpers/ConvertUrlToBase64StringHelpers.cs
index 22b87318..11cdbaa4 100644
--- a/Exadel.Compreface/Helpers/ConvertUrlToBase64StringHelpers.cs
+++ b/Exadel.Compreface/Helpers/ConvertUrlToBase64StringHelpers.cs
@@ -1,4 +1,6 @@
-using Exadel.Compreface.Clients.ApiClient;
+using System;
+using System.Threading.Tasks;
+using Exadel.Compreface.Clients.ApiClient;
namespace Exadel.Compreface.Helpers
{
diff --git a/Exadel.Compreface/Helpers/DictionaryHelper.cs b/Exadel.Compreface/Helpers/DictionaryHelper.cs
new file mode 100644
index 00000000..8582bf3f
--- /dev/null
+++ b/Exadel.Compreface/Helpers/DictionaryHelper.cs
@@ -0,0 +1,23 @@
+using System.Collections.Generic;
+
+namespace Exadel.Compreface.Helpers
+{
+ ///
+ ///
+ ///
+ public static class DictionaryHelper
+ {
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static V GetValueOrDefault(this Dictionary dictionary, K key)
+ {
+ return dictionary.TryGetValue(key, out var value) ? value : default;
+ }
+ }
+}
\ No newline at end of file
diff --git a/Exadel.Compreface/Helpers/FileHelpers.cs b/Exadel.Compreface/Helpers/FileHelpers.cs
index a39add63..ed228ce9 100644
--- a/Exadel.Compreface/Helpers/FileHelpers.cs
+++ b/Exadel.Compreface/Helpers/FileHelpers.cs
@@ -1,18 +1,22 @@
-namespace Exadel.Compreface.Helpers;
+using System;
+using System.IO;
-public class FileHelpers
+namespace Exadel.Compreface.Helpers
{
- public static string GenerateFileName(string filePath)
+ public class FileHelpers
{
- if (!File.Exists(filePath))
+ public static string GenerateFileName(string filePath)
{
- throw new FileNotFoundException(message: $"File does not exist in path : {filePath}!");
- }
-
- var fileExtension = Path.GetExtension(filePath);
+ if (!File.Exists(filePath))
+ {
+ throw new FileNotFoundException(message: $"File does not exist in path : {filePath}!");
+ }
+
+ var fileExtension = Path.GetExtension(filePath);
- var generatedFileName = $"{Guid.NewGuid()}{fileExtension}";
+ var generatedFileName = $"{Guid.NewGuid()}{fileExtension}";
- return generatedFileName;
+ return generatedFileName;
+ }
}
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Helpers/SnakeCaseToCamelCaseNamingPolicy.cs b/Exadel.Compreface/Helpers/SnakeCaseToCamelCaseNamingPolicy.cs
index cff3c192..7e720cf4 100644
--- a/Exadel.Compreface/Helpers/SnakeCaseToCamelCaseNamingPolicy.cs
+++ b/Exadel.Compreface/Helpers/SnakeCaseToCamelCaseNamingPolicy.cs
@@ -1,12 +1,15 @@
using System.Text.Json;
-namespace Exadel.Compreface.Helpers;
-
-public class SnakeCaseToCamelCaseNamingPolicy : JsonNamingPolicy
+namespace Exadel.Compreface.Helpers
{
- public static SnakeCaseToCamelCaseNamingPolicy Policy { get; } = new SnakeCaseToCamelCaseNamingPolicy();
- public override string ConvertName(string name)
+
+ public class SnakeCaseToCamelCaseNamingPolicy : JsonNamingPolicy
{
- return name.ToSnakeCase();
+ public static SnakeCaseToCamelCaseNamingPolicy Policy { get; } = new SnakeCaseToCamelCaseNamingPolicy();
+
+ public override string ConvertName(string name)
+ {
+ return name.ToSnakeCase();
+ }
}
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Helpers/StringExtensions.cs b/Exadel.Compreface/Helpers/StringExtensions.cs
index 0b3783bc..f32081f8 100644
--- a/Exadel.Compreface/Helpers/StringExtensions.cs
+++ b/Exadel.Compreface/Helpers/StringExtensions.cs
@@ -1,9 +1,14 @@
-namespace Exadel.Compreface.Helpers;
+using System.Linq;
-public static class StringExtensions
+namespace Exadel.Compreface.Helpers
{
- public static string ToSnakeCase(this string str)
+
+ public static class StringExtensions
{
- return string.Concat(str.Select((x, i) => i > 0 && char.IsUpper(x) ? "_" + x.ToString() : x.ToString())).ToLower();
+ public static string ToSnakeCase(this string str)
+ {
+ return string.Concat(str.Select((x, i) => i > 0 && char.IsUpper(x) ? "_" + x.ToString() : x.ToString()))
+ .ToLower();
+ }
}
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Helpers/SystemJsonSerializer.cs b/Exadel.Compreface/Helpers/SystemJsonSerializer.cs
index 73b7378e..8cb0adfc 100644
--- a/Exadel.Compreface/Helpers/SystemJsonSerializer.cs
+++ b/Exadel.Compreface/Helpers/SystemJsonSerializer.cs
@@ -1,30 +1,35 @@
-using System.Text.Json;
+using System.IO;
+using System.Text.Json;
using Flurl.Http.Configuration;
-namespace Exadel.Compreface.Helpers;
-
-public class SystemJsonSerializer : ISerializer
+namespace Exadel.Compreface.Helpers
{
- private readonly JsonSerializerOptions? _options;
- public SystemJsonSerializer(JsonSerializerOptions? options = null)
+ public class SystemJsonSerializer : ISerializer
{
- _options = options;
- }
+ private readonly JsonSerializerOptions _options;
- public T Deserialize(string s)
- {
- return JsonSerializer.Deserialize(s, _options)!;
- }
+ public SystemJsonSerializer(JsonSerializerOptions options = null)
+ {
+ _options = options;
+ }
- public T Deserialize(Stream stream)
- {
- using var reader = new StreamReader(stream);
- return Deserialize(reader.ReadToEnd());
- }
+ public T Deserialize(string s)
+ {
+ return JsonSerializer.Deserialize(s, _options);
+ }
- public string Serialize(object obj)
- {
- return JsonSerializer.Serialize(obj, _options);
+ public T Deserialize(Stream stream)
+ {
+ using (var reader = new StreamReader(stream))
+ {
+ return Deserialize(reader.ReadToEnd());
+ }
+ }
+
+ public string Serialize(object obj)
+ {
+ return JsonSerializer.Serialize(obj, _options);
+ }
}
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Services/Attributes/CompreFaceServiceAttribute.cs b/Exadel.Compreface/Services/Attributes/CompreFaceServiceAttribute.cs
index ca2fe2a5..6a89aae1 100644
--- a/Exadel.Compreface/Services/Attributes/CompreFaceServiceAttribute.cs
+++ b/Exadel.Compreface/Services/Attributes/CompreFaceServiceAttribute.cs
@@ -1,4 +1,5 @@
-using System.Runtime.CompilerServices;
+using System;
+using System.Runtime.CompilerServices;
[assembly: InternalsVisibleTo("Exadel.Compreface.AcceptenceTests")]
[assembly: InternalsVisibleTo("Exadel.Compreface.UnitTests")]
diff --git a/Exadel.Compreface/Services/DetectionService.cs b/Exadel.Compreface/Services/DetectionService.cs
index 0cde11b1..4ba36ed1 100644
--- a/Exadel.Compreface/Services/DetectionService.cs
+++ b/Exadel.Compreface/Services/DetectionService.cs
@@ -1,4 +1,6 @@
-using Exadel.Compreface.Clients.ApiClient;
+using System;
+using System.Threading.Tasks;
+using Exadel.Compreface.Clients.ApiClient;
using Exadel.Compreface.Configuration;
using Exadel.Compreface.DTOs.FaceDetectionDTOs.FaceDetection;
using Exadel.Compreface.DTOs.HelperDTOs.BaseDTOs;
diff --git a/Exadel.Compreface/Services/Interfaces/IDetectionService.cs b/Exadel.Compreface/Services/Interfaces/IDetectionService.cs
index 66a51431..6071f78f 100644
--- a/Exadel.Compreface/Services/Interfaces/IDetectionService.cs
+++ b/Exadel.Compreface/Services/Interfaces/IDetectionService.cs
@@ -1,4 +1,5 @@
-using Exadel.Compreface.DTOs.FaceDetectionDTOs.FaceDetection;
+using System.Threading.Tasks;
+using Exadel.Compreface.DTOs.FaceDetectionDTOs.FaceDetection;
namespace Exadel.Compreface.Services.Interfaces
{
diff --git a/Exadel.Compreface/Services/Interfaces/IFaceCollection.cs b/Exadel.Compreface/Services/Interfaces/IFaceCollection.cs
index fb5e25a0..23acf676 100644
--- a/Exadel.Compreface/Services/Interfaces/IFaceCollection.cs
+++ b/Exadel.Compreface/Services/Interfaces/IFaceCollection.cs
@@ -1,4 +1,5 @@
-using Exadel.Compreface.DTOs.FaceCollectionDTOs.AddSubjectExample;
+using System.Threading.Tasks;
+using Exadel.Compreface.DTOs.FaceCollectionDTOs.AddSubjectExample;
using Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteAllSubjectExamples;
using Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteImageById;
using Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteMultipleExamples;
diff --git a/Exadel.Compreface/Services/Interfaces/IRecognizeFaceFromImage.cs b/Exadel.Compreface/Services/Interfaces/IRecognizeFaceFromImage.cs
index 306e13f8..32aa8be9 100644
--- a/Exadel.Compreface/Services/Interfaces/IRecognizeFaceFromImage.cs
+++ b/Exadel.Compreface/Services/Interfaces/IRecognizeFaceFromImage.cs
@@ -1,4 +1,5 @@
-using Exadel.Compreface.DTOs.RecognitionDTOs.RecognizeFaceFromImage;
+using System.Threading.Tasks;
+using Exadel.Compreface.DTOs.RecognitionDTOs.RecognizeFaceFromImage;
using Exadel.Compreface.DTOs.RecognitionDTOs.VerifyFacesFromImage;
using Exadel.Compreface.DTOs.RecognizeFaceFromImageDTOs.RecognizeFaceFromImage;
using Exadel.Compreface.DTOs.RecognizeFaceFromImageDTOs.VerifyFacesFromImage;
diff --git a/Exadel.Compreface/Services/Interfaces/ISubject.cs b/Exadel.Compreface/Services/Interfaces/ISubject.cs
index b5ac2a49..776f9067 100644
--- a/Exadel.Compreface/Services/Interfaces/ISubject.cs
+++ b/Exadel.Compreface/Services/Interfaces/ISubject.cs
@@ -1,4 +1,5 @@
-using Exadel.Compreface.DTOs.SubjectDTOs.AddSubject;
+using System.Threading.Tasks;
+using Exadel.Compreface.DTOs.SubjectDTOs.AddSubject;
using Exadel.Compreface.DTOs.SubjectDTOs.DeleteAllSubjects;
using Exadel.Compreface.DTOs.SubjectDTOs.DeleteSubject;
using Exadel.Compreface.DTOs.SubjectDTOs.GetSubjectList;
diff --git a/Exadel.Compreface/Services/Interfaces/IVerificationService.cs b/Exadel.Compreface/Services/Interfaces/IVerificationService.cs
index 13c330a6..bbe6803f 100644
--- a/Exadel.Compreface/Services/Interfaces/IVerificationService.cs
+++ b/Exadel.Compreface/Services/Interfaces/IVerificationService.cs
@@ -1,4 +1,5 @@
-using Exadel.Compreface.DTOs.FaceVerificationDTOs.FaceVerification;
+using System.Threading.Tasks;
+using Exadel.Compreface.DTOs.FaceVerificationDTOs.FaceVerification;
namespace Exadel.Compreface.Services.Interfaces
{
diff --git a/Exadel.Compreface/Services/RecognitionService/FaceCollection.cs b/Exadel.Compreface/Services/RecognitionService/FaceCollection.cs
index 3420f015..3d30e2eb 100644
--- a/Exadel.Compreface/Services/RecognitionService/FaceCollection.cs
+++ b/Exadel.Compreface/Services/RecognitionService/FaceCollection.cs
@@ -1,4 +1,7 @@
-using Exadel.Compreface.Clients.ApiClient;
+using System;
+using System.Collections.Generic;
+using System.Threading.Tasks;
+using Exadel.Compreface.Clients.ApiClient;
using Exadel.Compreface.Configuration;
using Exadel.Compreface.DTOs.FaceCollectionDTOs.AddSubjectExample;
using Exadel.Compreface.DTOs.FaceCollectionDTOs.DeleteAllSubjectExamples;
diff --git a/Exadel.Compreface/Services/RecognitionService/RecognitionService.cs b/Exadel.Compreface/Services/RecognitionService/RecognitionService.cs
index 55c10582..adaafecd 100644
--- a/Exadel.Compreface/Services/RecognitionService/RecognitionService.cs
+++ b/Exadel.Compreface/Services/RecognitionService/RecognitionService.cs
@@ -3,21 +3,23 @@
using Exadel.Compreface.Services.Attributes;
using Exadel.Compreface.Services.Interfaces;
-namespace Exadel.Compreface.Services.RecognitionService;
-
-[CompreFaceService]
-public class RecognitionService
+namespace Exadel.Compreface.Services.RecognitionService
{
- public IFaceCollection FaceCollection { get; set; }
- public ISubject Subject { get; set; }
+ [CompreFaceService]
+ public class RecognitionService
+ {
+ public IFaceCollection FaceCollection { get; set; }
+
+ public ISubject Subject { get; set; }
- public IRecognizeFaceFromImage RecognizeFaceFromImage { get; set; }
+ public IRecognizeFaceFromImage RecognizeFaceFromImage { get; set; }
- public RecognitionService(IComprefaceConfiguration configuration, IApiClient apiClient)
- {
- FaceCollection = new FaceCollection(configuration, apiClient);
- Subject = new Subject(configuration, apiClient);
- RecognizeFaceFromImage = new RecognizeFaceFromImage(configuration, apiClient);
+ public RecognitionService(IComprefaceConfiguration configuration, IApiClient apiClient)
+ {
+ FaceCollection = new FaceCollection(configuration, apiClient);
+ Subject = new Subject(configuration, apiClient);
+ RecognizeFaceFromImage = new RecognizeFaceFromImage(configuration, apiClient);
+ }
}
}
\ No newline at end of file
diff --git a/Exadel.Compreface/Services/RecognitionService/RecognizeFaceFromImage.cs b/Exadel.Compreface/Services/RecognitionService/RecognizeFaceFromImage.cs
index fb6c3660..8e15fb0c 100644
--- a/Exadel.Compreface/Services/RecognitionService/RecognizeFaceFromImage.cs
+++ b/Exadel.Compreface/Services/RecognitionService/RecognizeFaceFromImage.cs
@@ -1,4 +1,6 @@
-using Exadel.Compreface.Clients.ApiClient;
+using System;
+using System.Threading.Tasks;
+using Exadel.Compreface.Clients.ApiClient;
using Exadel.Compreface.Configuration;
using Exadel.Compreface.DTOs.RecognitionDTOs.BaseRequests;
using Exadel.Compreface.DTOs.RecognitionDTOs.RecognizeFaceFromImage;
diff --git a/Exadel.Compreface/Services/RecognitionService/Subject.cs b/Exadel.Compreface/Services/RecognitionService/Subject.cs
index e1922648..3b6c58aa 100644
--- a/Exadel.Compreface/Services/RecognitionService/Subject.cs
+++ b/Exadel.Compreface/Services/RecognitionService/Subject.cs
@@ -1,4 +1,5 @@
-using Exadel.Compreface.Clients.ApiClient;
+using System.Threading.Tasks;
+using Exadel.Compreface.Clients.ApiClient;
using Exadel.Compreface.Configuration;
using Exadel.Compreface.DTOs.SubjectDTOs.AddSubject;
using Exadel.Compreface.DTOs.SubjectDTOs.DeleteAllSubjects;
diff --git a/Exadel.Compreface/Services/VerificationService.cs b/Exadel.Compreface/Services/VerificationService.cs
index 32d2d2ef..4a6b1b99 100644
--- a/Exadel.Compreface/Services/VerificationService.cs
+++ b/Exadel.Compreface/Services/VerificationService.cs
@@ -1,3 +1,5 @@
+using System;
+using System.Threading.Tasks;
using Exadel.Compreface.Clients.ApiClient;
using Exadel.Compreface.Configuration;
using Exadel.Compreface.DTOs.FaceVerificationDTOs.FaceVerification;
@@ -8,98 +10,105 @@
using Flurl;
using Flurl.Http;
-namespace Exadel.Compreface.Services;
-
-[CompreFaceService]
-public class VerificationService : IVerificationService
+namespace Exadel.Compreface.Services
{
- private readonly IComprefaceConfiguration _configuration;
- private readonly IApiClient _apiClient;
-
- public VerificationService(IComprefaceConfiguration configuration, IApiClient apiClient)
- {
- _configuration = configuration;
- _apiClient = apiClient;
- }
- public async Task VerifyAsync(FaceVerificationRequestByFilePath request)
+ [CompreFaceService]
+ public class VerificationService : IVerificationService
{
- var requestUrlWithQueryParameters = GetRequestUrl(request);
-
- var response = await
- _apiClient.PostMultipartAsync(
- requestUrl: requestUrlWithQueryParameters,
- buildContent: mp =>
+ private readonly IComprefaceConfiguration _configuration;
+ private readonly IApiClient _apiClient;
+
+ public VerificationService(IComprefaceConfiguration configuration, IApiClient apiClient)
+ {
+ _configuration = configuration;
+ _apiClient = apiClient;
+ }
+
+ public async Task VerifyAsync(FaceVerificationRequestByFilePath request)
+ {
+ var requestUrlWithQueryParameters = GetRequestUrl(request);
+
+ var response = await
+ _apiClient.PostMultipartAsync(
+ requestUrl: requestUrlWithQueryParameters,
+ buildContent: mp =>
+ {
+ mp.AddFile(name: "source_image",
+ fileName: FileHelpers.GenerateFileName(request.SourceImageFilePath),
+ path: request.SourceImageFilePath);
+ mp.AddFile(name: "target_image",
+ fileName: FileHelpers.GenerateFileName(request.TargetImageFilePath),
+ path: request.TargetImageFilePath);
+ }
+ );
+
+ return response;
+ }
+
+ public async Task VerifyAsync(FaceVerificationRequestByFileUrl request)
+ {
+ var requestUrlWithQueryParameters = GetRequestUrl(request);
+
+ var fileSourceImagInBase64String =
+ await ConvertUrlToBase64StringHelpers.ConvertUrlAsync(_apiClient, request.SourceImageFileUrl);
+ var fileTargetImagegInBase64Strin =
+ await ConvertUrlToBase64StringHelpers.ConvertUrlAsync(_apiClient, request.TargetImageFileUrl);
+
+ var response = await _apiClient.PostJsonAsync(requestUrlWithQueryParameters,
+ body: new
{
- mp.AddFile(name: "source_image", fileName: FileHelpers.GenerateFileName(request.SourceImageFilePath),
- path: request.SourceImageFilePath);
- mp.AddFile(name: "target_image", fileName: FileHelpers.GenerateFileName(request.TargetImageFilePath),
- path: request.TargetImageFilePath);
- }
- );
-
- return response;
- }
-
- public async Task VerifyAsync(FaceVerificationRequestByFileUrl request)
- {
- var requestUrlWithQueryParameters = GetRequestUrl(request);
-
- var fileSourceImagInBase64String = await ConvertUrlToBase64StringHelpers.ConvertUrlAsync(_apiClient, request.SourceImageFileUrl);
- var fileTargetImagegInBase64Strin = await ConvertUrlToBase64StringHelpers.ConvertUrlAsync(_apiClient, request.TargetImageFileUrl);
-
- var response = await _apiClient.PostJsonAsync(requestUrlWithQueryParameters,
- body: new
- {
- source_image = fileSourceImagInBase64String,
- target_image = fileTargetImagegInBase64Strin
- });
+ source_image = fileSourceImagInBase64String,
+ target_image = fileTargetImagegInBase64Strin
+ });
- return response;
- }
+ return response;
+ }
- public async Task VerifyAsync(FaceVerificationRequestByBytes request)
- {
- var requestUrlWithQueryParameters = GetRequestUrl(request);
+ public async Task VerifyAsync(FaceVerificationRequestByBytes request)
+ {
+ var requestUrlWithQueryParameters = GetRequestUrl(request);
- var fileSourceImagInBase64String = Convert.ToBase64String(request.SourceImageInBytes);
- var fileTargetImagegInBase64Strin = Convert.ToBase64String(request.TargetImageInBytes);
+ var fileSourceImagInBase64String = Convert.ToBase64String(request.SourceImageInBytes);
+ var fileTargetImagegInBase64Strin = Convert.ToBase64String(request.TargetImageInBytes);
- var response = await _apiClient.PostJsonAsync(requestUrlWithQueryParameters,
- body: new
- {
- source_image = fileSourceImagInBase64String,
- target_image = fileTargetImagegInBase64Strin
- });
+ var response = await _apiClient.PostJsonAsync(requestUrlWithQueryParameters,
+ body: new
+ {
+ source_image = fileSourceImagInBase64String,
+ target_image = fileTargetImagegInBase64Strin
+ });
- return response;
- }
+ return response;
+ }
- public async Task VerifyAsync(FaceVerificationWithBase64Request request)
- {
- var requestUrlWithQueryParameters = GetRequestUrl(request);
+ public async Task VerifyAsync(FaceVerificationWithBase64Request request)
+ {
+ var requestUrlWithQueryParameters = GetRequestUrl(request);
- var response = await _apiClient.PostJsonAsync(requestUrl: requestUrlWithQueryParameters,
+ var response = await _apiClient.PostJsonAsync(
+ requestUrl: requestUrlWithQueryParameters,
body: new
{
source_image = request.SourceImageWithBase64,
target_image = request.TargetImageWithBase64,
});
- return response;
- }
+ return response;
+ }
- private Url GetRequestUrl(BaseFaceRequest baseFaceRequest)
- {
- var requestUrl = $"{_configuration.Domain}:{_configuration.Port}/api/v1/verification/verify";
-
- return requestUrl
- .SetQueryParams(new
- {
- limit = baseFaceRequest.Limit,
- det_prob_threshold = baseFaceRequest.DetProbThreshold,
- face_plugins = string.Join(",", baseFaceRequest.FacePlugins),
- status = baseFaceRequest.Status,
- });
+ private Url GetRequestUrl(BaseFaceRequest baseFaceRequest)
+ {
+ var requestUrl = $"{_configuration.Domain}:{_configuration.Port}/api/v1/verification/verify";
+
+ return requestUrl
+ .SetQueryParams(new
+ {
+ limit = baseFaceRequest.Limit,
+ det_prob_threshold = baseFaceRequest.DetProbThreshold,
+ face_plugins = string.Join(",", baseFaceRequest.FacePlugins),
+ status = baseFaceRequest.Status,
+ });
+ }
}
}
\ No newline at end of file