aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Extensibility/Services/IPathResolver.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Extensibility/Services/IPathResolver.cs')
-rw-r--r--src/WixToolset.Extensibility/Services/IPathResolver.cs31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/WixToolset.Extensibility/Services/IPathResolver.cs b/src/WixToolset.Extensibility/Services/IPathResolver.cs
new file mode 100644
index 00000000..e468112f
--- /dev/null
+++ b/src/WixToolset.Extensibility/Services/IPathResolver.cs
@@ -0,0 +1,31 @@
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
3namespace WixToolset.Extensibility.Services
4{
5 using System.Collections.Generic;
6 using WixToolset.Extensibility.Data;
7
8 public interface IPathResolver
9 {
10 /// <summary>
11 /// Get the source path of a directory.
12 /// </summary>
13 /// <param name="directories">All cached directories.</param>
14 /// <param name="componentIdGenSeeds">Hash table of Component GUID generation seeds indexed by directory id.</param>
15 /// <param name="directory">Directory identifier.</param>
16 /// <param name="canonicalize">Canonicalize the path for standard directories.</param>
17 /// <returns>Source path of a directory.</returns>
18 string GetDirectoryPath(Dictionary<string, IResolvedDirectory> directories, Dictionary<string, string> componentIdGenSeeds, string directory, bool canonicalize);
19
20 /// <summary>
21 /// Gets the source path of a file.
22 /// </summary>
23 /// <param name="directories">All cached directories in <see cref="ResolvedDirectory"/>.</param>
24 /// <param name="directoryId">Parent directory identifier.</param>
25 /// <param name="fileName">File name (in long|source format).</param>
26 /// <param name="compressed">Specifies the package is compressed.</param>
27 /// <param name="useLongName">Specifies the package uses long file names.</param>
28 /// <returns>Source path of file relative to package directory.</returns>
29 string GetFileSourcePath(Dictionary<string, IResolvedDirectory> directories, string directoryId, string fileName, bool compressed, bool useLongName);
30 }
31}