public PackageSpecReferenceDependencyProvider( IPackageSpecResolver projectResolver, ExternalProjectReference projectReference) { _resolver = projectResolver; _projectReference = projectReference; }
public PackageSpecReferenceDependencyProvider( IPackageSpecResolver projectResolver, IEnumerable <ExternalProjectReference> externalProjects, ILogger logger) { if (projectResolver == null) { throw new ArgumentNullException(nameof(projectResolver)); } if (externalProjects == null) { throw new ArgumentNullException(nameof(externalProjects)); } if (logger == null) { throw new ArgumentNullException(nameof(logger)); } _defaultResolver = projectResolver; _logger = logger; // The constructor is only executed by a single thread, so TryAdd is fine. _resolverCache.TryAdd(projectResolver.RootPath, projectResolver); foreach (var project in externalProjects) { Debug.Assert( !_externalProjectsByPath.ContainsKey(project.UniqueName), $"Duplicate project {project.UniqueName}"); if (!_externalProjectsByPath.ContainsKey(project.UniqueName)) { _externalProjectsByPath.Add(project.UniqueName, project); } Debug.Assert( !_externalProjectsByName.ContainsKey(project.ProjectName), $"Duplicate project {project.ProjectName}"); if (!_externalProjectsByName.ContainsKey(project.ProjectName)) { _externalProjectsByName.Add(project.ProjectName, project); } } }
public PackageSpecReferenceDependencyProvider(IPackageSpecResolver projectResolver) { _resolver = projectResolver; }