public GraphQLExecutionContext(QueryContext context,
                                IAssetRepository assetRepository,
                                IContentQueryService contentQuery,
                                IGraphQLUrlGenerator urlGenerator)
     : base(context, assetRepository, contentQuery)
 {
     UrlGenerator = urlGenerator;
 }
示例#2
0
        public GraphQLExecutionContext(IAppEntity app, IAssetRepository assetRepository, ICommandBus commandBus, IContentQueryService contentQuery, ClaimsPrincipal user,
                                       IGraphQLUrlGenerator urlGenerator)
            : base(app, assetRepository, contentQuery, user)
        {
            CommandBus = commandBus;

            UrlGenerator = urlGenerator;
        }
示例#3
0
        public QueryContext(IAppEntity app, IContentRepository contentRepository, IAssetRepository assetRepository, IGraphQLUrlGenerator urlGenerator)
        {
            Guard.NotNull(contentRepository, nameof(contentRepository));
            Guard.NotNull(assetRepository, nameof(assetRepository));
            Guard.NotNull(urlGenerator, nameof(urlGenerator));
            Guard.NotNull(app, nameof(app));

            this.contentRepository = contentRepository;
            this.assetRepository   = assetRepository;
            this.urlGenerator      = urlGenerator;

            this.app = app;
        }
示例#4
0
        public CachingGraphQLService(IMemoryCache cache, ISchemaRepository schemaRepository, IAssetRepository assetRepository, IContentRepository contentRepository, IGraphQLUrlGenerator urlGenerator)
            : base(cache)
        {
            Guard.NotNull(schemaRepository, nameof(schemaRepository));
            Guard.NotNull(assetRepository, nameof(assetRepository));
            Guard.NotNull(contentRepository, nameof(contentRepository));
            Guard.NotNull(urlGenerator, nameof(urlGenerator));

            this.contentRepository = contentRepository;
            this.schemaRepository  = schemaRepository;
            this.assetRepository   = assetRepository;
            this.urlGenerator      = urlGenerator;
        }
示例#5
0
        public GraphQLModel(IAppEntity app, IEnumerable <ISchemaEntity> schemas, IGraphQLUrlGenerator urlGenerator)
        {
            this.app = app;

            partitionResolver = app.PartitionResolver();

            CanGenerateAssetSourceUrl = urlGenerator.CanGenerateAssetSourceUrl;

            assetType   = new AssetGraphType(this);
            schemasById = schemas.ToDictionary(x => x.Id);
            schemaTypes = new QueryGraphTypeVisitor(GetContentType, new ListGraphType(new NonNullGraphType(assetType)));

            graphQLSchema = BuildSchema(this);

            InitializeContentTypes();
        }
示例#6
0
        public CachingGraphQLService(IMemoryCache cache,
                                     IAppProvider appProvider,
                                     IAssetRepository assetRepository,
                                     IContentQueryService contentQuery,
                                     IGraphQLUrlGenerator urlGenerator)
            : base(cache)
        {
            Guard.NotNull(appProvider, nameof(appProvider));
            Guard.NotNull(assetRepository, nameof(assetRepository));
            Guard.NotNull(contentQuery, nameof(urlGenerator));
            Guard.NotNull(contentQuery, nameof(contentQuery));

            this.appProvider     = appProvider;
            this.assetRepository = assetRepository;
            this.contentQuery    = contentQuery;
            this.urlGenerator    = urlGenerator;
        }
示例#7
0
        public GraphQLModel(IAppEntity app, IEnumerable <ISchemaEntity> schemas, IGraphQLUrlGenerator urlGenerator)
        {
            this.app = app;

            partitionResolver = app.PartitionResolver();

            CanGenerateAssetSourceUrl = urlGenerator.CanGenerateAssetSourceUrl;

            assetType     = new AssetGraphType(this);
            assetListType = new ListGraphType(new NonNullGraphType(assetType));

            schemasById = schemas.ToDictionary(x => x.Id);

            graphQLSchema = BuildSchema(this);
            graphQLSchema.RegisterValueConverter(JsonConverter.Instance);

            InitializeContentTypes();
        }
示例#8
0
        public GraphQLModel(IAppEntity app,
                            IEnumerable <ISchemaEntity> schemas,
                            int pageSizeContents,
                            int pageSizeAssets,
                            IGraphQLUrlGenerator urlGenerator)
        {
            this.app = app;

            partitionResolver = app.PartitionResolver();

            CanGenerateAssetSourceUrl = urlGenerator.CanGenerateAssetSourceUrl;

            assetType     = new AssetGraphType(this);
            assetListType = new ListGraphType(new NonNullGraphType(assetType));

            var allSchemas = schemas.Where(x => x.SchemaDef.IsPublished).ToList();

            BuildSchemas(allSchemas);

            graphQLSchema = BuildSchema(this, pageSizeContents, pageSizeAssets, allSchemas);
            graphQLSchema.RegisterValueConverter(JsonConverter.Instance);

            InitializeContentTypes();
        }
示例#9
0
 public GraphQLQueryContext(IAppEntity app, IAssetRepository assetRepository, IContentQueryService contentQuery, ClaimsPrincipal user,
                            IGraphQLUrlGenerator urlGenerator)
     : base(app, assetRepository, contentQuery, user)
 {
     UrlGenerator = urlGenerator;
 }