last ...
This commit is contained in:
@@ -0,0 +1,280 @@
|
||||
using System;
|
||||
using GraphQL.Types;
|
||||
using xDataService.Db;
|
||||
using xDataService.Models;
|
||||
using xDataService.Providers;
|
||||
using xFileService.Interfaces;
|
||||
using xFileService.Interfaces.Entities;
|
||||
using xFileService.Models.Entities;
|
||||
using xFileService.Providers.Entities;
|
||||
using xFileService.Providers.GraphQL;
|
||||
|
||||
namespace xFileService.Helpers
|
||||
{
|
||||
public static class XFileServiceHelper
|
||||
{
|
||||
//
|
||||
#region EF Repository Descriptor Provider(s) ...
|
||||
public static XEFRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileEFRepository<TContext>,
|
||||
TContext
|
||||
> GetXFileEFRepositoryDescriptor<TContext>()
|
||||
where TContext : XDbContext
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileEFRepository<TContext>,
|
||||
TContext
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XEFRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileEFRepository<TContext>,
|
||||
TContext,
|
||||
IXFileSeeder,
|
||||
TSeederImplementation
|
||||
> GetXFileEFRepositoryDescriptor<TContext, TSeederImplementation>()
|
||||
where TContext : XDbContext
|
||||
where TSeederImplementation : XBaseDbSeeder<XFile, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XEFRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileEFRepository<TContext>,
|
||||
TContext,
|
||||
IXFileSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region Mongo Repository Descriptor Provider(s) ...
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileMongoRepository
|
||||
> GetXFileMongoRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileMongoRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XMongoRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileMongoRepository,
|
||||
IXFileSeeder,
|
||||
TSeederImplementation
|
||||
> GetXFileMongoRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XFile, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XMongoRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileMongoRepository,
|
||||
IXFileSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//
|
||||
#region InMemory Repository Descriptor Provider(s) ...
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileInMemoryRepository
|
||||
> GetXFileInMemoryRepositoryDescriptor()
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileInMemoryRepository
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
public static XInMemoryRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileInMemoryRepository,
|
||||
IXFileSeeder,
|
||||
TSeederImplementation
|
||||
> GetXFileInMemoryRepositoryDescriptor<TSeederImplementation>()
|
||||
where TSeederImplementation : XBaseDbSeeder<XFile, Guid>
|
||||
{
|
||||
//
|
||||
var result = new XInMemoryRepositoryDescriptor<
|
||||
XFile,
|
||||
Guid,
|
||||
IXFileKeyGenerator,
|
||||
XFileKeyGenerator,
|
||||
IXFileRepositoryEvents,
|
||||
XFileRepositoryEvents,
|
||||
XFileGraphType,
|
||||
GuidGraphType,
|
||||
XFileGraphQuery,
|
||||
IXFileGraphQLTypeHelper,
|
||||
XFileGraphQLTypeHelper,
|
||||
XFileGraphSchema,
|
||||
IXFileRepository,
|
||||
XFileInMemoryRepository,
|
||||
IXFileSeeder,
|
||||
TSeederImplementation
|
||||
>();
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user