public SearchConfiguration( IModelConventionInputBuilder <TSource> modelConventionInputBuilder, IGraphQlRepository graphQlRepository) { _modelConventionInputBuilder = modelConventionInputBuilder; _graphQlRepository = graphQlRepository; }
public TableStorageConfiguration(IModelConventionInputBuilder <TSource> modelConventionInputBuilder, IGraphQlRepository graphQlRepository, Type typeSource) { _modelConventionInputBuilder = modelConventionInputBuilder; _graphQlRepository = graphQlRepository; _typeSource = typeSource; }
public SearchConfiguration <TSource> ConfigureSearch <TSearchModel>() { _graphQlRepositoryProvider.Use <SearchModel, SearchRepository>(); _graphQlRepository = _graphQlRepositoryProvider.Use <TSearchModel, SearchRepository>(); _typeSource = typeof(TSearchModel); return(new SearchConfiguration <TSource>(this, _graphQlRepository)); }
private IGraphQlRepository GetConnectionEdgeRepository() { if (_connectionEdgeRepository == null) { _connectionEdgeRepository = _graphQlRepositoryProvider.GetRepository <ConnectionEdge>(); } return(_connectionEdgeRepository); }
public ConnectionEdgeHandlerTests() { _graphQlRepositoryProvider = Substitute.For <IGraphQlRepositoryProvider>(); _connectionEdgeRepository = Substitute.For <IGraphQlRepository>(); _graphQlRepositoryProvider.GetRepository <ConnectionEdge>().Returns(_connectionEdgeRepository); _connectionEdgeHandler = new ConnectionEdgeHandler(_graphQlRepositoryProvider, new ConnectionEdgeResolver(), Substitute.For <ILogger>()); }
private static async Task RunAsync(IGraphQlRepository graphQlRepository, Type type, object mappedInstance, string action, IGraphRequestContext graphRequestContext) { MethodInfo method = graphQlRepository.GetType().GetMethod(action); // ReSharper disable once PossibleNullReferenceException MethodInfo generic = method.MakeGenericMethod(type); var task = (Task)generic.Invoke(graphQlRepository, new[] { mappedInstance, graphRequestContext }); await task.ConfigureAwait(false); }
public static async Task DeleteAllAsync(this IGraphQlRepository graphQlRepository, Type type, IGraphRequestContext graphRequestContext) { MethodInfo method = graphQlRepository.GetType().GetMethod("DeleteAllAsync"); // ReSharper disable once PossibleNullReferenceException MethodInfo generic = method.MakeGenericMethod(type); var task = (Task)generic.Invoke(graphQlRepository, new object[] { graphRequestContext }); await task.ConfigureAwait(false); }
private static async Task InternalBatchAsync(IGraphQlRepository graphQlRepository, Type type, List <object> items, IGraphRequestContext graphRequestContext, string methodName) { var listType = typeof(List <>).MakeGenericType(type); var list = Activator.CreateInstance(listType); var c = (IList)list; items.ForEach(item => c.Add(item)); MethodInfo method = graphQlRepository.GetType().GetMethod(methodName); // ReSharper disable once PossibleNullReferenceException MethodInfo generic = method.MakeGenericMethod(type); var task = (Task)generic.Invoke(graphQlRepository, new[] { list, graphRequestContext }); await task.ConfigureAwait(false); }
public static async Task UpdateAsync(this IGraphQlRepository graphQlRepository, Type type, object mappedInstance, IGraphRequestContext graphRequestContext) { await RunAsync(graphQlRepository, type, mappedInstance, "UpdateAsync", graphRequestContext); }
public static async Task BatchAddOrUpdateAsync(this IGraphQlRepository graphQlRepository, Type type, List <object> items, IGraphRequestContext graphRequestContext) { await InternalBatchAsync(graphQlRepository, type, items, graphRequestContext, "BatchAddOrUpdateAsync"); }
public DocumentDbConfiguration <TSource> ConfigureDocumentDb <TType>() { _graphQlRepository = _graphQlRepositoryProvider.Use <TType, DocumentDbRepository>(); _typeSource = typeof(TType); return(new DocumentDbConfiguration <TSource>(this, _graphQlRepository, _typeSource)); }
public HttpConfiguration <TSource> ConfigureHttp <TType>() { _graphQlRepository = _graphQlRepositoryProvider.Use <TType, HttpRepository>(); _typeSource = typeof(TType); return(new HttpConfiguration <TSource>(this, _graphQlRepository, _typeSource)); }
public TableStorageConfiguration <TSource> ConfigureTableStorage <TType>() { _graphQlRepository = _graphQlRepositoryProvider.Use <TType, TableStorageRepository>(); _typeSource = typeof(TType); return(new TableStorageConfiguration <TSource>(this, _graphQlRepository, _typeSource)); }
public InMemoryConfiguration <TSource> ConfigureInMemory <TType>() { _graphQlRepository = _graphQlRepositoryProvider.Use <TType, InMemoryRepository>(); _typeSource = typeof(TType); return(new InMemoryConfiguration <TSource>(this)); }