private static FieldsToSerialize CreateFieldsToSerialize(IResourceGraph resourceGraph) { var resourceDefinitionProvider = DependencyFactory.CreateResourceDefinitionProvider(resourceGraph); var currentRequest = new CurrentRequest(); var sparseFieldsService = new SparseFieldsService(resourceGraph, currentRequest); return(new FieldsToSerialize(resourceGraph, sparseFieldsService, resourceDefinitionProvider)); }
private static QueryParameterDiscovery CreateQueryParameterDiscoveryForAll(IResourceGraph resourceGraph, CurrentRequest currentRequest, IResourceDefinitionProvider resourceDefinitionProvider, IJsonApiOptions options) { IIncludeService includeService = new IncludeService(resourceGraph, currentRequest); IFilterService filterService = new FilterService(resourceDefinitionProvider, resourceGraph, currentRequest); ISortService sortService = new SortService(resourceDefinitionProvider, resourceGraph, currentRequest); ISparseFieldsService sparseFieldsService = new SparseFieldsService(resourceGraph, currentRequest); IPageService pageService = new PageService(options, resourceGraph, currentRequest); IOmitDefaultService omitDefaultService = new OmitDefaultService(options); IOmitNullService omitNullService = new OmitNullService(options); var queryServices = new List <IQueryParameterService> { includeService, filterService, sortService, sparseFieldsService, pageService, omitDefaultService, omitNullService }; return(new QueryParameterDiscovery(options, queryServices)); }
private static QueryParameterParser CreateQueryParameterDiscoveryForAll(IResourceGraph resourceGraph, CurrentRequest currentRequest, IResourceDefinitionProvider resourceDefinitionProvider, IJsonApiOptions options, FakeRequestQueryStringAccessor queryStringAccessor) { IIncludeService includeService = new IncludeService(resourceGraph, currentRequest); IFilterService filterService = new FilterService(resourceDefinitionProvider, resourceGraph, currentRequest); ISortService sortService = new SortService(resourceDefinitionProvider, resourceGraph, currentRequest); ISparseFieldsService sparseFieldsService = new SparseFieldsService(resourceGraph, currentRequest); IPageService pageService = new PageService(options, resourceGraph, currentRequest); IDefaultsService defaultsService = new DefaultsService(options); INullsService nullsService = new NullsService(options); var queryServices = new List <IQueryParameterService> { includeService, filterService, sortService, sparseFieldsService, pageService, defaultsService, nullsService }; return(new QueryParameterParser(options, queryStringAccessor, queryServices, NullLoggerFactory.Instance)); }