diff options
Diffstat (limited to 'src/WixToolset.Core.Burn/Bundles/PackageFacade.cs')
-rw-r--r-- | src/WixToolset.Core.Burn/Bundles/PackageFacade.cs | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/src/WixToolset.Core.Burn/Bundles/PackageFacade.cs b/src/WixToolset.Core.Burn/Bundles/PackageFacade.cs new file mode 100644 index 00000000..3f2e184d --- /dev/null +++ b/src/WixToolset.Core.Burn/Bundles/PackageFacade.cs | |||
@@ -0,0 +1,58 @@ | |||
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.Core.Burn.Bundles | ||
4 | { | ||
5 | using WixToolset.Data.Rows; | ||
6 | |||
7 | internal class PackageFacade | ||
8 | { | ||
9 | private PackageFacade(WixBundlePackageRow package) | ||
10 | { | ||
11 | this.Package = package; | ||
12 | this.Provides = new ProvidesDependencyCollection(); | ||
13 | } | ||
14 | |||
15 | public PackageFacade(WixBundlePackageRow package, WixBundleExePackageRow exePackage) | ||
16 | : this(package) | ||
17 | { | ||
18 | this.ExePackage = exePackage; | ||
19 | } | ||
20 | |||
21 | public PackageFacade(WixBundlePackageRow package, WixBundleMsiPackageRow msiPackage) | ||
22 | : this(package) | ||
23 | { | ||
24 | this.MsiPackage = msiPackage; | ||
25 | } | ||
26 | |||
27 | public PackageFacade(WixBundlePackageRow package, WixBundleMspPackageRow mspPackage) | ||
28 | : this(package) | ||
29 | { | ||
30 | this.MspPackage = mspPackage; | ||
31 | } | ||
32 | |||
33 | public PackageFacade(WixBundlePackageRow package, WixBundleMsuPackageRow msuPackage) | ||
34 | : this(package) | ||
35 | { | ||
36 | this.MsuPackage = msuPackage; | ||
37 | } | ||
38 | |||
39 | public WixBundlePackageRow Package { get; private set; } | ||
40 | |||
41 | public WixBundleExePackageRow ExePackage { get; private set; } | ||
42 | |||
43 | public WixBundleMsiPackageRow MsiPackage { get; private set; } | ||
44 | |||
45 | public WixBundleMspPackageRow MspPackage { get; private set; } | ||
46 | |||
47 | public WixBundleMsuPackageRow MsuPackage { get; private set; } | ||
48 | |||
49 | /// <summary> | ||
50 | /// The provides dependencies authored and imported for this package. | ||
51 | /// </summary> | ||
52 | /// <remarks> | ||
53 | /// TODO: Eventually this collection should turn into Rows so they are tracked in the PDB but | ||
54 | /// the relationship with the extension makes it much trickier to pull off. | ||
55 | /// </remarks> | ||
56 | public ProvidesDependencyCollection Provides { get; private set; } | ||
57 | } | ||
58 | } | ||