Allow file resolution extensions to send paths checked for file
Rob Mensching committed
Jul 27, 2018 at 00:29 UTC
d282f53f254d378800c5ee53f8ff6a3586d7abfa
4 files changed
+16
-3
src/WixToolset.Extensibility/BaseResolverExtension.cs
+1
-1
@@ -31,7 +31,7 @@ namespace WixToolset.Extensibility
31
this.Messaging = context.ServiceProvider.GetService<IMessaging>();
32
}
33
34
- public virtual string ResolveFile(string source, IntermediateTupleDefinition tupleDefinition, SourceLineNumber sourceLineNumbers, BindStage bindStage)
34
+ public virtual ResolveFileResult ResolveFile(string source, IntermediateTupleDefinition tupleDefinition, SourceLineNumber sourceLineNumbers, BindStage bindStage)
35
{
36
return null;
37
}
src/WixToolset.Extensibility/Data/ResolveFileResult.cs
new
+13
@@ -0,0 +1,13 @@
1
+// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
+
3
+namespace WixToolset.Extensibility.Data
4
+{
5
+ using System.Collections.Generic;
6
+
7
+ public class ResolveFileResult
8
+ {
9
+ public string Path { get; set; }
10
+
11
+ public IEnumerable<string> CheckedPaths { get; set; }
12
+ }
13
+}
\ No newline at end of file
src/WixToolset.Extensibility/ILibrarianExtension.cs
+1
-1
@@ -9,7 +9,7 @@ namespace WixToolset.Extensibility
9
{
10
void PreCombine(ILibraryContext context);
11
12
- string Resolve(SourceLineNumber sourceLineNumber, IntermediateTupleDefinition tupleDefinition, string path);
12
+ ResolveFileResult ResolveFile(SourceLineNumber sourceLineNumber, IntermediateTupleDefinition tupleDefinition, string path);
13
14
void PostCombine(Intermediate library);
15
}
src/WixToolset.Extensibility/IResolverExtension.cs
+1
-1
@@ -15,7 +15,7 @@ namespace WixToolset.Extensibility
15
/// </summary>
16
void PreResolve(IResolveContext context);
17
18
- string ResolveFile(string source, IntermediateTupleDefinition tupleDefinition, SourceLineNumber sourceLineNumbers, BindStage bindStage);
18
+ ResolveFileResult ResolveFile(string source, IntermediateTupleDefinition tupleDefinition, SourceLineNumber sourceLineNumbers, BindStage bindStage);
19
20
/// <summary>
21
/// Called after all resolving occurs.