protected override void Arrange() { _compositesMetadataProvider = Stub <ICompositesMetadataProvider>(); _compositesMetadataProvider.Stub(x => x.GetAllCategories()) .Return(new List <CompositeCategory>()); _profileResourceModelProvider = Stub <IProfileResourceModelProvider>(); _profileResourceNamesProvider = Stub <IProfileResourceNamesProvider>(); _profileResourceNamesProvider.Stub(x => x.GetProfileResourceNames()) .Return(new List <ProfileAndResourceNames>()); var openApiMetadataRouteProviderStub = Stub <IOpenApiMetadataRouteProvider>(); openApiMetadataRouteProviderStub.Stub(x => x.GetAllRoutes()) .Return( GetTestRoutes() .Where(r => r.GetDataTokenRouteName() != MetadataRouteConstants.Profiles)); _openApiMetadataCacheProvider = new LegacyOpenApiMetadataCacheProvider( DomainModelProvider, ResourceModelProvider, _profileResourceModelProvider, _profileResourceNamesProvider, _compositesMetadataProvider, SchemaNameMapProvider, openApiMetadataRouteProviderStub, TestOpenApiContentProviders); }
protected override void Arrange() { AssemblyLoader.EnsureLoaded <Marker_EdFi_Ods_Composites_Test>(); AssemblyLoader.EnsureLoaded <Marker_EdFi_Ods_Profiles_Test>(); _compositesMetadataProvider = new CompositesMetadataProvider(); _profileResourceNamesProvider = new ProfileResourceNamesProvider(); _profileResourceModelProvider = new ProfileResourceModelProvider(ResourceModelProvider, new ProfileResourceNamesProvider()); var openApiMetadataRouteProviderStub = Stub <IOpenApiMetadataRouteProvider>(); openApiMetadataRouteProviderStub.Stub(x => x.GetAllRoutes()) .Return(GetTestRoutes()); _openApiMetadataCacheProvider = new LegacyOpenApiMetadataCacheProvider( DomainModelProvider, ResourceModelProvider, _profileResourceModelProvider, _profileResourceNamesProvider, _compositesMetadataProvider, SchemaNameMapProvider, openApiMetadataRouteProviderStub, TestOpenApiContentProviders); }
protected override void Arrange() { _compositesMetadataProvider = Stub <ICompositesMetadataProvider>(); A.CallTo(() => _compositesMetadataProvider.GetAllCategories()) .Returns(new List <CompositeCategory>()); _profileResourceNamesProvider = new ProfileResourceNamesProvider(); _profileResourceModelProvider = new ProfileResourceModelProvider( ResourceModelProvider, new ProfileResourceNamesProvider()); var _openAPIMetadataRouteInformation = Stub <List <IOpenApiMetadataRouteInformation> >(); var _openApiContentProviders = Stub <List <IOpenApiContentProvider> >(); var openApiMetadataRouteInformation = new List <IOpenApiMetadataRouteInformation>(); var defaultPageSizeLimitProvider = new DefaultPageSizeLimitProvider(GetConfiguration()); var openApiMetadataDocumentFactory = new OpenApiMetadataDocumentFactory(CreateApiSettings(), defaultPageSizeLimitProvider); var resourceModelProvider = Stub <IResourceModelProvider>(); var resourceModel = ResourceModelProvider.GetResourceModel(); A.CallTo(() => resourceModelProvider.GetResourceModel()).Returns(resourceModel); _openApiMetadataCacheProvider = new OpenApiMetadataCacheProvider( resourceModelProvider, GetTestRouteInformation(CreateApiSettings()).ToList(), TestOpenApiContentProviders, openApiMetadataDocumentFactory); }
public ProfilesHttpConfigurator(IApiKeyContextProvider apiKeyContextProvider, IProfileResourceNamesProvider profileResourceNamesProvider) { _apiKeyContextProvider = Preconditions.ThrowIfNull(apiKeyContextProvider, nameof(apiKeyContextProvider)); _profileResourceNamesProvider = Preconditions.ThrowIfNull( profileResourceNamesProvider, nameof(profileResourceNamesProvider)); }
public LegacyOpenApiMetadataCacheProvider( IDomainModelProvider domainModelProvider, IResourceModelProvider resourceModelProvider, IProfileResourceModelProvider profileResourceModelProvider, IProfileResourceNamesProvider profileResourceNamesProvider, ICompositesMetadataProvider compositesMetadataProvider, ISchemaNameMapProvider schemaNameMapProvider, IOpenApiMetadataRouteProvider openApiMetadataRouteProvider, IOpenApiContentProvider[] openApiContentProviders) { _domainModelProvider = domainModelProvider; _resourceModelProvider = resourceModelProvider; _compositesMetadataProvider = compositesMetadataProvider; _schemaNameMapProvider = schemaNameMapProvider; _openApiMetadataRouteProvider = openApiMetadataRouteProvider; _profileResourceModelProvider = profileResourceModelProvider; _profileResourceNamesProvider = profileResourceNamesProvider; _openApiMetadataResourceFilters = new Dictionary <string, IOpenApiMetadataResourceStrategy>(StringComparer.InvariantCultureIgnoreCase) { { Descriptors, new SwaggerUiDescriptorOnlyStrategy() }, { Resources, new SwaggerUiResourceOnlyStrategy() }, { Extensions, new SdkGenExtensionResourceStrategy() }, { EdFi, new SdkGenAllEdFiResourceStrategy() }, { Profiles, new OpenApiProfileStrategy() }, { Composites, new OpenApiCompositeStrategy(_compositesMetadataProvider) }, { All, new SdkGenAllResourceStrategy() } }; _openApiMetadataSectionByRoute = new Dictionary <string, Func <IEnumerable <OpenApiContent> > > { { MetadataRouteConstants.Schema, CreateSchemaSpecificSections }, { MetadataRouteConstants.All, CreateSdkGenAllSection }, { MetadataRouteConstants.Profiles, CreateProfileSection }, { MetadataRouteConstants.Composites, CreateCompositeSection }, { MetadataRouteConstants.ResourceTypes, CreateSwaggerUiSection } }; foreach (var openApiContentProvider in openApiContentProviders) { var routeName = openApiContentProvider.RouteName; if (_openApiMetadataSectionByRoute.ContainsKey(routeName)) { throw new InvalidOperationException( $"Duplicate metadata route '{routeName}' encountered during initialization. Source: {openApiContentProvider.GetType().FullName}"); } _openApiMetadataSectionByRoute.Add(routeName, openApiContentProvider.GetOpenApiContent); } _swaggerMetadataCache = new ConcurrentDictionary <string, OpenApiContent>(StringComparer.InvariantCultureIgnoreCase); }
public ProfilesOpenApiContentProvider(IProfileResourceModelProvider profileResourceModelProvider, IProfileResourceNamesProvider profileResourceNamesProvider, IResourceModelProvider resourceModelProvider, IOpenApiMetadataDocumentFactory documentFactory) { _profileResourceModelProvider = Preconditions.ThrowIfNull(profileResourceModelProvider, nameof(profileResourceModelProvider)); _profileResourceNamesProvider = Preconditions.ThrowIfNull(profileResourceNamesProvider, nameof(profileResourceNamesProvider)); _resourceModelProvider = Preconditions.ThrowIfNull(resourceModelProvider, nameof(resourceModelProvider)); _openApiMetadataDocumentFactory = Preconditions.ThrowIfNull(documentFactory, nameof(documentFactory)); }
public ProfilesAwareHttpControllerSelector( HttpConfiguration config, IProfileResourceNamesProvider profileResourceNamesProvider, ISchemaNameMapProvider schemaNameMapProvider) : base(config) { _configuration = config; _profileResourceNamesProvider = profileResourceNamesProvider; _duplicates = new HashSet <string>(StringComparer.OrdinalIgnoreCase); _controllers = new Lazy <Dictionary <string, HttpControllerDescriptor> >(InitializeControllerDictionary); _schemaNameMapProvider = schemaNameMapProvider; }
public ProfilesOpenApiContentProvider(IProfileResourceModelProvider profileResourceModelProvider, IProfileResourceNamesProvider profileResourceNamesProvider, IResourceModelProvider resourceModelProvider) { _profileResourceModelProvider = Preconditions.ThrowIfNull(profileResourceModelProvider, nameof(profileResourceModelProvider)); _profileResourceNamesProvider = Preconditions.ThrowIfNull(profileResourceNamesProvider, nameof(profileResourceNamesProvider)); _resourceModelProvider = Preconditions.ThrowIfNull(resourceModelProvider, nameof(resourceModelProvider)); }
public HttpRouteConfigurator(IRouteConfiguration[] routeConfigurations, IProfileResourceNamesProvider profileResourceNamesProvider, ISchemaNameMapProvider schemaNameMapProvider, bool useSchoolYear = false) { _routeConfigurations = Preconditions.ThrowIfNull(routeConfigurations, nameof(routeConfigurations)); _profileResourceNamesProvider = Preconditions.ThrowIfNull( profileResourceNamesProvider, nameof(profileResourceNamesProvider)); _schemaNameMapProvider = Preconditions.ThrowIfNull(schemaNameMapProvider, nameof(schemaNameMapProvider)); _useSchoolYear = useSchoolYear; }
public object Generate(TemplateContext templateContext) { TemplateContext = Preconditions.ThrowIfNull(templateContext, nameof(templateContext)); ResourceModelProvider = new ResourceModelProvider(TemplateContext.DomainModelProvider); ValidatingProfileMetadataProvider = new ValidatingProfileMetadataProvider(TemplateContext.ProjectPath, ResourceModelProvider); ProfileResourceNamesProvider = ValidatingProfileMetadataProvider; ProfileResourceModelProvider = new ProfileResourceModelProvider(ResourceModelProvider, ValidatingProfileMetadataProvider); ProjectHasProfileDefinition = ValidatingProfileMetadataProvider.HasProfileData; Configure(); return(Build()); }
public ResourceProfileProvider( IResourceModelProvider resourceModelProvider, TemplateContext templateContext) { var validatingProfileMetadataProvider = new ValidatingProfileMetadataProvider( templateContext.ProjectPath, resourceModelProvider); _profileResourceNamesProvider = validatingProfileMetadataProvider; _profileResourceModelProvider = new ProfileResourceModelProvider( resourceModelProvider, validatingProfileMetadataProvider); ProjectHasProfileDefinition = validatingProfileMetadataProvider.HasProfileData; ResourceModel = resourceModelProvider.GetResourceModel(); }
public AdminProfileNamesPublisher(IUsersContextFactory usersContextFactory, IProfileResourceNamesProvider profileResourceNamesProvider) { _usersContextFactory = Preconditions.ThrowIfNull(usersContextFactory, nameof(usersContextFactory)); _profileResourceNamesProvider = Preconditions.ThrowIfNull(profileResourceNamesProvider, nameof(profileResourceNamesProvider)); }
public ProfilesAuthorizationFilter(IApiKeyContextProvider apiKeyContextProvider, IProfileResourceNamesProvider profileResourceNamesProvider) { _apiKeyContextProvider = apiKeyContextProvider; _profileResourceNamesProvider = profileResourceNamesProvider; }