internal override IList <SdkResolverManifest> GetResolversManifests(LoggingContext loggingContext, ElementLocation location) { var manifests = new List <SdkResolverManifest>(); foreach (SdkResolver resolver in _resolvers) { SdkResolverManifest sdkResolverManifest = new SdkResolverManifest(resolver.Name, null, null); manifests.Add(sdkResolverManifest); } foreach ((string ResolvableSdkPattern, SdkResolver Resolver)pair in _resolversWithPatterns) { SdkResolverManifest sdkResolverManifest = new SdkResolverManifest( pair.Resolver.Name, null, new Regex(pair.ResolvableSdkPattern, RegexOptions.Compiled | RegexOptions.CultureInvariant, TimeSpan.FromMilliseconds(500)) ); manifests.Add(sdkResolverManifest); } return(manifests); }
protected internal override IList <SdkResolver> LoadResolversFromManifest(SdkResolverManifest manifest, LoggingContext loggingContext, ElementLocation location) { var resolvers = new List <SdkResolver>(); foreach (var resolver in _resolvers) { if (resolver.Name == manifest.DisplayName) { resolvers.Add(resolver); } } foreach (var pair in _resolversWithPatterns) { if (pair.Resolver.Name == manifest.DisplayName) { resolvers.Add(pair.Resolver); } } return(resolvers.OrderBy(t => t.Priority).ToList()); }