From 13eedbfcf97e402ade06f2be29f98723ef7ff286 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Thu, 18 Oct 2018 13:42:54 -0700 Subject: Extract interfaces for Preprocess/Compile/Link/Bind/etc --- src/WixToolset.Core/Resolver.cs | 25 +++++++------------------ 1 file changed, 7 insertions(+), 18 deletions(-) (limited to 'src/WixToolset.Core/Resolver.cs') diff --git a/src/WixToolset.Core/Resolver.cs b/src/WixToolset.Core/Resolver.cs index 12cb375b..98101f16 100644 --- a/src/WixToolset.Core/Resolver.cs +++ b/src/WixToolset.Core/Resolver.cs @@ -15,7 +15,7 @@ namespace WixToolset.Core /// /// Resolver for the WiX toolset. /// - internal class Resolver + internal class Resolver : IResolver { internal Resolver(IServiceProvider serviceProvider) { @@ -38,21 +38,10 @@ namespace WixToolset.Core public IEnumerable FilterCultures { get; set; } - public ResolveResult Execute() + public ResolveResult Resolve(IResolveContext context) { - var extensionManager = this.ServiceProvider.GetService(); - - var context = this.ServiceProvider.GetService(); - context.BindPaths = this.BindPaths; - context.Extensions = extensionManager.Create(); - context.ExtensionData = extensionManager.Create(); - context.FilterCultures = this.FilterCultures; - context.IntermediateFolder = this.IntermediateFolder; - context.IntermediateRepresentation = this.IntermediateRepresentation; - context.Localizations = this.Localizations; - context.VariableResolver = new WixVariableResolver(this.Messaging); - - foreach (IResolverExtension extension in context.Extensions) + + foreach (var extension in context.Extensions) { extension.PreResolve(context); } @@ -64,11 +53,11 @@ namespace WixToolset.Core this.LocalizeUI(context); - resolveResult = this.Resolve(context); + resolveResult = this.DoResolve(context); } finally { - foreach (IResolverExtension extension in context.Extensions) + foreach (var extension in context.Extensions) { extension.PostResolve(resolveResult); } @@ -77,7 +66,7 @@ namespace WixToolset.Core return resolveResult; } - private ResolveResult Resolve(IResolveContext context) + private ResolveResult DoResolve(IResolveContext context) { var buildingPatch = context.IntermediateRepresentation.Sections.Any(s => s.Type == SectionType.Patch); -- cgit v1.2.3-55-g6feb