public override IProjectSubscriptionUpdate ToActualModel() { IImmutableDictionary <string, IProjectRuleSnapshot> currentState; IImmutableDictionary <string, IProjectChangeDescription> projectChanges; ProjectConfiguration projectConfiguration; if (CurrentState != null) { currentState = CurrentState.Select(x => new KeyValuePair <string, IProjectRuleSnapshot>(x.Key, x.Value)).ToImmutableDictionary(); } else { currentState = ImmutableDictionary <string, IProjectRuleSnapshot> .Empty; } if (ProjectChanges != null) { projectChanges = ProjectChanges.Select(x => new KeyValuePair <string, IProjectChangeDescription>(x.Key, x.Value.ToActualModel())).ToImmutableDictionary(); } else { projectChanges = ImmutableDictionary <string, IProjectChangeDescription> .Empty; } if (ProjectConfiguration != null) { projectConfiguration = ProjectConfiguration.ToActualModel(); } else { projectConfiguration = ProjectConfigurationFactory.Create("TEST"); } return(new ActualModel(currentState, projectChanges, projectConfiguration)); }
private ActiveConfiguredProjectsProvider CreateInstance(string activeConfiguration, string configurations, params string[] dimensionNames) { var activeConfig = ProjectConfigurationFactory.Create(activeConfiguration); var configs = ProjectConfigurationFactory.CreateMany(configurations.Split(';')); var configurationsService = IProjectConfigurationsServiceFactory.ImplementGetKnownProjectConfigurationsAsync(configs.ToImmutableHashSet()); var activeConfiguredProjectProvider = IActiveConfiguredProjectProviderFactory.ImplementActiveProjectConfiguration(() => activeConfig); var services = IUnconfiguredProjectServicesFactory.Create(activeConfiguredProjectProvider: activeConfiguredProjectProvider, projectConfigurationsService: configurationsService); var project = UnconfiguredProjectFactory.ImplementLoadConfiguredProjectAsync((projectConfiguration) => { return(Task.FromResult(ConfiguredProjectFactory.ImplementProjectConfiguration(projectConfiguration))); }); var dimensionProviders = dimensionNames.Select(name => IActiveConfiguredProjectsDimensionProviderFactory.ImplementDimensionName(name)); return(CreateInstance(services: services, project: project, dimensionProviders: dimensionProviders)); }
public static ConfiguredProject ImplementProjectConfiguration(string configuration) { return(ImplementProjectConfiguration(ProjectConfigurationFactory.Create(configuration))); }
public static IConfigurationGroup <ProjectConfiguration> CreateFromConfigurationNames(params string[] configurationNames) { IEnumerable <ProjectConfiguration> configurations = configurationNames.Select(name => ProjectConfigurationFactory.Create(name)); return(Create(configurations)); }
public void GetDisplayString(string pattern) { Assert.Equal(pattern, ProjectConfigurationFactory.Create(pattern).GetDisplayString()); }