summaryrefslogtreecommitdiff
path: root/src/ext/Bal/wixext/BalBurnBackendExtension.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/ext/Bal/wixext/BalBurnBackendExtension.cs')
-rw-r--r--src/ext/Bal/wixext/BalBurnBackendExtension.cs23
1 files changed, 22 insertions, 1 deletions
diff --git a/src/ext/Bal/wixext/BalBurnBackendExtension.cs b/src/ext/Bal/wixext/BalBurnBackendExtension.cs
index 854b8b35..3b19ae78 100644
--- a/src/ext/Bal/wixext/BalBurnBackendExtension.cs
+++ b/src/ext/Bal/wixext/BalBurnBackendExtension.cs
@@ -10,6 +10,7 @@ namespace WixToolset.Bal
10 using WixToolset.Data.Burn; 10 using WixToolset.Data.Burn;
11 using WixToolset.Data.Symbols; 11 using WixToolset.Data.Symbols;
12 using WixToolset.Extensibility; 12 using WixToolset.Extensibility;
13 using WixToolset.Extensibility.Data;
13 14
14 public class BalBurnBackendExtension : BaseBurnBackendBinderExtension 15 public class BalBurnBackendExtension : BaseBurnBackendBinderExtension
15 { 16 {
@@ -31,6 +32,8 @@ namespace WixToolset.Bal
31 { 32 {
32 base.SymbolsFinalized(section); 33 base.SymbolsFinalized(section);
33 34
35 this.VerifyBalConditions(section);
36 this.VerifyBalPackageInfos(section);
34 this.VerifyOverridableVariables(section); 37 this.VerifyOverridableVariables(section);
35 38
36 var baSymbol = section.Symbols.OfType<WixBootstrapperApplicationDllSymbol>().SingleOrDefault(); 39 var baSymbol = section.Symbols.OfType<WixBootstrapperApplicationDllSymbol>().SingleOrDefault();
@@ -100,7 +103,7 @@ namespace WixToolset.Bal
100 { 103 {
101 foreach (var payloadPropertiesSymbol in payloadPropertiesSymbols) 104 foreach (var payloadPropertiesSymbol in payloadPropertiesSymbols)
102 { 105 {
103 if (string.Equals(payloadPropertiesSymbol.Name, "bafunctions.dll", StringComparison.OrdinalIgnoreCase) && 106 if (String.Equals(payloadPropertiesSymbol.Name, "bafunctions.dll", StringComparison.OrdinalIgnoreCase) &&
104 BurnConstants.BurnUXContainerName == payloadPropertiesSymbol.ContainerRef) 107 BurnConstants.BurnUXContainerName == payloadPropertiesSymbol.ContainerRef)
105 { 108 {
106 this.Messaging.Write(BalWarnings.UnmarkedBAFunctionsDLL(payloadPropertiesSymbol.SourceLineNumbers)); 109 this.Messaging.Write(BalWarnings.UnmarkedBAFunctionsDLL(payloadPropertiesSymbol.SourceLineNumbers));
@@ -120,6 +123,24 @@ namespace WixToolset.Bal
120 } 123 }
121 } 124 }
122 125
126 private void VerifyBalConditions(IntermediateSection section)
127 {
128 var balConditionSymbols = section.Symbols.OfType<WixBalConditionSymbol>().ToList();
129 foreach (var balConditionSymbol in balConditionSymbols)
130 {
131 this.BackendHelper.ValidateBundleCondition(balConditionSymbol.SourceLineNumbers, "bal:Condition", "Condition", balConditionSymbol.Condition, BundleConditionPhase.Detect);
132 }
133 }
134
135 private void VerifyBalPackageInfos(IntermediateSection section)
136 {
137 var balPackageInfoSymbols = section.Symbols.OfType<WixBalPackageInfoSymbol>().ToList();
138 foreach (var balPackageInfoSymbol in balPackageInfoSymbols)
139 {
140 this.BackendHelper.ValidateBundleCondition(balPackageInfoSymbol.SourceLineNumbers, "*Package", "bal:DisplayInternalUICondition", balPackageInfoSymbol.DisplayInternalUICondition, BundleConditionPhase.Plan);
141 }
142 }
143
123 private void VerifyOverridableVariables(IntermediateSection section) 144 private void VerifyOverridableVariables(IntermediateSection section)
124 { 145 {
125 var bundleSymbol = section.Symbols.OfType<WixBundleSymbol>().Single(); 146 var bundleSymbol = section.Symbols.OfType<WixBundleSymbol>().Single();