last ...
This commit is contained in:
@@ -0,0 +1,816 @@
|
||||
using System;
|
||||
using GraphQL.Types;
|
||||
using xAiModels.Interfaces.Entities;
|
||||
using xAiModels.Models.Entities;
|
||||
using xAiModels.Providers.Entities;
|
||||
using xAiModels.Providers.GraphQL;
|
||||
using xDataService.Db;
|
||||
using xDataService.Models;
|
||||
using xDataService.Providers;
|
||||
|
||||
namespace xAiModels.Helpers
|
||||
{
|
||||
public static class XAiModelsHelper
|
||||
{
|
||||
//
|
||||
#region XAiConversation ...
|
||||
//
|
||||
#region EF Repository Descriptor Provider(s) ...
|
||||
public static XEFRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationEFRepository<TContext>,
|
||||
TContext
|
||||
> GetXAiConversationEFRepositoryDescriptor<TContext>()
|
||||
where TContext : XDbContext
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationEFRepository<TContext>,
|
||||
TContext
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XEFRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationEFRepository<TContext>,
|
||||
TContext,
|
||||
IXAiConversationSeeder,
|
||||
TSeederImplementation
|
||||
> GetXAiConversationEFRepositoryDescriptor<TContext, TSeederImplementation>()
|
||||
where TContext : XDbContext
|
||||
where TSeederImplementation : XBaseDbSeeder<XAiConversation, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationEFRepository<TContext>,
|
||||
TContext,
|
||||
IXAiConversationSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region Mongo Repository Descriptor Provider(s) ...
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationMongoRepository
|
||||
> GetXAiConversationMongoRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationMongoRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationMongoRepository,
|
||||
IXAiConversationSeeder,
|
||||
TSeederImplementation
|
||||
> GetXAiConversationMongoRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XAiConversation, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationMongoRepository,
|
||||
IXAiConversationSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region InMemory Repository Descriptor Provider(s) ...
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationInMemoryRepository
|
||||
> GetXAiConversationInMemoryRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationInMemoryRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationInMemoryRepository,
|
||||
IXAiConversationSeeder,
|
||||
TSeederImplementation
|
||||
> GetXAiConversationInMemoryRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XAiConversation, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XAiConversation,
|
||||
Guid,
|
||||
IXAiConversationKeyGenerator,
|
||||
XAiConversationKeyGenerator,
|
||||
IXAiConversationRepositoryEvents,
|
||||
XAiConversationRepositoryEvents,
|
||||
XAiConversationGraphType,
|
||||
GuidGraphType,
|
||||
XAiConversationGraphQuery,
|
||||
IXAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphQLTypeHelper,
|
||||
XAiConversationGraphSchema,
|
||||
IXAiConversationRepository,
|
||||
XAiConversationInMemoryRepository,
|
||||
IXAiConversationSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region XAiMessage ...
|
||||
//
|
||||
#region EF Repository Descriptor Provider(s) ...
|
||||
public static XEFRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageEFRepository<TContext>,
|
||||
TContext
|
||||
> GetXAiMessageEFRepositoryDescriptor<TContext>()
|
||||
where TContext : XDbContext
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageEFRepository<TContext>,
|
||||
TContext
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XEFRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageEFRepository<TContext>,
|
||||
TContext,
|
||||
IXAiMessageSeeder,
|
||||
TSeederImplementation
|
||||
> GetXAiMessageEFRepositoryDescriptor<TContext, TSeederImplementation>()
|
||||
where TContext : XDbContext
|
||||
where TSeederImplementation : XBaseDbSeeder<XAiMessage, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageEFRepository<TContext>,
|
||||
TContext,
|
||||
IXAiMessageSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region Mongo Repository Descriptor Provider(s) ...
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageMongoRepository
|
||||
> GetXAiMessageMongoRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageMongoRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageMongoRepository,
|
||||
IXAiMessageSeeder,
|
||||
TSeederImplementation
|
||||
> GetXAiMessageMongoRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XAiMessage, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageMongoRepository,
|
||||
IXAiMessageSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region InMemory Repository Descriptor Provider(s) ...
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageInMemoryRepository
|
||||
> GetXAiMessageInMemoryRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageInMemoryRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageInMemoryRepository,
|
||||
IXAiMessageSeeder,
|
||||
TSeederImplementation
|
||||
> GetXAiMessageInMemoryRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XAiMessage, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XAiMessage,
|
||||
Guid,
|
||||
IXAiMessageKeyGenerator,
|
||||
XAiMessageKeyGenerator,
|
||||
IXAiMessageRepositoryEvents,
|
||||
XAiMessageRepositoryEvents,
|
||||
XAiMessageGraphType,
|
||||
GuidGraphType,
|
||||
XAiMessageGraphQuery,
|
||||
IXAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphQLTypeHelper,
|
||||
XAiMessageGraphSchema,
|
||||
IXAiMessageRepository,
|
||||
XAiMessageInMemoryRepository,
|
||||
IXAiMessageSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region XAiProject ...
|
||||
//
|
||||
#region EF Repository Descriptor Provider(s) ...
|
||||
public static XEFRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectEFRepository<TContext>,
|
||||
TContext
|
||||
> GetXAiProjectEFRepositoryDescriptor<TContext>()
|
||||
where TContext : XDbContext
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectEFRepository<TContext>,
|
||||
TContext
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XEFRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectEFRepository<TContext>,
|
||||
TContext,
|
||||
IXAiProjectSeeder,
|
||||
TSeederImplementation
|
||||
> GetXAiProjectEFRepositoryDescriptor<TContext, TSeederImplementation>()
|
||||
where TContext : XDbContext
|
||||
where TSeederImplementation : XBaseDbSeeder<XAiProject, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectEFRepository<TContext>,
|
||||
TContext,
|
||||
IXAiProjectSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region Mongo Repository Descriptor Provider(s) ...
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectMongoRepository
|
||||
> GetXAiProjectMongoRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectMongoRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectMongoRepository,
|
||||
IXAiProjectSeeder,
|
||||
TSeederImplementation
|
||||
> GetXAiProjectMongoRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XAiProject, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectMongoRepository,
|
||||
IXAiProjectSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region InMemory Repository Descriptor Provider(s) ...
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectInMemoryRepository
|
||||
> GetXAiProjectInMemoryRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectInMemoryRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectInMemoryRepository,
|
||||
IXAiProjectSeeder,
|
||||
TSeederImplementation
|
||||
> GetXAiProjectInMemoryRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XAiProject, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XAiProject,
|
||||
Guid,
|
||||
IXAiProjectKeyGenerator,
|
||||
XAiProjectKeyGenerator,
|
||||
IXAiProjectRepositoryEvents,
|
||||
XAiProjectRepositoryEvents,
|
||||
XAiProjectGraphType,
|
||||
GuidGraphType,
|
||||
XAiProjectGraphQuery,
|
||||
IXAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphQLTypeHelper,
|
||||
XAiProjectGraphSchema,
|
||||
IXAiProjectRepository,
|
||||
XAiProjectInMemoryRepository,
|
||||
IXAiProjectSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user