Skip to content

Commit cb7e8df

Browse files
committed
C#: Inject the feed manager into the NugetExeWrapper.
1 parent c575300 commit cb7e8df

2 files changed

Lines changed: 7 additions & 5 deletions

File tree

csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ public HashSet<AssemblyLookupLocation> Restore()
151151

152152
try
153153
{
154-
using (var packagesConfigRestore = PackagesConfigRestoreFactory.Create(fileProvider, legacyPackageDirectory, logger, feedManager.IsDefaultFeedReachable))
154+
using (var packagesConfigRestore = PackagesConfigRestoreFactory.Create(fileProvider, legacyPackageDirectory, logger, feedManager))
155155
{
156156
var count = packagesConfigRestore.InstallPackages();
157157

csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/PackagesConfigRestorer.cs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,11 @@ internal interface IPackagesConfigRestore : IDisposable
3333
/// </summary>
3434
internal class PackagesConfigRestoreFactory
3535
{
36-
public static IPackagesConfigRestore Create(FileProvider fileProvider, DependencyDirectory packageDirectory, Semmle.Util.Logging.ILogger logger, Func<bool> useDefaultFeed)
36+
public static IPackagesConfigRestore Create(FileProvider fileProvider, DependencyDirectory packageDirectory, Semmle.Util.Logging.ILogger logger, FeedManager feedManager)
3737
{
3838
if (SystemBuildActions.Instance.IsWindows() || SystemBuildActions.Instance.IsMonoInstalled())
3939
{
40-
return new NugetExeWrapper(fileProvider, packageDirectory, logger, useDefaultFeed);
40+
return new NugetExeWrapper(fileProvider, packageDirectory, logger, feedManager);
4141
}
4242

4343
return new NoOpPackagesConfig(fileProvider.PackagesConfigs, logger);
@@ -65,23 +65,25 @@ private class NugetExeWrapper : IPackagesConfigRestore
6565
/// so as to not trample the source tree.
6666
/// </summary>
6767
private readonly DependencyDirectory packageDirectory;
68+
private readonly FeedManager feedManager;
6869

6970
private bool IsWindows => SystemBuildActions.Instance.IsWindows();
7071

7172
/// <summary>
7273
/// Create the package manager for a specified source tree.
7374
/// </summary>
74-
public NugetExeWrapper(FileProvider fileProvider, DependencyDirectory packageDirectory, Semmle.Util.Logging.ILogger logger, Func<bool> useDefaultFeed)
75+
public NugetExeWrapper(FileProvider fileProvider, DependencyDirectory packageDirectory, Semmle.Util.Logging.ILogger logger, FeedManager feedManager)
7576
{
7677
this.fileProvider = fileProvider;
7778
this.packageDirectory = packageDirectory;
7879
this.logger = logger;
80+
this.feedManager = feedManager;
7981

8082
if (fileProvider.PackagesConfigs.Count > 0)
8183
{
8284
logger.LogInfo($"Found packages.config files, trying to use nuget.exe for package restore");
8385
nugetExe = ResolveNugetExe();
84-
if (!HasPackageSource() && useDefaultFeed())
86+
if (!HasPackageSource() && feedManager.IsDefaultFeedReachable())
8587
{
8688
// We only modify or add a top level nuget.config file
8789
nugetConfigPath = Path.Join(fileProvider.SourceDir.FullName, "nuget.config");

0 commit comments

Comments
 (0)