Complete SubCategory Data Models and Implementations ...
This commit is contained in:
@@ -0,0 +1,279 @@
|
||||
using GraphQL.Types;
|
||||
using xCategoryService.Interfaces;
|
||||
using xCategoryService.Interfaces.Entities;
|
||||
using xCategoryService.Models.Entities;
|
||||
using xCategoryService.Providers.Entities;
|
||||
using xCategoryService.Providers.GraphQL;
|
||||
using xDataService.Db;
|
||||
using xDataService.Models;
|
||||
using xDataService.Providers;
|
||||
|
||||
namespace xCategoryService.Helpers
|
||||
{
|
||||
public static class XCategoryServiceHelper
|
||||
{
|
||||
//
|
||||
#region EF Repository Descriptor Provider(s) ...
|
||||
public static XEFRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryEFRepository<TContext>,
|
||||
TContext
|
||||
> GetXSubCategoryEFRepositoryDescriptor<TContext>()
|
||||
where TContext : XDbContext
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryEFRepository<TContext>,
|
||||
TContext
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XEFRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryEFRepository<TContext>,
|
||||
TContext,
|
||||
IXSubCategorySeeder,
|
||||
TSeederImplementation
|
||||
> GetXSubCategoryEFRepositoryDescriptor<TContext, TSeederImplementation>()
|
||||
where TContext : XDbContext
|
||||
where TSeederImplementation : XBaseDbSeeder<XSubCategory, int>
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryEFRepository<TContext>,
|
||||
TContext,
|
||||
IXSubCategorySeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region Mongo Repository Descriptor Provider(s) ...
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryMongoRepository
|
||||
> GetXSubCategoryMongoRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryMongoRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryMongoRepository,
|
||||
IXSubCategorySeeder,
|
||||
TSeederImplementation
|
||||
> GetXSubCategoryMongoRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XSubCategory, int>
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryMongoRepository,
|
||||
IXSubCategorySeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region InMemory Repository Descriptor Provider(s) ...
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryInMemoryRepository
|
||||
> GetXSubCategoryInMemoryRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryInMemoryRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryInMemoryRepository,
|
||||
IXSubCategorySeeder,
|
||||
TSeederImplementation
|
||||
> GetXSubCategoryInMemoryRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XSubCategory, int>
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XSubCategory,
|
||||
int,
|
||||
IXSubCategoryKeyGenerator,
|
||||
XSubCategoryKeyGenerator,
|
||||
IXSubCategoryRepositoryEvents,
|
||||
XSubCategoryRepositoryEvents,
|
||||
XSubCategoryGraphType,
|
||||
IntGraphType,
|
||||
XSubCategoryGraphQuery,
|
||||
IXSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphQLTypeHelper,
|
||||
XSubCategoryGraphSchema,
|
||||
IXSubCategoryRepository,
|
||||
XSubCategoryInMemoryRepository,
|
||||
IXSubCategorySeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user