aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Extensibility/Data
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2018-10-24 20:56:32 -0700
committerRob Mensching <rob@robmensching.com>2018-10-24 21:11:31 -0700
commit41e60175f6db63cb988a9340c950c224dc472814 (patch)
treede1740c00840c47596b4c9802c08409a0bfe80df /src/WixToolset.Extensibility/Data
parentce51350ca9c020312810447f64a3f40145f749bd (diff)
downloadwix-41e60175f6db63cb988a9340c950c224dc472814.tar.gz
wix-41e60175f6db63cb988a9340c950c224dc472814.tar.bz2
wix-41e60175f6db63cb988a9340c950c224dc472814.zip
Re-introduce "decompile" to backend
Diffstat (limited to 'src/WixToolset.Extensibility/Data')
-rw-r--r--src/WixToolset.Extensibility/Data/DecompileResult.cs13
-rw-r--r--src/WixToolset.Extensibility/Data/IDecompileContext.cs55
2 files changed, 68 insertions, 0 deletions
diff --git a/src/WixToolset.Extensibility/Data/DecompileResult.cs b/src/WixToolset.Extensibility/Data/DecompileResult.cs
new file mode 100644
index 00000000..29da4887
--- /dev/null
+++ b/src/WixToolset.Extensibility/Data/DecompileResult.cs
@@ -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
3namespace WixToolset.Extensibility.Data
4{
5 using System.Collections.Generic;
6
7 public class DecompileResult
8 {
9 public string SourceDocumentPath { get; set; }
10
11 public IEnumerable<string> ExtractedFilePaths { get; set; }
12 }
13}
diff --git a/src/WixToolset.Extensibility/Data/IDecompileContext.cs b/src/WixToolset.Extensibility/Data/IDecompileContext.cs
new file mode 100644
index 00000000..fb846878
--- /dev/null
+++ b/src/WixToolset.Extensibility/Data/IDecompileContext.cs
@@ -0,0 +1,55 @@
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.Data
4{
5 using System;
6 using System.Collections.Generic;
7 using WixToolset.Data;
8
9 public interface IDecompileContext
10 {
11 IServiceProvider ServiceProvider { get; }
12
13 string DecompilePath { get; set; }
14
15 OutputType DecompileType { get; set; }
16
17 IEnumerable<IDecompilerExtension> Extensions { get; set; }
18
19 string ExtractFolder { get; set; }
20
21 /// <summary>
22 /// Optional gets or sets the base path for the File/@Source.
23 /// </summary>
24 /// <remarks>Default value is "SourceDir" to enable use of BindPaths.</remarks>
25 string BaseSourcePath { get; set; }
26
27 string IntermediateFolder { get; set; }
28
29 bool IsAdminImage { get; set; }
30
31 string OutputPath { get; set; }
32
33 /// <summary>
34 /// Gets or sets the option to suppress custom tables.
35 /// </summary>
36 bool SuppressCustomTables { get; set; }
37
38 /// <summary>
39 /// Gets or sets the option to suppress dropping empty tables.
40 /// </summary>
41 bool SuppressDroppingEmptyTables { get; set; }
42
43 bool SuppressExtractCabinets { get; set; }
44
45 /// <summary>
46 /// Gets or sets the option to suppress decompiling UI-related tables.
47 /// </summary>
48 bool SuppressUI { get; set; }
49
50 /// <summary>
51 /// Gets or sets whether the decompiler should use module logic on a product output.
52 /// </summary>
53 bool TreatProductAsModule { get; set; }
54 }
55}