@joebigelow / wix / commits / fecacf19

Update CreateBootstrapperApplicationManifest to better match v3 output.

Sean Hall committed Apr 10, 2020 at 15:46 UTC fecacf19e8ea73500b7a936f809dc92f7317886b
1 file changed +48 -12
src/WixToolset.Core.Burn/Bundles/CreateBootstrapperApplicationManifestCommand.cs
+48 -12
@@ -83,7 +83,7 @@ namespace WixToolset.Core.Burn.Bundles
83 writer.WriteAttributeString("DisplayName", this.BundleTuple.Name);
84 writer.WriteAttributeString("LogPathVariable", this.BundleTuple.LogPathVariable);
85 writer.WriteAttributeString("Compressed", this.BundleTuple.Compressed == true ? "yes" : "no");
86 - writer.WriteAttributeString("BundleId", this.BundleTuple.BundleId.ToUpperInvariant());
86 + writer.WriteAttributeString("Id", this.BundleTuple.BundleId.ToUpperInvariant());
87 writer.WriteAttributeString("UpgradeCode", this.BundleTuple.UpgradeCode);
88 writer.WriteAttributeString("PerMachine", this.BundleTuple.PerMachine ? "yes" : "no");
89
@@ -98,12 +98,21 @@ namespace WixToolset.Core.Burn.Bundles
98
99 var size = package.PackageTuple.Size.ToString(CultureInfo.InvariantCulture);
100
101 - writer.WriteStartElement("WixBundleProperties");
101 + writer.WriteStartElement("WixPackageProperties");
102
103 writer.WriteAttributeString("Package", package.PackageId);
104 writer.WriteAttributeString("Vital", package.PackageTuple.Vital == true ? "yes" : "no");
105 - writer.WriteAttributeString("DisplayName", package.PackageTuple.DisplayName);
106 - writer.WriteAttributeString("Description", package.PackageTuple.Description);
105 +
106 + if (!String.IsNullOrEmpty(package.PackageTuple.DisplayName))
107 + {
108 + writer.WriteAttributeString("DisplayName", package.PackageTuple.DisplayName);
109 + }
110 +
111 + if (!String.IsNullOrEmpty(package.PackageTuple.Description))
112 + {
113 + writer.WriteAttributeString("Description", package.PackageTuple.Description);
114 + }
115 +
116 writer.WriteAttributeString("DownloadSize", size);
117 writer.WriteAttributeString("PackageSize", size);
118 writer.WriteAttributeString("InstalledSize", package.PackageTuple.InstallSize?.ToString(CultureInfo.InvariantCulture) ?? size);
@@ -175,9 +184,22 @@ namespace WixToolset.Core.Burn.Bundles
184 writer.WriteAttributeString("Package", featureTuple.PackageRef);
185 writer.WriteAttributeString("Feature", featureTuple.Name);
186 writer.WriteAttributeString("Size", featureTuple.Size.ToString(CultureInfo.InvariantCulture));
178 - writer.WriteAttributeString("Parent", featureTuple.Parent);
179 - writer.WriteAttributeString("Title", featureTuple.Title);
180 - writer.WriteAttributeString("Description", featureTuple.Description);
187 +
188 + if (!String.IsNullOrEmpty(featureTuple.Parent))
189 + {
190 + writer.WriteAttributeString("Parent", featureTuple.Parent);
191 + }
192 +
193 + if (!String.IsNullOrEmpty(featureTuple.Title))
194 + {
195 + writer.WriteAttributeString("Title", featureTuple.Title);
196 + }
197 +
198 + if (!String.IsNullOrEmpty(featureTuple.Description))
199 + {
200 + writer.WriteAttributeString("Description", featureTuple.Description);
201 + }
202 +
203 writer.WriteAttributeString("Display", featureTuple.Display.ToString(CultureInfo.InvariantCulture));
204 writer.WriteAttributeString("Level", featureTuple.Level.ToString(CultureInfo.InvariantCulture));
205 writer.WriteAttributeString("Directory", featureTuple.Directory);
@@ -193,14 +215,28 @@ namespace WixToolset.Core.Burn.Bundles
215
216 foreach (var payloadTuple in payloadTuples)
217 {
196 - writer.WriteStartElement("WixPackageFeatureInfo");
218 + writer.WriteStartElement("WixPayloadProperties");
219 +
220 + writer.WriteAttributeString("Payload", payloadTuple.Id.Id);
221 +
222 + if (!String.IsNullOrEmpty(payloadTuple.PackageRef))
223 + {
224 + writer.WriteAttributeString("Package", payloadTuple.PackageRef);
225 + }
226 +
227 + if (!String.IsNullOrEmpty(payloadTuple.ContainerRef))
228 + {
229 + writer.WriteAttributeString("Container", payloadTuple.ContainerRef);
230 + }
231
198 - writer.WriteAttributeString("Id", payloadTuple.Id.Id);
199 - writer.WriteAttributeString("Package", payloadTuple.PackageRef);
200 - writer.WriteAttributeString("Container", payloadTuple.ContainerRef);
232 writer.WriteAttributeString("Name", payloadTuple.Name);
233 writer.WriteAttributeString("Size", payloadTuple.FileSize.ToString(CultureInfo.InvariantCulture));
203 - writer.WriteAttributeString("DownloadUrl", payloadTuple.DownloadUrl);
234 +
235 + if (!String.IsNullOrEmpty(payloadTuple.DownloadUrl))
236 + {
237 + writer.WriteAttributeString("DownloadUrl", payloadTuple.DownloadUrl);
238 + }
239 +
240 writer.WriteAttributeString("LayoutOnly", payloadTuple.LayoutOnly ? "yes" : "no");
241
242 writer.WriteEndElement();