From 527c5cfb2b2d4b3b56037a2c73425b1977486f84 Mon Sep 17 00:00:00 2001 From: Hadi Khazaee Asl Date: Fri, 29 May 2026 19:33:00 +0330 Subject: [PATCH] Cleanup unnecessary classes and add only Provider Controllers ... --- .../XTestProviderControllerBase.cs | 16 ++++---- Controllers/XFileRepositoryController.cs | 32 --------------- .../XFileRepositoryProviderController.cs | 35 ----------------- Controllers/XFileServiceController.cs | 32 --------------- Controllers/XFileServiceProviderController.cs | 35 ----------------- ...roller.cs => XStringProviderController.cs} | 10 ++--- Controllers/XStringRepositoryController.cs | 32 --------------- .../XStringRepositoryProviderController.cs | 35 ----------------- Controllers/XStringServiceController.cs | 32 --------------- ...ontroller.cs => XTagProviderController.cs} | 10 ++--- Controllers/XTagRepositoryController.cs | 32 --------------- .../XTagRepositoryProviderController.cs | 35 ----------------- Controllers/XTagServiceController.cs | 32 --------------- Controllers/XTermsAndConditionsController.cs | 27 ------------- .../XTermsAndConditionsProviderController.cs | 28 +++++++++++++ ...ntroller.cs => XTestProviderController.cs} | 18 ++++----- .../XTestRepositoryProviderController.cs | 39 ------------------- Controllers/XTestServiceController.cs | 36 ----------------- DI/XDIHelperExtension.cs | 1 + Interfaces/IXTestProvider.cs | 11 ++++++ Interfaces/IXTestProviderController.cs | 11 ++++++ Providers/XTestProvider.cs | 37 ++++++++++++++++++ 22 files changed, 115 insertions(+), 461 deletions(-) rename Controllers/XTestServiceProviderController.cs => Base/XTestProviderControllerBase.cs (67%) delete mode 100644 Controllers/XFileRepositoryController.cs delete mode 100644 Controllers/XFileRepositoryProviderController.cs delete mode 100644 Controllers/XFileServiceController.cs delete mode 100644 Controllers/XFileServiceProviderController.cs rename Controllers/{XStringServiceProviderController.cs => XStringProviderController.cs} (76%) delete mode 100644 Controllers/XStringRepositoryController.cs delete mode 100644 Controllers/XStringRepositoryProviderController.cs delete mode 100644 Controllers/XStringServiceController.cs rename Controllers/{XTagServiceProviderController.cs => XTagProviderController.cs} (77%) delete mode 100644 Controllers/XTagRepositoryController.cs delete mode 100644 Controllers/XTagRepositoryProviderController.cs delete mode 100644 Controllers/XTagServiceController.cs delete mode 100644 Controllers/XTermsAndConditionsController.cs create mode 100644 Controllers/XTermsAndConditionsProviderController.cs rename Controllers/{XTestRepositoryController.cs => XTestProviderController.cs} (64%) delete mode 100644 Controllers/XTestRepositoryProviderController.cs delete mode 100644 Controllers/XTestServiceController.cs create mode 100644 Interfaces/IXTestProvider.cs create mode 100644 Interfaces/IXTestProviderController.cs create mode 100644 Providers/XTestProvider.cs diff --git a/Controllers/XTestServiceProviderController.cs b/Base/XTestProviderControllerBase.cs similarity index 67% rename from Controllers/XTestServiceProviderController.cs rename to Base/XTestProviderControllerBase.cs index 534a97b..a070317 100644 --- a/Controllers/XTestServiceProviderController.cs +++ b/Base/XTestProviderControllerBase.cs @@ -1,29 +1,29 @@ using System; using System.Linq; -using Microsoft.AspNetCore.Authorization; using Microsoft.EntityFrameworkCore.Query; using Microsoft.Extensions.Logging; using xCommons.Configurations; using xCommons.Providers; using xIdentityService.Interfaces; using xPushService.Controllers; -using xPushService.Interfaces; using xServices.Interfaces; using xServices.Models.Dtos; using xServices.Models.Entities; using xServices.Providers; -namespace xServices.Controllers +namespace xServices.Base { - [AllowAnonymous] - public class XTestServiceProviderController : XBaseServiceProviderController, IXBaseServiceProviderController + /// + /// an Abstract Implementation of Provided Actions for XTest ... + /// + public abstract class XTestProviderControllerBase : XBaseProvidedController, IXTestProviderController { - public XTestServiceProviderController( - ILogger logger, + protected XTestProviderControllerBase( + ILogger logger, XAppConfiguration appConfiguration, IXIdentityProvider identityProvider, XValidationProvider validationProvider, - IXTestServiceProvider provider, + IXTestProvider provider, Func, IOrderedQueryable> defaultOrderBuilder = null, Func, IIncludableQueryable> defaultIncludeBuilder = null ) : base( diff --git a/Controllers/XFileRepositoryController.cs b/Controllers/XFileRepositoryController.cs deleted file mode 100644 index f5659a5..0000000 --- a/Controllers/XFileRepositoryController.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xFileService.Controllers; -using xFileService.Interfaces.Entities; -using xFileService.Models.Entities; - -namespace xServices.Controllers -{ - public class XFileRepositoryController : XFileRepositoryControllerBase - { - public XFileRepositoryController( - ILogger logger, - XAppConfiguration appConfiguration, - XValidationProvider validationProvider, - IXFileRepository repository, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - validationProvider, - repository, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XFileRepositoryProviderController.cs b/Controllers/XFileRepositoryProviderController.cs deleted file mode 100644 index 5842780..0000000 --- a/Controllers/XFileRepositoryProviderController.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xIdentityService.Interfaces; -using xFileService.Controllers; -using xFileService.Interfaces.Entities; -using xFileService.Models.Entities; - -namespace xServices.Controllers -{ - public class XFileRepositoryProviderController : XFileRepositoryProviderControllerBase - { - public XFileRepositoryProviderController( - ILogger logger, - XAppConfiguration appConfiguration, - IXIdentityProvider identityProvider, - XValidationProvider validationProvider, - IXFileRepositoryProvider provider, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - identityProvider, - validationProvider, - provider, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XFileServiceController.cs b/Controllers/XFileServiceController.cs deleted file mode 100644 index 6d94316..0000000 --- a/Controllers/XFileServiceController.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xFileService.Controllers; -using xFileService.Interfaces.Dtos; -using xFileService.Models.Entities; - -namespace xServices.Controllers -{ - public class XFileServiceController : XFileServiceControllerBase - { - public XFileServiceController( - ILogger logger, - XAppConfiguration appConfiguration, - XValidationProvider validationProvider, - IXFileRepositoryService repositoryService, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - validationProvider, - repositoryService, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XFileServiceProviderController.cs b/Controllers/XFileServiceProviderController.cs deleted file mode 100644 index ec9846a..0000000 --- a/Controllers/XFileServiceProviderController.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xIdentityService.Interfaces; -using xFileService.Controllers; -using xFileService.Interfaces.Dtos; -using xFileService.Models.Entities; - -namespace xServices.Controllers -{ - public class XFileServiceProviderController : XFileServiceProviderControllerBase - { - public XFileServiceProviderController( - ILogger logger, - XAppConfiguration appConfiguration, - IXIdentityProvider identityProvider, - XValidationProvider validationProvider, - IXFileServiceProvider provider, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - identityProvider, - validationProvider, - provider, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XStringServiceProviderController.cs b/Controllers/XStringProviderController.cs similarity index 76% rename from Controllers/XStringServiceProviderController.cs rename to Controllers/XStringProviderController.cs index 15c941f..f2e0fbd 100644 --- a/Controllers/XStringServiceProviderController.cs +++ b/Controllers/XStringProviderController.cs @@ -6,19 +6,19 @@ using xCommons.Configurations; using xCommons.Providers; using xIdentityService.Interfaces; using xStringService.Controllers; -using xStringService.Interfaces.Dtos; +using xStringService.Interfaces; using xStringService.Models.Entities; namespace xServices.Controllers { - public class XStringServiceProviderController : XStringServiceProviderControllerBase + public class XStringProviderController : XStringProviderControllerBase, IXStringProviderController { - public XStringServiceProviderController( - ILogger logger, + public XStringProviderController( + ILogger logger, XAppConfiguration appConfiguration, IXIdentityProvider identityProvider, XValidationProvider validationProvider, - IXStringServiceProvider provider, + IXStringProvider provider, Func, IOrderedQueryable> defaultOrderBuilder = null, Func, IIncludableQueryable> defaultIncludeBuilder = null ) : base( diff --git a/Controllers/XStringRepositoryController.cs b/Controllers/XStringRepositoryController.cs deleted file mode 100644 index 2af10a8..0000000 --- a/Controllers/XStringRepositoryController.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xStringService.Controllers; -using xStringService.Interfaces.Entities; -using xStringService.Models.Entities; - -namespace xServices.Controllers -{ - public class XStringRepositoryController : XStringRepositoryControllerBase - { - public XStringRepositoryController( - ILogger logger, - XAppConfiguration appConfiguration, - XValidationProvider validationProvider, - IXStringRepository repository, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - validationProvider, - repository, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XStringRepositoryProviderController.cs b/Controllers/XStringRepositoryProviderController.cs deleted file mode 100644 index b7122df..0000000 --- a/Controllers/XStringRepositoryProviderController.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xIdentityService.Interfaces; -using xStringService.Controllers; -using xStringService.Interfaces.Entities; -using xStringService.Models.Entities; - -namespace xServices.Controllers -{ - public class XStringRepositoryProviderController : XStringRepositoryProviderControllerBase - { - public XStringRepositoryProviderController( - ILogger logger, - XAppConfiguration appConfiguration, - IXIdentityProvider identityProvider, - XValidationProvider validationProvider, - IXStringRepositoryProvider provider, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - identityProvider, - validationProvider, - provider, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XStringServiceController.cs b/Controllers/XStringServiceController.cs deleted file mode 100644 index 0f33cb1..0000000 --- a/Controllers/XStringServiceController.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xStringService.Controllers; -using xStringService.Interfaces.Dtos; -using xStringService.Models.Entities; - -namespace xServices.Controllers -{ - public class XStringServiceController : XStringServiceControllerBase - { - public XStringServiceController( - ILogger logger, - XAppConfiguration appConfiguration, - XValidationProvider validationProvider, - IXStringRepositoryService repositoryService, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - validationProvider, - repositoryService, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XTagServiceProviderController.cs b/Controllers/XTagProviderController.cs similarity index 77% rename from Controllers/XTagServiceProviderController.cs rename to Controllers/XTagProviderController.cs index 7eabab1..76c7797 100644 --- a/Controllers/XTagServiceProviderController.cs +++ b/Controllers/XTagProviderController.cs @@ -6,19 +6,19 @@ using xCommons.Configurations; using xCommons.Providers; using xIdentityService.Interfaces; using xTagService.Controllers; -using xTagService.Interfaces.Dtos; +using xTagService.Interfaces; using xTagService.Models.Entities; namespace xServices.Controllers { - public class XTagServiceProviderController : XTagServiceProviderControllerBase + public class XTagProviderController : XTagProviderControllerBase, IXTagProviderController { - public XTagServiceProviderController( - ILogger logger, + public XTagProviderController( + ILogger logger, XAppConfiguration appConfiguration, IXIdentityProvider identityProvider, XValidationProvider validationProvider, - IXTagServiceProvider provider, + IXTagProvider provider, Func, IOrderedQueryable> defaultOrderBuilder = null, Func, IIncludableQueryable> defaultIncludeBuilder = null ) : base( diff --git a/Controllers/XTagRepositoryController.cs b/Controllers/XTagRepositoryController.cs deleted file mode 100644 index 136032a..0000000 --- a/Controllers/XTagRepositoryController.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xTagService.Controllers; -using xTagService.Interfaces.Entities; -using xTagService.Models.Entities; - -namespace xServices.Controllers -{ - public class XTagRepositoryController : XTagRepositoryControllerBase - { - public XTagRepositoryController( - ILogger logger, - XAppConfiguration appConfiguration, - XValidationProvider validationProvider, - IXTagRepository repository, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - validationProvider, - repository, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XTagRepositoryProviderController.cs b/Controllers/XTagRepositoryProviderController.cs deleted file mode 100644 index 294174f..0000000 --- a/Controllers/XTagRepositoryProviderController.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xIdentityService.Interfaces; -using xTagService.Controllers; -using xTagService.Interfaces.Entities; -using xTagService.Models.Entities; - -namespace xServices.Controllers -{ - public class XTagRepositoryProviderController : XTagRepositoryProviderControllerBase - { - public XTagRepositoryProviderController( - ILogger logger, - XAppConfiguration appConfiguration, - IXIdentityProvider identityProvider, - XValidationProvider validationProvider, - IXTagRepositoryProvider provider, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - identityProvider, - validationProvider, - provider, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XTagServiceController.cs b/Controllers/XTagServiceController.cs deleted file mode 100644 index 92cb4d2..0000000 --- a/Controllers/XTagServiceController.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System; -using System.Linq; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xTagService.Controllers; -using xTagService.Interfaces.Dtos; -using xTagService.Models.Entities; - -namespace xServices.Controllers -{ - public class XTagServiceController : XTagServiceControllerBase - { - public XTagServiceController( - ILogger logger, - XAppConfiguration appConfiguration, - XValidationProvider validationProvider, - IXTagRepositoryService repositoryService, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - validationProvider, - repositoryService, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XTermsAndConditionsController.cs b/Controllers/XTermsAndConditionsController.cs deleted file mode 100644 index ce74712..0000000 --- a/Controllers/XTermsAndConditionsController.cs +++ /dev/null @@ -1,27 +0,0 @@ -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xIdentityService.Interfaces; -using xTermsAndConditionsService.Controllers; -using xTermsAndConditionsService.Interfaces; - -namespace xServices.Controllers -{ - public class XTermsAndConditionsController : XTermsAndComditionsControllerBase, IXTermsAndComditionsController - { - public XTermsAndConditionsController( - ILogger logger, - XAppConfiguration appConfiguration, - IXIdentityProvider identityProvider, - IXTermsAndComditionsProvider provider, - XValidationProvider validationProvider - ) : base( - logger, - appConfiguration, - identityProvider, - provider, - validationProvider - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XTermsAndConditionsProviderController.cs b/Controllers/XTermsAndConditionsProviderController.cs new file mode 100644 index 0000000..f403ebf --- /dev/null +++ b/Controllers/XTermsAndConditionsProviderController.cs @@ -0,0 +1,28 @@ +using Microsoft.Extensions.Logging; +using xCommons.Configurations; +using xCommons.Providers; +using xIdentityService.Interfaces; +using xTermsAndConditionsService.Controllers; +using xTermsAndConditionsService.Interfaces; +using xTermsAndConditionsService.Providers; + +namespace xServices.Controllers +{ + public class XTermsAndConditionsProviderController : XTermsAndConditionsControllerBase, IXTermsAndConditionsController + { + public XTermsAndConditionsProviderController( + ILogger logger, + XAppConfiguration appConfiguration, + IXIdentityProvider identityProvider, + XValidationProvider validationProvider, + IXTermsAndConditionsProvider provider + ) : base( + logger, + appConfiguration, + identityProvider, + validationProvider, + provider + ) + { } + } +} \ No newline at end of file diff --git a/Controllers/XTestRepositoryController.cs b/Controllers/XTestProviderController.cs similarity index 64% rename from Controllers/XTestRepositoryController.cs rename to Controllers/XTestProviderController.cs index 31d5b72..e39d532 100644 --- a/Controllers/XTestRepositoryController.cs +++ b/Controllers/XTestProviderController.cs @@ -1,32 +1,32 @@ using System; using System.Linq; -using Microsoft.AspNetCore.Authorization; using Microsoft.EntityFrameworkCore.Query; using Microsoft.Extensions.Logging; using xCommons.Configurations; using xCommons.Providers; -using xDataService.Controllers; -using xDataService.Interfaces; +using xIdentityService.Interfaces; +using xServices.Base; using xServices.Interfaces; using xServices.Models.Entities; namespace xServices.Controllers { - [AllowAnonymous] - public partial class XTestRepositoryController : XBaseRepositoryController, IXBaseRepositoryController + public class XTestProviderController : XTestProviderControllerBase, IXTestProviderController { - public XTestRepositoryController( - ILogger logger, + public XTestProviderController( + ILogger logger, XAppConfiguration appConfiguration, + IXIdentityProvider identityProvider, XValidationProvider validationProvider, - IXTestRepository repository, + IXTestProvider provider, Func, IOrderedQueryable> defaultOrderBuilder = null, Func, IIncludableQueryable> defaultIncludeBuilder = null ) : base( logger, appConfiguration, + identityProvider, validationProvider, - repository, + provider, defaultOrderBuilder, defaultIncludeBuilder ) diff --git a/Controllers/XTestRepositoryProviderController.cs b/Controllers/XTestRepositoryProviderController.cs deleted file mode 100644 index c2f32d5..0000000 --- a/Controllers/XTestRepositoryProviderController.cs +++ /dev/null @@ -1,39 +0,0 @@ -using System; -using System.Linq; -using Microsoft.AspNetCore.Authorization; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xIdentityService.Interfaces; -using xPushService.Controllers; -using xPushService.Interfaces; -using xServices.Interfaces; -using xServices.Models.Entities; -using xServices.Providers; - -namespace xServices.Controllers -{ - [AllowAnonymous] - public class XTestRepositoryProviderController : XBaseRepositoryProviderController, IXBaseRepositoryProviderController - { - public XTestRepositoryProviderController( - ILogger logger, - XAppConfiguration appConfiguration, - IXIdentityProvider identityProvider, - XValidationProvider validationProvider, - IXTestRepositoryProvider provider, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - identityProvider, - validationProvider, - provider, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/Controllers/XTestServiceController.cs b/Controllers/XTestServiceController.cs deleted file mode 100644 index a64b8fc..0000000 --- a/Controllers/XTestServiceController.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System; -using System.Linq; -using Microsoft.AspNetCore.Authorization; -using Microsoft.EntityFrameworkCore.Query; -using Microsoft.Extensions.Logging; -using xCommons.Configurations; -using xCommons.Providers; -using xDataService.Controllers; -using xDataService.Interfaces; -using xServices.Interfaces; -using xServices.Models.Dtos; -using xServices.Models.Entities; - -namespace xServices.Controllers -{ - [AllowAnonymous] - public class XTestServiceController : XBaseServiceController, IXBaseServiceController - { - public XTestServiceController( - ILogger logger, - XAppConfiguration appConfiguration, - XValidationProvider validationProvider, - IXTestRepositoryService repositoryService, - Func, IOrderedQueryable> defaultOrderBuilder = null, - Func, IIncludableQueryable> defaultIncludeBuilder = null - ) : base( - logger, - appConfiguration, - validationProvider, - repositoryService, - defaultOrderBuilder, - defaultIncludeBuilder - ) - { } - } -} \ No newline at end of file diff --git a/DI/XDIHelperExtension.cs b/DI/XDIHelperExtension.cs index 1bb73d8..c392342 100644 --- a/DI/XDIHelperExtension.cs +++ b/DI/XDIHelperExtension.cs @@ -271,6 +271,7 @@ namespace xServices.DI // // Register Repository Services ... + services.AddScoped(); services.AddScoped(); #endregion diff --git a/Interfaces/IXTestProvider.cs b/Interfaces/IXTestProvider.cs new file mode 100644 index 0000000..e7dee63 --- /dev/null +++ b/Interfaces/IXTestProvider.cs @@ -0,0 +1,11 @@ +using System; +using xPushService.Interfaces; +using xServices.Models.Dtos; +using xServices.Models.Entities; +using xServices.Providers; + +namespace xServices.Interfaces +{ + public interface IXTestProvider : IXBaseProvided + {} +} \ No newline at end of file diff --git a/Interfaces/IXTestProviderController.cs b/Interfaces/IXTestProviderController.cs new file mode 100644 index 0000000..4564056 --- /dev/null +++ b/Interfaces/IXTestProviderController.cs @@ -0,0 +1,11 @@ +using System; +using xPushService.Interfaces; +using xServices.Models.Dtos; +using xServices.Models.Entities; +using xServices.Providers; + +namespace xServices.Interfaces +{ + public interface IXTestProviderController : IXBaseProvidedController + { } +} \ No newline at end of file diff --git a/Providers/XTestProvider.cs b/Providers/XTestProvider.cs new file mode 100644 index 0000000..a9c845d --- /dev/null +++ b/Providers/XTestProvider.cs @@ -0,0 +1,37 @@ +using System; +using xCommons.Extensions; +using xIdentityModels.Models; +using xPushService.Providers; +using xServices.Interfaces; +using xServices.Models.Dtos; +using xServices.Models.Entities; + +namespace xServices.Providers +{ + public class XTestProvider : XBaseProvided, IXTestProvider + { + public XTestProvider( + IXTestServiceProvider provider + ) : base( + provider, + permittedRoles: new string[] { } + ) + { } + + public override bool IsOwned( + XTestDto item, + XUserClaimsInfoDto userInfo + ) + { + return !item.IsNullOrDefault(); + } + + public override bool IsOwned( + XTest item, + XUserClaimsInfoDto userInfo + ) + { + return item.IsNullOrDefault(); + } + } +} \ No newline at end of file