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) ... // #region Category public static XEFRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryEFRepository, TContext > GetXCategoryEFRepositoryDescriptor() where TContext : XDbContext { // var result = new XEFRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryEFRepository, TContext >(); // return result; } public static XEFRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryEFRepository, TContext, IXCategorySeeder, TSeederImplementation > GetXCategoryEFRepositoryDescriptor() where TContext : XDbContext where TSeederImplementation : XBaseDbSeeder { // var result = new XEFRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryEFRepository, TContext, IXCategorySeeder, TSeederImplementation >(); // return result; } #endregion // #region SubCategory public static XEFRepositoryDescriptor< XSubCategory, int, IXSubCategoryKeyGenerator, XSubCategoryKeyGenerator, IXSubCategoryRepositoryEvents, XSubCategoryRepositoryEvents, XSubCategoryGraphType, IntGraphType, XSubCategoryGraphQuery, IXSubCategoryGraphQLTypeHelper, XSubCategoryGraphQLTypeHelper, XSubCategoryGraphSchema, IXSubCategoryRepository, XSubCategoryEFRepository, TContext > GetXSubCategoryEFRepositoryDescriptor() where TContext : XDbContext { // var result = new XEFRepositoryDescriptor< XSubCategory, int, IXSubCategoryKeyGenerator, XSubCategoryKeyGenerator, IXSubCategoryRepositoryEvents, XSubCategoryRepositoryEvents, XSubCategoryGraphType, IntGraphType, XSubCategoryGraphQuery, IXSubCategoryGraphQLTypeHelper, XSubCategoryGraphQLTypeHelper, XSubCategoryGraphSchema, IXSubCategoryRepository, XSubCategoryEFRepository, TContext >(); // return result; } public static XEFRepositoryDescriptor< XSubCategory, int, IXSubCategoryKeyGenerator, XSubCategoryKeyGenerator, IXSubCategoryRepositoryEvents, XSubCategoryRepositoryEvents, XSubCategoryGraphType, IntGraphType, XSubCategoryGraphQuery, IXSubCategoryGraphQLTypeHelper, XSubCategoryGraphQLTypeHelper, XSubCategoryGraphSchema, IXSubCategoryRepository, XSubCategoryEFRepository, TContext, IXSubCategorySeeder, TSeederImplementation > GetXSubCategoryEFRepositoryDescriptor() where TContext : XDbContext where TSeederImplementation : XBaseDbSeeder { // var result = new XEFRepositoryDescriptor< XSubCategory, int, IXSubCategoryKeyGenerator, XSubCategoryKeyGenerator, IXSubCategoryRepositoryEvents, XSubCategoryRepositoryEvents, XSubCategoryGraphType, IntGraphType, XSubCategoryGraphQuery, IXSubCategoryGraphQLTypeHelper, XSubCategoryGraphQLTypeHelper, XSubCategoryGraphSchema, IXSubCategoryRepository, XSubCategoryEFRepository, TContext, IXSubCategorySeeder, TSeederImplementation >(); // return result; } #endregion #endregion // #region Mongo Repository Descriptor Provider(s) ... // #region Category public static XMongoRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryMongoRepository > GetXCategoryMongoRepositoryDescriptor() { // var result = new XMongoRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryMongoRepository >(); // return result; } public static XMongoRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryMongoRepository, IXCategorySeeder, TSeederImplementation > GetXCategoryMongoRepositoryDescriptor() where TSeederImplementation : XBaseDbSeeder { // var result = new XMongoRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryMongoRepository, IXCategorySeeder, TSeederImplementation >(); // return result; } #endregion // #region SubCategory 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() where TSeederImplementation : XBaseDbSeeder { // var result = new XMongoRepositoryDescriptor< XSubCategory, int, IXSubCategoryKeyGenerator, XSubCategoryKeyGenerator, IXSubCategoryRepositoryEvents, XSubCategoryRepositoryEvents, XSubCategoryGraphType, IntGraphType, XSubCategoryGraphQuery, IXSubCategoryGraphQLTypeHelper, XSubCategoryGraphQLTypeHelper, XSubCategoryGraphSchema, IXSubCategoryRepository, XSubCategoryMongoRepository, IXSubCategorySeeder, TSeederImplementation >(); // return result; } #endregion #endregion // #region InMemory Repository Descriptor Provider(s) ... // #region Category public static XInMemoryRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryInMemoryRepository > GetXCategoryInMemoryRepositoryDescriptor() { // var result = new XInMemoryRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryInMemoryRepository >(); // return result; } public static XInMemoryRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryInMemoryRepository, IXCategorySeeder, TSeederImplementation > GetXCategoryInMemoryRepositoryDescriptor() where TSeederImplementation : XBaseDbSeeder { // var result = new XInMemoryRepositoryDescriptor< XCategory, int, IXCategoryKeyGenerator, XCategoryKeyGenerator, IXCategoryRepositoryEvents, XCategoryRepositoryEvents, XCategoryGraphType, IntGraphType, XCategoryGraphQuery, IXCategoryGraphQLTypeHelper, XCategoryGraphQLTypeHelper, XCategoryGraphSchema, IXCategoryRepository, XCategoryInMemoryRepository, IXCategorySeeder, TSeederImplementation >(); // return result; } #endregion // #region SubCategory 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() where TSeederImplementation : XBaseDbSeeder { // var result = new XInMemoryRepositoryDescriptor< XSubCategory, int, IXSubCategoryKeyGenerator, XSubCategoryKeyGenerator, IXSubCategoryRepositoryEvents, XSubCategoryRepositoryEvents, XSubCategoryGraphType, IntGraphType, XSubCategoryGraphQuery, IXSubCategoryGraphQLTypeHelper, XSubCategoryGraphQLTypeHelper, XSubCategoryGraphSchema, IXSubCategoryRepository, XSubCategoryInMemoryRepository, IXSubCategorySeeder, TSeederImplementation >(); // return result; } #endregion #endregion } }