main
cs 75 lines 2.19 KB
Raw
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;
6 using System.Collections.Generic;
7 using System.Threading;
8 using WixToolset.Data;
9
10 /// <summary>
11 /// Context for resolve.
12 /// </summary>
13 public interface IResolveContext
14 {
15 /// <summary>
16 /// Service provider.
17 /// </summary>
18 IServiceProvider ServiceProvider { get; }
19
20 /// <summary>
21 /// Bind paths used during resolution.
22 /// </summary>
23 IReadOnlyCollection<IBindPath> BindPaths { get; set; }
24
25 /// <summary>
26 /// Bind variables used during resolution.
27 /// </summary>
28 IDictionary<string, string> BindVariables { get; set; }
29
30 /// <summary>
31 /// Resolve extensions.
32 /// </summary>
33 IReadOnlyCollection<IResolverExtension> Extensions { get; set; }
34
35 /// <summary>
36 /// Extension data.
37 /// </summary>
38 IReadOnlyCollection<IExtensionData> ExtensionData { get; set; }
39
40 /// <summary>
41 /// List of cultures to filter the localizations.
42 /// </summary>
43 IReadOnlyCollection<string> FilterCultures { get; set; }
44
45 /// <summary>
46 /// Intermediate folder.
47 /// </summary>
48 string IntermediateFolder { get; set; }
49
50 /// <summary>
51 /// Intermediate to resolve.
52 /// </summary>
53 Intermediate IntermediateRepresentation { get; set; }
54
55 /// <summary>
56 /// Localizations used to resolve.
57 /// </summary>
58 IReadOnlyCollection<Localization> Localizations { get; set; }
59
60 /// <summary>
61 /// Indicates whether to allow localization and bind variables to remain unresolved.
62 /// </summary>
63 bool AllowUnresolvedVariables { get; set; }
64
65 /// <summary>
66 /// Output path.
67 /// </summary>
68 string OutputPath { get; set; }
69
70 /// <summary>
71 /// Cancellation token.
72 /// </summary>
73 CancellationToken CancellationToken { get; set; }
74 }
75 }