using GraphQL.Server; using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; using xAiApi.Data.GraphQL; using xAiApi.Data.Interfaces; using xAiApi.Data.Models.Entities; using xDataService.Configuration; using xDataService.GraphQL; using xDataService.Interfaces; namespace xAiApi.Data.Helpers { public class XAiApiDataHelperGraphQLHelper : IXGraphQLHelper { public void AddXGraphEnumTypes(IServiceCollection services) { } public void AddXGraphInputTypes(IServiceCollection services) { } public void AddXGraphMutations(IServiceCollection services) { } public void AddXGraphObjectTypes(IServiceCollection services) { // // XTest ... services.AddSingleton(); services.AddSingleton>(); } public void AddXGraphQueries(IServiceCollection services) { // // XTest ... services.AddSingleton(); services.AddScoped(); } public void AddXGraphSchemas(IServiceCollection services) { // services.AddScoped(); } public void AddXGraphSubscriptions(IServiceCollection services) { } public IGraphQLBuilder AddXGraphTypes(IGraphQLBuilder builder) { // builder.AddGraphTypes(typeof(XTestGraphSchema)); // return builder; } public void UseXGraph(IApplicationBuilder app) { // using (var scope = app.ApplicationServices.CreateScope()) { // // XDataServiceConfiguration ... var dataServiceConfiguration = scope.ServiceProvider.GetService(); // // XTest ... var testHelper = scope.ServiceProvider.GetService(); app.UseGraphQL(testHelper.GetGraphQLPath()); app.UseGraphQLWebSockets(); } } } }