diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/WixToolset.Mba.Core/BootstrapperApplication.cs | 195 | ||||
| -rw-r--r-- | src/WixToolset.Mba.Core/EventArgs.cs | 536 | ||||
| -rw-r--r-- | src/WixToolset.Mba.Core/IBootstrapperApplication.cs | 160 | ||||
| -rw-r--r-- | src/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs | 45 | ||||
| -rw-r--r-- | src/balutil/inc/BAFunctions.h | 7 | ||||
| -rw-r--r-- | src/balutil/inc/BalBaseBAFunctions.h | 101 | ||||
| -rw-r--r-- | src/balutil/inc/BalBaseBootstrapperApplication.h | 106 | ||||
| -rw-r--r-- | src/balutil/inc/BalBaseBootstrapperApplicationProc.h | 84 | ||||
| -rw-r--r-- | src/balutil/inc/IBootstrapperApplication.h | 87 |
9 files changed, 943 insertions, 378 deletions
diff --git a/src/WixToolset.Mba.Core/BootstrapperApplication.cs b/src/WixToolset.Mba.Core/BootstrapperApplication.cs index 79cbfa86..0a8f3af8 100644 --- a/src/WixToolset.Mba.Core/BootstrapperApplication.cs +++ b/src/WixToolset.Mba.Core/BootstrapperApplication.cs | |||
| @@ -155,6 +155,9 @@ namespace WixToolset.Mba.Core | |||
| 155 | public event EventHandler<CacheVerifyBeginEventArgs> CacheVerifyBegin; | 155 | public event EventHandler<CacheVerifyBeginEventArgs> CacheVerifyBegin; |
| 156 | 156 | ||
| 157 | /// <inheritdoc/> | 157 | /// <inheritdoc/> |
| 158 | public event EventHandler<CacheVerifyProgressEventArgs> CacheVerifyProgress; | ||
| 159 | |||
| 160 | /// <inheritdoc/> | ||
| 158 | public event EventHandler<CacheVerifyCompleteEventArgs> CacheVerifyComplete; | 161 | public event EventHandler<CacheVerifyCompleteEventArgs> CacheVerifyComplete; |
| 159 | 162 | ||
| 160 | /// <inheritdoc/> | 163 | /// <inheritdoc/> |
| @@ -229,6 +232,24 @@ namespace WixToolset.Mba.Core | |||
| 229 | /// <inheritdoc/> | 232 | /// <inheritdoc/> |
| 230 | public event EventHandler<PlanForwardCompatibleBundleEventArgs> PlanForwardCompatibleBundle; | 233 | public event EventHandler<PlanForwardCompatibleBundleEventArgs> PlanForwardCompatibleBundle; |
| 231 | 234 | ||
| 235 | /// <inheritdoc/> | ||
| 236 | public event EventHandler<CacheContainerOrPayloadVerifyBeginEventArgs> CacheContainerOrPayloadVerifyBegin; | ||
| 237 | |||
| 238 | /// <inheritdoc/> | ||
| 239 | public event EventHandler<CacheContainerOrPayloadVerifyProgressEventArgs> CacheContainerOrPayloadVerifyProgress; | ||
| 240 | |||
| 241 | /// <inheritdoc/> | ||
| 242 | public event EventHandler<CacheContainerOrPayloadVerifyCompleteEventArgs> CacheContainerOrPayloadVerifyComplete; | ||
| 243 | |||
| 244 | /// <inheritdoc/> | ||
| 245 | public event EventHandler<CachePayloadExtractBeginEventArgs> CachePayloadExtractBegin; | ||
| 246 | |||
| 247 | /// <inheritdoc/> | ||
| 248 | public event EventHandler<CachePayloadExtractProgressEventArgs> CachePayloadExtractProgress; | ||
| 249 | |||
| 250 | /// <inheritdoc/> | ||
| 251 | public event EventHandler<CachePayloadExtractCompleteEventArgs> CachePayloadExtractComplete; | ||
| 252 | |||
| 232 | /// <summary> | 253 | /// <summary> |
| 233 | /// Entry point that is called when the bootstrapper application is ready to run. | 254 | /// Entry point that is called when the bootstrapper application is ready to run. |
| 234 | /// </summary> | 255 | /// </summary> |
| @@ -775,6 +796,19 @@ namespace WixToolset.Mba.Core | |||
| 775 | } | 796 | } |
| 776 | 797 | ||
| 777 | /// <summary> | 798 | /// <summary> |
| 799 | /// Called by the engine, raises the <see cref="CacheVerifyProgress"/> event. | ||
| 800 | /// </summary> | ||
| 801 | /// <param name="args"></param> | ||
| 802 | protected virtual void OnCacheVerifyProgress(CacheVerifyProgressEventArgs args) | ||
| 803 | { | ||
| 804 | EventHandler<CacheVerifyProgressEventArgs> handler = this.CacheVerifyProgress; | ||
| 805 | if (null != handler) | ||
| 806 | { | ||
| 807 | handler(this, args); | ||
| 808 | } | ||
| 809 | } | ||
| 810 | |||
| 811 | /// <summary> | ||
| 778 | /// Called by the engine, raises the <see cref="CacheVerifyComplete"/> event. | 812 | /// Called by the engine, raises the <see cref="CacheVerifyComplete"/> event. |
| 779 | /// </summary> | 813 | /// </summary> |
| 780 | /// <param name="args"></param> | 814 | /// <param name="args"></param> |
| @@ -1098,8 +1132,99 @@ namespace WixToolset.Mba.Core | |||
| 1098 | } | 1132 | } |
| 1099 | } | 1133 | } |
| 1100 | 1134 | ||
| 1135 | /// <summary> | ||
| 1136 | /// Called by the engine, raises the <see cref="CacheContainerOrPayloadVerifyBegin"/> event. | ||
| 1137 | /// </summary> | ||
| 1138 | /// <param name="args"></param> | ||
| 1139 | protected virtual void OnCacheContainerOrPayloadVerifyBegin(CacheContainerOrPayloadVerifyBeginEventArgs args) | ||
| 1140 | { | ||
| 1141 | EventHandler<CacheContainerOrPayloadVerifyBeginEventArgs> handler = this.CacheContainerOrPayloadVerifyBegin; | ||
| 1142 | if (null != handler) | ||
| 1143 | { | ||
| 1144 | handler(this, args); | ||
| 1145 | } | ||
| 1146 | } | ||
| 1147 | |||
| 1148 | /// <summary> | ||
| 1149 | /// Called by the engine, raises the <see cref="CacheContainerOrPayloadVerifyProgress"/> event. | ||
| 1150 | /// </summary> | ||
| 1151 | /// <param name="args"></param> | ||
| 1152 | protected virtual void OnCacheContainerOrPayloadVerifyProgress(CacheContainerOrPayloadVerifyProgressEventArgs args) | ||
| 1153 | { | ||
| 1154 | EventHandler<CacheContainerOrPayloadVerifyProgressEventArgs> handler = this.CacheContainerOrPayloadVerifyProgress; | ||
| 1155 | if (null != handler) | ||
| 1156 | { | ||
| 1157 | handler(this, args); | ||
| 1158 | } | ||
| 1159 | } | ||
| 1160 | |||
| 1161 | /// <summary> | ||
| 1162 | /// Called by the engine, raises the <see cref="CacheContainerOrPayloadVerifyComplete"/> event. | ||
| 1163 | /// </summary> | ||
| 1164 | /// <param name="args"></param> | ||
| 1165 | protected virtual void OnCacheContainerOrPayloadVerifyComplete(CacheContainerOrPayloadVerifyCompleteEventArgs args) | ||
| 1166 | { | ||
| 1167 | EventHandler<CacheContainerOrPayloadVerifyCompleteEventArgs> handler = this.CacheContainerOrPayloadVerifyComplete; | ||
| 1168 | if (null != handler) | ||
| 1169 | { | ||
| 1170 | handler(this, args); | ||
| 1171 | } | ||
| 1172 | } | ||
| 1173 | |||
| 1174 | /// <summary> | ||
| 1175 | /// Called by the engine, raises the <see cref="CachePayloadExtractBegin"/> event. | ||
| 1176 | /// </summary> | ||
| 1177 | /// <param name="args"></param> | ||
| 1178 | protected virtual void OnCachePayloadExtractBegin(CachePayloadExtractBeginEventArgs args) | ||
| 1179 | { | ||
| 1180 | EventHandler<CachePayloadExtractBeginEventArgs> handler = this.CachePayloadExtractBegin; | ||
| 1181 | if (null != handler) | ||
| 1182 | { | ||
| 1183 | handler(this, args); | ||
| 1184 | } | ||
| 1185 | } | ||
| 1186 | |||
| 1187 | /// <summary> | ||
| 1188 | /// Called by the engine, raises the <see cref="CachePayloadExtractProgress"/> event. | ||
| 1189 | /// </summary> | ||
| 1190 | /// <param name="args"></param> | ||
| 1191 | protected virtual void OnCachePayloadExtractProgress(CachePayloadExtractProgressEventArgs args) | ||
| 1192 | { | ||
| 1193 | EventHandler<CachePayloadExtractProgressEventArgs> handler = this.CachePayloadExtractProgress; | ||
| 1194 | if (null != handler) | ||
| 1195 | { | ||
| 1196 | handler(this, args); | ||
| 1197 | } | ||
| 1198 | } | ||
| 1199 | |||
| 1200 | /// <summary> | ||
| 1201 | /// Called by the engine, raises the <see cref="CachePayloadExtractComplete"/> event. | ||
| 1202 | /// </summary> | ||
| 1203 | /// <param name="args"></param> | ||
| 1204 | protected virtual void OnCachePayloadExtractComplete(CachePayloadExtractCompleteEventArgs args) | ||
| 1205 | { | ||
| 1206 | EventHandler<CachePayloadExtractCompleteEventArgs> handler = this.CachePayloadExtractComplete; | ||
| 1207 | if (null != handler) | ||
| 1208 | { | ||
| 1209 | handler(this, args); | ||
| 1210 | } | ||
| 1211 | } | ||
| 1212 | |||
| 1101 | #region IBootstrapperApplication Members | 1213 | #region IBootstrapperApplication Members |
| 1102 | 1214 | ||
| 1215 | int IBootstrapperApplication.BAProc(int message, IntPtr pvArgs, IntPtr pvResults, IntPtr pvContext) | ||
| 1216 | { | ||
| 1217 | switch (message) | ||
| 1218 | { | ||
| 1219 | default: | ||
| 1220 | return NativeMethods.E_NOTIMPL; | ||
| 1221 | } | ||
| 1222 | } | ||
| 1223 | |||
| 1224 | void IBootstrapperApplication.BAProcFallback(int message, IntPtr pvArgs, IntPtr pvResults, ref int phr, IntPtr pvContext) | ||
| 1225 | { | ||
| 1226 | } | ||
| 1227 | |||
| 1103 | int IBootstrapperApplication.OnStartup() | 1228 | int IBootstrapperApplication.OnStartup() |
| 1104 | { | 1229 | { |
| 1105 | StartupEventArgs args = new StartupEventArgs(); | 1230 | StartupEventArgs args = new StartupEventArgs(); |
| @@ -1439,18 +1564,27 @@ namespace WixToolset.Mba.Core | |||
| 1439 | return args.HResult; | 1564 | return args.HResult; |
| 1440 | } | 1565 | } |
| 1441 | 1566 | ||
| 1442 | int IBootstrapperApplication.OnCacheVerifyBegin(string wzPackageId, string wzPayloadId, ref bool fCancel) | 1567 | int IBootstrapperApplication.OnCacheVerifyBegin(string wzPackageOrContainerId, string wzPayloadId, ref bool fCancel) |
| 1443 | { | 1568 | { |
| 1444 | CacheVerifyBeginEventArgs args = new CacheVerifyBeginEventArgs(wzPackageId, wzPayloadId, fCancel); | 1569 | CacheVerifyBeginEventArgs args = new CacheVerifyBeginEventArgs(wzPackageOrContainerId, wzPayloadId, fCancel); |
| 1445 | this.OnCacheVerifyBegin(args); | 1570 | this.OnCacheVerifyBegin(args); |
| 1446 | 1571 | ||
| 1447 | fCancel = args.Cancel; | 1572 | fCancel = args.Cancel; |
| 1448 | return args.HResult; | 1573 | return args.HResult; |
| 1449 | } | 1574 | } |
| 1450 | 1575 | ||
| 1451 | int IBootstrapperApplication.OnCacheVerifyComplete(string wzPackageId, string wzPayloadId, int hrStatus, BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION recommendation, ref BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION action) | 1576 | int IBootstrapperApplication.OnCacheVerifyProgress(string wzPackageOrContainerId, string wzPayloadId, long dw64Progress, long dw64Total, int dwOverallPercentage, CacheVerifyStep verifyStep, ref bool fCancel) |
| 1577 | { | ||
| 1578 | CacheVerifyProgressEventArgs args = new CacheVerifyProgressEventArgs(wzPackageOrContainerId, wzPayloadId, dw64Progress, dw64Total, dwOverallPercentage, verifyStep, fCancel); | ||
| 1579 | this.OnCacheVerifyProgress(args); | ||
| 1580 | |||
| 1581 | fCancel = args.Cancel; | ||
| 1582 | return args.HResult; | ||
| 1583 | } | ||
| 1584 | |||
| 1585 | int IBootstrapperApplication.OnCacheVerifyComplete(string wzPackageOrContainerId, string wzPayloadId, int hrStatus, BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION recommendation, ref BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION action) | ||
| 1452 | { | 1586 | { |
| 1453 | CacheVerifyCompleteEventArgs args = new CacheVerifyCompleteEventArgs(wzPackageId, wzPayloadId, hrStatus, recommendation, action); | 1587 | CacheVerifyCompleteEventArgs args = new CacheVerifyCompleteEventArgs(wzPackageOrContainerId, wzPayloadId, hrStatus, recommendation, action); |
| 1454 | this.OnCacheVerifyComplete(args); | 1588 | this.OnCacheVerifyComplete(args); |
| 1455 | 1589 | ||
| 1456 | action = args.Action; | 1590 | action = args.Action; |
| @@ -1682,17 +1816,56 @@ namespace WixToolset.Mba.Core | |||
| 1682 | return args.HResult; | 1816 | return args.HResult; |
| 1683 | } | 1817 | } |
| 1684 | 1818 | ||
| 1685 | int IBootstrapperApplication.BAProc(int message, IntPtr pvArgs, IntPtr pvResults, IntPtr pvContext) | 1819 | int IBootstrapperApplication.OnCacheContainerOrPayloadVerifyBegin(string wzPackageOrContainerId, string wzPayloadId, ref bool fCancel) |
| 1686 | { | 1820 | { |
| 1687 | switch (message) | 1821 | CacheContainerOrPayloadVerifyBeginEventArgs args = new CacheContainerOrPayloadVerifyBeginEventArgs(wzPackageOrContainerId, wzPayloadId, fCancel); |
| 1688 | { | 1822 | this.OnCacheContainerOrPayloadVerifyBegin(args); |
| 1689 | default: | 1823 | |
| 1690 | return NativeMethods.E_NOTIMPL; | 1824 | fCancel = args.Cancel; |
| 1691 | } | 1825 | return args.HResult; |
| 1692 | } | 1826 | } |
| 1693 | 1827 | ||
| 1694 | void IBootstrapperApplication.BAProcFallback(int message, IntPtr pvArgs, IntPtr pvResults, ref int phr, IntPtr pvContext) | 1828 | int IBootstrapperApplication.OnCacheContainerOrPayloadVerifyProgress(string wzPackageOrContainerId, string wzPayloadId, long dw64Progress, long dw64Total, int dwOverallPercentage, ref bool fCancel) |
| 1829 | { | ||
| 1830 | CacheContainerOrPayloadVerifyProgressEventArgs args = new CacheContainerOrPayloadVerifyProgressEventArgs(wzPackageOrContainerId, wzPayloadId, dw64Progress, dw64Total, dwOverallPercentage, fCancel); | ||
| 1831 | this.OnCacheContainerOrPayloadVerifyProgress(args); | ||
| 1832 | |||
| 1833 | fCancel = args.Cancel; | ||
| 1834 | return args.HResult; | ||
| 1835 | } | ||
| 1836 | |||
| 1837 | int IBootstrapperApplication.OnCacheContainerOrPayloadVerifyComplete(string wzPackageOrContainerId, string wzPayloadId, int hrStatus) | ||
| 1838 | { | ||
| 1839 | CacheContainerOrPayloadVerifyCompleteEventArgs args = new CacheContainerOrPayloadVerifyCompleteEventArgs(wzPackageOrContainerId, wzPayloadId, hrStatus); | ||
| 1840 | this.OnCacheContainerOrPayloadVerifyComplete(args); | ||
| 1841 | |||
| 1842 | return args.HResult; | ||
| 1843 | } | ||
| 1844 | |||
| 1845 | int IBootstrapperApplication.OnCachePayloadExtractBegin(string wzContainerId, string wzPayloadId, ref bool fCancel) | ||
| 1846 | { | ||
| 1847 | CachePayloadExtractBeginEventArgs args = new CachePayloadExtractBeginEventArgs(wzContainerId, wzPayloadId, fCancel); | ||
| 1848 | this.OnCachePayloadExtractBegin(args); | ||
| 1849 | |||
| 1850 | fCancel = args.Cancel; | ||
| 1851 | return args.HResult; | ||
| 1852 | } | ||
| 1853 | |||
| 1854 | int IBootstrapperApplication.OnCachePayloadExtractProgress(string wzContainerId, string wzPayloadId, long dw64Progress, long dw64Total, int dwOverallPercentage, ref bool fCancel) | ||
| 1695 | { | 1855 | { |
| 1856 | CachePayloadExtractProgressEventArgs args = new CachePayloadExtractProgressEventArgs(wzContainerId, wzPayloadId, dw64Progress, dw64Total, dwOverallPercentage, fCancel); | ||
| 1857 | this.OnCachePayloadExtractProgress(args); | ||
| 1858 | |||
| 1859 | fCancel = args.Cancel; | ||
| 1860 | return args.HResult; | ||
| 1861 | } | ||
| 1862 | |||
| 1863 | int IBootstrapperApplication.OnCachePayloadExtractComplete(string wzContainerId, string wzPayloadId, int hrStatus) | ||
| 1864 | { | ||
| 1865 | CachePayloadExtractCompleteEventArgs args = new CachePayloadExtractCompleteEventArgs(wzContainerId, wzPayloadId, hrStatus); | ||
| 1866 | this.OnCachePayloadExtractComplete(args); | ||
| 1867 | |||
| 1868 | return args.HResult; | ||
| 1696 | } | 1869 | } |
| 1697 | 1870 | ||
| 1698 | #endregion | 1871 | #endregion |
diff --git a/src/WixToolset.Mba.Core/EventArgs.cs b/src/WixToolset.Mba.Core/EventArgs.cs index ee89b583..e64f6d2c 100644 --- a/src/WixToolset.Mba.Core/EventArgs.cs +++ b/src/WixToolset.Mba.Core/EventArgs.cs | |||
| @@ -51,11 +51,7 @@ namespace WixToolset.Mba.Core | |||
| 51 | [Serializable] | 51 | [Serializable] |
| 52 | public abstract class ResultEventArgs : HResultEventArgs | 52 | public abstract class ResultEventArgs : HResultEventArgs |
| 53 | { | 53 | { |
| 54 | /// <summary> | 54 | /// <summary /> |
| 55 | /// Creates a new instance of the <see cref="ResultEventArgs"/> class. | ||
| 56 | /// </summary> | ||
| 57 | /// <param name="recommendation">Recommended result from engine.</param> | ||
| 58 | /// <param name="result">The result to return to the engine.</param> | ||
| 59 | public ResultEventArgs(Result recommendation, Result result) | 55 | public ResultEventArgs(Result recommendation, Result result) |
| 60 | { | 56 | { |
| 61 | this.Recommendation = recommendation; | 57 | this.Recommendation = recommendation; |
| @@ -99,11 +95,7 @@ namespace WixToolset.Mba.Core | |||
| 99 | /// </summary> | 95 | /// </summary> |
| 100 | public abstract class ActionEventArgs<T> : StatusEventArgs | 96 | public abstract class ActionEventArgs<T> : StatusEventArgs |
| 101 | { | 97 | { |
| 102 | /// <summary> | 98 | /// <summary /> |
| 103 | /// </summary> | ||
| 104 | /// <param name="hrStatus">The return code of the operation.</param> | ||
| 105 | /// <param name="recommendation">Recommended action from engine.</param> | ||
| 106 | /// <param name="action">The action to perform.</param> | ||
| 107 | public ActionEventArgs(int hrStatus, T recommendation, T action) | 99 | public ActionEventArgs(int hrStatus, T recommendation, T action) |
| 108 | : base(hrStatus) | 100 | : base(hrStatus) |
| 109 | { | 101 | { |
| @@ -148,6 +140,49 @@ namespace WixToolset.Mba.Core | |||
| 148 | } | 140 | } |
| 149 | 141 | ||
| 150 | /// <summary> | 142 | /// <summary> |
| 143 | /// Base class for cache progress events. | ||
| 144 | /// </summary> | ||
| 145 | [Serializable] | ||
| 146 | public abstract class CacheProgressBaseEventArgs : CancellableHResultEventArgs | ||
| 147 | { | ||
| 148 | /// <summary /> | ||
| 149 | public CacheProgressBaseEventArgs(string packageOrContainerId, string payloadId, long progress, long total, int overallPercentage, bool cancelRecommendation) | ||
| 150 | : base(cancelRecommendation) | ||
| 151 | { | ||
| 152 | this.PackageOrContainerId = packageOrContainerId; | ||
| 153 | this.PayloadId = payloadId; | ||
| 154 | this.Progress = progress; | ||
| 155 | this.Total = total; | ||
| 156 | this.OverallPercentage = overallPercentage; | ||
| 157 | } | ||
| 158 | |||
| 159 | /// <summary> | ||
| 160 | /// Gets the identifier of the container or package. | ||
| 161 | /// </summary> | ||
| 162 | public string PackageOrContainerId { get; private set; } | ||
| 163 | |||
| 164 | /// <summary> | ||
| 165 | /// Gets the identifier of the payload. | ||
| 166 | /// </summary> | ||
| 167 | public string PayloadId { get; private set; } | ||
| 168 | |||
| 169 | /// <summary> | ||
| 170 | /// Gets the number of bytes cached thus far. | ||
| 171 | /// </summary> | ||
| 172 | public long Progress { get; private set; } | ||
| 173 | |||
| 174 | /// <summary> | ||
| 175 | /// Gets the total bytes to cache. | ||
| 176 | /// </summary> | ||
| 177 | public long Total { get; private set; } | ||
| 178 | |||
| 179 | /// <summary> | ||
| 180 | /// Gets the overall percentage of progress of caching. | ||
| 181 | /// </summary> | ||
| 182 | public int OverallPercentage { get; private set; } | ||
| 183 | } | ||
| 184 | |||
| 185 | /// <summary> | ||
| 151 | /// Additional arguments used when startup has begun. | 186 | /// Additional arguments used when startup has begun. |
| 152 | /// </summary> | 187 | /// </summary> |
| 153 | [Serializable] | 188 | [Serializable] |
| @@ -182,25 +217,12 @@ namespace WixToolset.Mba.Core | |||
| 182 | } | 217 | } |
| 183 | 218 | ||
| 184 | /// <summary> | 219 | /// <summary> |
| 185 | /// Additional arguments used when the system is shutting down or the user is logging off. | 220 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.SystemShutdown"/> |
| 186 | /// </summary> | 221 | /// </summary> |
| 187 | /// <remarks> | ||
| 188 | /// <para>To prevent shutting down or logging off, set <see cref="CancellableHResultEventArgs.Cancel"/> to | ||
| 189 | /// true; otherwise, set it to false.</para> | ||
| 190 | /// <para>By default setup will prevent shutting down or logging off between | ||
| 191 | /// <see cref="IDefaultBootstrapperApplication.ApplyBegin"/> and <see cref="IDefaultBootstrapperApplication.ApplyComplete"/>.</para> | ||
| 192 | /// <para>If <see cref="SystemShutdownEventArgs.Reasons"/> contains <see cref="EndSessionReasons.Critical"/> | ||
| 193 | /// the bootstrapper cannot prevent the shutdown and only has a few seconds to save state or perform any other | ||
| 194 | /// critical operations before being closed by the operating system.</para> | ||
| 195 | /// </remarks> | ||
| 196 | [Serializable] | 222 | [Serializable] |
| 197 | public class SystemShutdownEventArgs : CancellableHResultEventArgs | 223 | public class SystemShutdownEventArgs : CancellableHResultEventArgs |
| 198 | { | 224 | { |
| 199 | /// <summary> | 225 | /// <summary /> |
| 200 | /// Creates a new instance of the <see cref="SystemShutdownEventArgs"/> class. | ||
| 201 | /// </summary> | ||
| 202 | /// <param name="reasons">The reason the application is requested to close or being closed.</param> | ||
| 203 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 204 | public SystemShutdownEventArgs(EndSessionReasons reasons, bool cancelRecommendation) | 226 | public SystemShutdownEventArgs(EndSessionReasons reasons, bool cancelRecommendation) |
| 205 | : base(cancelRecommendation) | 227 | : base(cancelRecommendation) |
| 206 | { | 228 | { |
| @@ -301,17 +323,12 @@ namespace WixToolset.Mba.Core | |||
| 301 | } | 323 | } |
| 302 | 324 | ||
| 303 | /// <summary> | 325 | /// <summary> |
| 304 | /// Additional arguments used when the detection for an update has begun. | 326 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectUpdateBegin"/> |
| 305 | /// </summary> | 327 | /// </summary> |
| 306 | [Serializable] | 328 | [Serializable] |
| 307 | public class DetectUpdateBeginEventArgs : CancellableHResultEventArgs | 329 | public class DetectUpdateBeginEventArgs : CancellableHResultEventArgs |
| 308 | { | 330 | { |
| 309 | /// <summary> | 331 | /// <summary /> |
| 310 | /// Creates a new instance of the <see cref="DetectUpdateBeginEventArgs"/> class. | ||
| 311 | /// </summary> | ||
| 312 | /// <param name="updateLocation">The location to check for an updated bundle.</param> | ||
| 313 | /// <param name="cancelRecommendation">The cancel recommendation from the engine.</param> | ||
| 314 | /// <param name="skipRecommendation">The skip recommendation from the engine.</param> | ||
| 315 | public DetectUpdateBeginEventArgs(string updateLocation, bool cancelRecommendation, bool skipRecommendation) | 332 | public DetectUpdateBeginEventArgs(string updateLocation, bool cancelRecommendation, bool skipRecommendation) |
| 316 | : base(cancelRecommendation) | 333 | : base(cancelRecommendation) |
| 317 | { | 334 | { |
| @@ -331,23 +348,12 @@ namespace WixToolset.Mba.Core | |||
| 331 | } | 348 | } |
| 332 | 349 | ||
| 333 | /// <summary> | 350 | /// <summary> |
| 334 | /// Additional arguments used when the detection for an update has begun. | 351 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectUpdate"/> |
| 335 | /// </summary> | 352 | /// </summary> |
| 336 | [Serializable] | 353 | [Serializable] |
| 337 | public class DetectUpdateEventArgs : CancellableHResultEventArgs | 354 | public class DetectUpdateEventArgs : CancellableHResultEventArgs |
| 338 | { | 355 | { |
| 339 | /// <summary> | 356 | /// <summary /> |
| 340 | /// Creates a new instance of the <see cref="DetectUpdateBeginEventArgs"/> class. | ||
| 341 | /// </summary> | ||
| 342 | /// <param name="updateLocation">The location to check for an updated bundle.</param> | ||
| 343 | /// <param name="size">The expected size of the updated bundle.</param> | ||
| 344 | /// <param name="version">The expected version of the updated bundle.</param> | ||
| 345 | /// <param name="title">The title of the updated bundle.</param> | ||
| 346 | /// <param name="summary">The summary of the updated bundle.</param> | ||
| 347 | /// <param name="contentType">The content type of the content of the updated bundle.</param> | ||
| 348 | /// <param name="content">The content of the updated bundle.</param> | ||
| 349 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 350 | /// <param name="stopRecommendation">The recommendation from the engine.</param> | ||
| 351 | public DetectUpdateEventArgs(string updateLocation, long size, string version, string title, string summary, string contentType, string content, bool cancelRecommendation, bool stopRecommendation) | 357 | public DetectUpdateEventArgs(string updateLocation, long size, string version, string title, string summary, string contentType, string content, bool cancelRecommendation, bool stopRecommendation) |
| 352 | : base(cancelRecommendation) | 358 | : base(cancelRecommendation) |
| 353 | { | 359 | { |
| @@ -403,16 +409,12 @@ namespace WixToolset.Mba.Core | |||
| 403 | } | 409 | } |
| 404 | 410 | ||
| 405 | /// <summary> | 411 | /// <summary> |
| 406 | /// Additional arguments used when the detection for an update has completed. | 412 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectUpdateComplete"/> |
| 407 | /// </summary> | 413 | /// </summary> |
| 408 | [Serializable] | 414 | [Serializable] |
| 409 | public class DetectUpdateCompleteEventArgs : StatusEventArgs | 415 | public class DetectUpdateCompleteEventArgs : StatusEventArgs |
| 410 | { | 416 | { |
| 411 | /// <summary> | 417 | /// <summary /> |
| 412 | /// Creates a new instance of the <see cref="DetectUpdateCompleteEventArgs"/> class. | ||
| 413 | /// </summary> | ||
| 414 | /// <param name="hrStatus">The return code of the operation.</param> | ||
| 415 | /// <param name="ignoreRecommendation">The recommendation from the engine.</param> | ||
| 416 | public DetectUpdateCompleteEventArgs(int hrStatus, bool ignoreRecommendation) | 418 | public DetectUpdateCompleteEventArgs(int hrStatus, bool ignoreRecommendation) |
| 417 | : base(hrStatus) | 419 | : base(hrStatus) |
| 418 | { | 420 | { |
| @@ -481,16 +483,12 @@ namespace WixToolset.Mba.Core | |||
| 481 | } | 483 | } |
| 482 | 484 | ||
| 483 | /// <summary> | 485 | /// <summary> |
| 484 | /// Additional arguments used when the detection for a specific package has begun. | 486 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectPackageBegin"/> |
| 485 | /// </summary> | 487 | /// </summary> |
| 486 | [Serializable] | 488 | [Serializable] |
| 487 | public class DetectPackageBeginEventArgs : CancellableHResultEventArgs | 489 | public class DetectPackageBeginEventArgs : CancellableHResultEventArgs |
| 488 | { | 490 | { |
| 489 | /// <summary> | 491 | /// <summary /> |
| 490 | /// Creates a new instance of the <see cref="DetectPackageBeginEventArgs"/> class. | ||
| 491 | /// </summary> | ||
| 492 | /// <param name="packageId">The identity of the package to detect.</param> | ||
| 493 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 494 | public DetectPackageBeginEventArgs(string packageId, bool cancelRecommendation) | 492 | public DetectPackageBeginEventArgs(string packageId, bool cancelRecommendation) |
| 495 | : base(cancelRecommendation) | 493 | : base(cancelRecommendation) |
| 496 | { | 494 | { |
| @@ -504,21 +502,12 @@ namespace WixToolset.Mba.Core | |||
| 504 | } | 502 | } |
| 505 | 503 | ||
| 506 | /// <summary> | 504 | /// <summary> |
| 507 | /// Additional arguments used when a related MSI package has been detected for a package. | 505 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectRelatedMsiPackage"/> |
| 508 | /// </summary> | 506 | /// </summary> |
| 509 | [Serializable] | 507 | [Serializable] |
| 510 | public class DetectRelatedMsiPackageEventArgs : CancellableHResultEventArgs | 508 | public class DetectRelatedMsiPackageEventArgs : CancellableHResultEventArgs |
| 511 | { | 509 | { |
| 512 | /// <summary> | 510 | /// <summary /> |
| 513 | /// Creates a new instance of the <see cref="DetectRelatedMsiPackageEventArgs"/> class. | ||
| 514 | /// </summary> | ||
| 515 | /// <param name="packageId">The identity of the package detecting.</param> | ||
| 516 | /// <param name="upgradeCode">The upgrade code of the related package detected.</param> | ||
| 517 | /// <param name="productCode">The identity of the related package detected.</param> | ||
| 518 | /// <param name="perMachine">Whether the detected package is per machine.</param> | ||
| 519 | /// <param name="version">The version of the related package detected.</param> | ||
| 520 | /// <param name="operation">The operation that will be taken on the detected package.</param> | ||
| 521 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 522 | public DetectRelatedMsiPackageEventArgs(string packageId, string upgradeCode, string productCode, bool perMachine, string version, RelatedOperation operation, bool cancelRecommendation) | 511 | public DetectRelatedMsiPackageEventArgs(string packageId, string upgradeCode, string productCode, bool perMachine, string version, RelatedOperation operation, bool cancelRecommendation) |
| 523 | : base(cancelRecommendation) | 512 | : base(cancelRecommendation) |
| 524 | { | 513 | { |
| @@ -598,17 +587,11 @@ namespace WixToolset.Mba.Core | |||
| 598 | } | 587 | } |
| 599 | 588 | ||
| 600 | /// <summary> | 589 | /// <summary> |
| 601 | /// Additional arguments used when a feature in an MSI package has been detected. | 590 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectMsiFeature"/> |
| 602 | /// </summary> | 591 | /// </summary> |
| 603 | public class DetectMsiFeatureEventArgs : CancellableHResultEventArgs | 592 | public class DetectMsiFeatureEventArgs : CancellableHResultEventArgs |
| 604 | { | 593 | { |
| 605 | /// <summary> | 594 | /// <summary /> |
| 606 | /// Creates a new instance of the <see cref="DetectMsiFeatureEventArgs"/> class. | ||
| 607 | /// </summary> | ||
| 608 | /// <param name="packageId">Detected package identifier.</param> | ||
| 609 | /// <param name="featureId">Detected feature identifier.</param> | ||
| 610 | /// <param name="state">Feature state detected.</param> | ||
| 611 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 612 | public DetectMsiFeatureEventArgs(string packageId, string featureId, FeatureState state, bool cancelRecommendation) | 595 | public DetectMsiFeatureEventArgs(string packageId, string featureId, FeatureState state, bool cancelRecommendation) |
| 613 | : base(cancelRecommendation) | 596 | : base(cancelRecommendation) |
| 614 | { | 597 | { |
| @@ -687,16 +670,12 @@ namespace WixToolset.Mba.Core | |||
| 687 | } | 670 | } |
| 688 | 671 | ||
| 689 | /// <summary> | 672 | /// <summary> |
| 690 | /// Additional arguments used when the engine has begun planning the installation. | 673 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanBegin"/> |
| 691 | /// </summary> | 674 | /// </summary> |
| 692 | [Serializable] | 675 | [Serializable] |
| 693 | public class PlanBeginEventArgs : CancellableHResultEventArgs | 676 | public class PlanBeginEventArgs : CancellableHResultEventArgs |
| 694 | { | 677 | { |
| 695 | /// <summary> | 678 | /// <summary /> |
| 696 | /// Creates a new instance of the <see cref="PlanBeginEventArgs"/> class. | ||
| 697 | /// </summary> | ||
| 698 | /// <param name="packageCount">The number of packages to plan for.</param> | ||
| 699 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 700 | public PlanBeginEventArgs(int packageCount, bool cancelRecommendation) | 679 | public PlanBeginEventArgs(int packageCount, bool cancelRecommendation) |
| 701 | : base(cancelRecommendation) | 680 | : base(cancelRecommendation) |
| 702 | { | 681 | { |
| @@ -710,18 +689,12 @@ namespace WixToolset.Mba.Core | |||
| 710 | } | 689 | } |
| 711 | 690 | ||
| 712 | /// <summary> | 691 | /// <summary> |
| 713 | /// Additional arguments used when the engine has begun planning for a related bundle. | 692 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanRelatedBundle"/> |
| 714 | /// </summary> | 693 | /// </summary> |
| 715 | [Serializable] | 694 | [Serializable] |
| 716 | public class PlanRelatedBundleEventArgs : CancellableHResultEventArgs | 695 | public class PlanRelatedBundleEventArgs : CancellableHResultEventArgs |
| 717 | { | 696 | { |
| 718 | /// <summary> | 697 | /// <summary /> |
| 719 | /// Creates a new instance of the <see cref="PlanRelatedBundleEventArgs"/> class. | ||
| 720 | /// </summary> | ||
| 721 | /// <param name="bundleId">The identity of the bundle to plan for.</param> | ||
| 722 | /// <param name="recommendedState">The recommended requested state for the bundle.</param> | ||
| 723 | /// <param name="state">The requested state for the bundle.</param> | ||
| 724 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 725 | public PlanRelatedBundleEventArgs(string bundleId, RequestState recommendedState, RequestState state, bool cancelRecommendation) | 698 | public PlanRelatedBundleEventArgs(string bundleId, RequestState recommendedState, RequestState state, bool cancelRecommendation) |
| 726 | : base(cancelRecommendation) | 699 | : base(cancelRecommendation) |
| 727 | { | 700 | { |
| @@ -842,19 +815,12 @@ namespace WixToolset.Mba.Core | |||
| 842 | } | 815 | } |
| 843 | 816 | ||
| 844 | /// <summary> | 817 | /// <summary> |
| 845 | /// Additional arguments used when engine is about to plan a feature in an MSI package. | 818 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanMsiFeature"/> |
| 846 | /// </summary> | 819 | /// </summary> |
| 847 | [Serializable] | 820 | [Serializable] |
| 848 | public class PlanMsiFeatureEventArgs : CancellableHResultEventArgs | 821 | public class PlanMsiFeatureEventArgs : CancellableHResultEventArgs |
| 849 | { | 822 | { |
| 850 | /// <summary> | 823 | /// <summary /> |
| 851 | /// Creates a new instance of the <see cref="PlanMsiFeatureEventArgs"/> class. | ||
| 852 | /// </summary> | ||
| 853 | /// <param name="packageId">Package identifier being planned.</param> | ||
| 854 | /// <param name="featureId">Feature identifier being planned.</param> | ||
| 855 | /// <param name="recommendedState">Recommended feature state being planned.</param> | ||
| 856 | /// <param name="state">Feature state being planned.</param> | ||
| 857 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 858 | public PlanMsiFeatureEventArgs(string packageId, string featureId, FeatureState recommendedState, FeatureState state, bool cancelRecommendation) | 824 | public PlanMsiFeatureEventArgs(string packageId, string featureId, FeatureState recommendedState, FeatureState state, bool cancelRecommendation) |
| 859 | : base(cancelRecommendation) | 825 | : base(cancelRecommendation) |
| 860 | { | 826 | { |
| @@ -886,21 +852,12 @@ namespace WixToolset.Mba.Core | |||
| 886 | } | 852 | } |
| 887 | 853 | ||
| 888 | /// <summary> | 854 | /// <summary> |
| 889 | /// Additional arguments used when the engine is planning an MSI or MSP package. | 855 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanMsiPackage"/> |
| 890 | /// </summary> | 856 | /// </summary> |
| 891 | [Serializable] | 857 | [Serializable] |
| 892 | public class PlanMsiPackageEventArgs : CancellableHResultEventArgs | 858 | public class PlanMsiPackageEventArgs : CancellableHResultEventArgs |
| 893 | { | 859 | { |
| 894 | /// <summary> | 860 | /// <summary /> |
| 895 | /// Creates a new instance of the <see cref="PlanMsiPackageEventArgs"/> class. | ||
| 896 | /// </summary> | ||
| 897 | /// <param name="packageId">The identity of the package planned for.</param> | ||
| 898 | /// <param name="shouldExecute">Whether the package is planned to execute or roll back.</param> | ||
| 899 | /// <param name="action">The action planned for the package.</param> | ||
| 900 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 901 | /// <param name="actionMsiProperty">The requested MSI property to add.</param> | ||
| 902 | /// <param name="uiLevel">The requested internal UI level.</param> | ||
| 903 | /// <param name="disableExternalUiHandler">Whether Burn is requested to set up an external UI handler.</param> | ||
| 904 | public PlanMsiPackageEventArgs(string packageId, bool shouldExecute, ActionState action, bool cancelRecommendation, BURN_MSI_PROPERTY actionMsiProperty, INSTALLUILEVEL uiLevel, bool disableExternalUiHandler) | 861 | public PlanMsiPackageEventArgs(string packageId, bool shouldExecute, ActionState action, bool cancelRecommendation, BURN_MSI_PROPERTY actionMsiProperty, INSTALLUILEVEL uiLevel, bool disableExternalUiHandler) |
| 905 | : base(cancelRecommendation) | 862 | : base(cancelRecommendation) |
| 906 | { | 863 | { |
| @@ -1080,16 +1037,12 @@ namespace WixToolset.Mba.Core | |||
| 1080 | } | 1037 | } |
| 1081 | 1038 | ||
| 1082 | /// <summary> | 1039 | /// <summary> |
| 1083 | /// Additional arguments used when the engine has begun installing the bundle. | 1040 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ApplyBegin"/> |
| 1084 | /// </summary> | 1041 | /// </summary> |
| 1085 | [Serializable] | 1042 | [Serializable] |
| 1086 | public class ApplyBeginEventArgs : CancellableHResultEventArgs | 1043 | public class ApplyBeginEventArgs : CancellableHResultEventArgs |
| 1087 | { | 1044 | { |
| 1088 | /// <summary> | 1045 | /// <summary /> |
| 1089 | /// Creates a new instance of the <see cref="ApplyBeginEventArgs"/> class. | ||
| 1090 | /// </summary> | ||
| 1091 | /// <param name="phaseCount">The number of phases during apply.</param> | ||
| 1092 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1093 | public ApplyBeginEventArgs(int phaseCount, bool cancelRecommendation) | 1046 | public ApplyBeginEventArgs(int phaseCount, bool cancelRecommendation) |
| 1094 | : base(cancelRecommendation) | 1047 | : base(cancelRecommendation) |
| 1095 | { | 1048 | { |
| @@ -1104,15 +1057,12 @@ namespace WixToolset.Mba.Core | |||
| 1104 | } | 1057 | } |
| 1105 | 1058 | ||
| 1106 | /// <summary> | 1059 | /// <summary> |
| 1107 | /// Additional arguments used when the engine is about to start the elevated process. | 1060 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ElevateBegin"/> |
| 1108 | /// </summary> | 1061 | /// </summary> |
| 1109 | [Serializable] | 1062 | [Serializable] |
| 1110 | public class ElevateBeginEventArgs : CancellableHResultEventArgs | 1063 | public class ElevateBeginEventArgs : CancellableHResultEventArgs |
| 1111 | { | 1064 | { |
| 1112 | /// <summary> | 1065 | /// <summary /> |
| 1113 | /// Creates a new instance of the <see cref="ElevateBeginEventArgs"/> class. | ||
| 1114 | /// </summary> | ||
| 1115 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1116 | public ElevateBeginEventArgs(bool cancelRecommendation) | 1066 | public ElevateBeginEventArgs(bool cancelRecommendation) |
| 1117 | : base(cancelRecommendation) | 1067 | : base(cancelRecommendation) |
| 1118 | { | 1068 | { |
| @@ -1136,17 +1086,12 @@ namespace WixToolset.Mba.Core | |||
| 1136 | } | 1086 | } |
| 1137 | 1087 | ||
| 1138 | /// <summary> | 1088 | /// <summary> |
| 1139 | /// Additional arguments used when the engine has changed progress for the bundle installation. | 1089 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.Progress"/> |
| 1140 | /// </summary> | 1090 | /// </summary> |
| 1141 | [Serializable] | 1091 | [Serializable] |
| 1142 | public class ProgressEventArgs : CancellableHResultEventArgs | 1092 | public class ProgressEventArgs : CancellableHResultEventArgs |
| 1143 | { | 1093 | { |
| 1144 | /// <summary> | 1094 | /// <summary /> |
| 1145 | /// Creates an new instance of the <see cref="ProgressEventArgs"/> class. | ||
| 1146 | /// </summary> | ||
| 1147 | /// <param name="progressPercentage">The percentage from 0 to 100 completed for a package.</param> | ||
| 1148 | /// <param name="overallPercentage">The percentage from 0 to 100 completed for the bundle.</param> | ||
| 1149 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1150 | public ProgressEventArgs(int progressPercentage, int overallPercentage, bool cancelRecommendation) | 1095 | public ProgressEventArgs(int progressPercentage, int overallPercentage, bool cancelRecommendation) |
| 1151 | : base(cancelRecommendation) | 1096 | : base(cancelRecommendation) |
| 1152 | { | 1097 | { |
| @@ -1166,22 +1111,12 @@ namespace WixToolset.Mba.Core | |||
| 1166 | } | 1111 | } |
| 1167 | 1112 | ||
| 1168 | /// <summary> | 1113 | /// <summary> |
| 1169 | /// Additional arguments used when the engine has encountered an error. | 1114 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.Error"/> |
| 1170 | /// </summary> | 1115 | /// </summary> |
| 1171 | [Serializable] | 1116 | [Serializable] |
| 1172 | public class ErrorEventArgs : ResultEventArgs | 1117 | public class ErrorEventArgs : ResultEventArgs |
| 1173 | { | 1118 | { |
| 1174 | /// <summary> | 1119 | /// <summary /> |
| 1175 | /// Creates a new instance of the <see cref="ErrorEventArgs"/> class. | ||
| 1176 | /// </summary> | ||
| 1177 | /// <param name="errorType">The error type.</param> | ||
| 1178 | /// <param name="packageId">The identity of the package that yielded the error.</param> | ||
| 1179 | /// <param name="errorCode">The error code.</param> | ||
| 1180 | /// <param name="errorMessage">The error message.</param> | ||
| 1181 | /// <param name="dwUIHint">Recommended display flags for an error dialog.</param> | ||
| 1182 | /// <param name="data">The exteded data for the error.</param> | ||
| 1183 | /// <param name="recommendation">Recommended result from engine.</param> | ||
| 1184 | /// <param name="result">The result to return to the engine.</param> | ||
| 1185 | public ErrorEventArgs(ErrorType errorType, string packageId, int errorCode, string errorMessage, int dwUIHint, string[] data, Result recommendation, Result result) | 1120 | public ErrorEventArgs(ErrorType errorType, string packageId, int errorCode, string errorMessage, int dwUIHint, string[] data, Result recommendation, Result result) |
| 1186 | : base(recommendation, result) | 1121 | : base(recommendation, result) |
| 1187 | { | 1122 | { |
| @@ -1225,15 +1160,12 @@ namespace WixToolset.Mba.Core | |||
| 1225 | } | 1160 | } |
| 1226 | 1161 | ||
| 1227 | /// <summary> | 1162 | /// <summary> |
| 1228 | /// Additional arguments used when the engine has begun registering the location and visibility of the bundle. | 1163 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.RegisterBegin"/> |
| 1229 | /// </summary> | 1164 | /// </summary> |
| 1230 | [Serializable] | 1165 | [Serializable] |
| 1231 | public class RegisterBeginEventArgs : CancellableHResultEventArgs | 1166 | public class RegisterBeginEventArgs : CancellableHResultEventArgs |
| 1232 | { | 1167 | { |
| 1233 | /// <summary> | 1168 | /// <summary /> |
| 1234 | /// Creates a new instance of the <see cref="RegisterBeginEventArgs"/> class. | ||
| 1235 | /// </summary> | ||
| 1236 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1237 | public RegisterBeginEventArgs(bool cancelRecommendation) | 1169 | public RegisterBeginEventArgs(bool cancelRecommendation) |
| 1238 | : base(cancelRecommendation) | 1170 | : base(cancelRecommendation) |
| 1239 | { | 1171 | { |
| @@ -1301,15 +1233,12 @@ namespace WixToolset.Mba.Core | |||
| 1301 | } | 1233 | } |
| 1302 | 1234 | ||
| 1303 | /// <summary> | 1235 | /// <summary> |
| 1304 | /// Additional arguments used when the engine has begun caching the installation sources. | 1236 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.CacheBegin"/> |
| 1305 | /// </summary> | 1237 | /// </summary> |
| 1306 | [Serializable] | 1238 | [Serializable] |
| 1307 | public class CacheBeginEventArgs : CancellableHResultEventArgs | 1239 | public class CacheBeginEventArgs : CancellableHResultEventArgs |
| 1308 | { | 1240 | { |
| 1309 | /// <summary> | 1241 | /// <summary /> |
| 1310 | /// Creates a new instance of the <see cref="CacheBeginEventArgs"/> class. | ||
| 1311 | /// </summary> | ||
| 1312 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1313 | public CacheBeginEventArgs(bool cancelRecommendation) | 1242 | public CacheBeginEventArgs(bool cancelRecommendation) |
| 1314 | : base(cancelRecommendation) | 1243 | : base(cancelRecommendation) |
| 1315 | { | 1244 | { |
| @@ -1363,43 +1292,13 @@ namespace WixToolset.Mba.Core | |||
| 1363 | /// EventArgs for <see cref="IDefaultBootstrapperApplication.CacheAcquireProgress"/>. | 1292 | /// EventArgs for <see cref="IDefaultBootstrapperApplication.CacheAcquireProgress"/>. |
| 1364 | /// </summary> | 1293 | /// </summary> |
| 1365 | [Serializable] | 1294 | [Serializable] |
| 1366 | public class CacheAcquireProgressEventArgs : CancellableHResultEventArgs | 1295 | public class CacheAcquireProgressEventArgs : CacheProgressBaseEventArgs |
| 1367 | { | 1296 | { |
| 1368 | /// <summary /> | 1297 | /// <summary /> |
| 1369 | public CacheAcquireProgressEventArgs(string packageOrContainerId, string payloadId, long progress, long total, int overallPercentage, bool cancelRecommendation) | 1298 | public CacheAcquireProgressEventArgs(string packageOrContainerId, string payloadId, long progress, long total, int overallPercentage, bool cancelRecommendation) |
| 1370 | : base(cancelRecommendation) | 1299 | : base(packageOrContainerId, payloadId, progress, total, overallPercentage, cancelRecommendation) |
| 1371 | { | 1300 | { |
| 1372 | this.PackageOrContainerId = packageOrContainerId; | ||
| 1373 | this.PayloadId = payloadId; | ||
| 1374 | this.Progress = progress; | ||
| 1375 | this.Total = total; | ||
| 1376 | this.OverallPercentage = overallPercentage; | ||
| 1377 | } | 1301 | } |
| 1378 | |||
| 1379 | /// <summary> | ||
| 1380 | /// Gets the identifier of the container or package. | ||
| 1381 | /// </summary> | ||
| 1382 | public string PackageOrContainerId { get; private set; } | ||
| 1383 | |||
| 1384 | /// <summary> | ||
| 1385 | /// Gets the identifier of the payload (if acquiring a payload). | ||
| 1386 | /// </summary> | ||
| 1387 | public string PayloadId { get; private set; } | ||
| 1388 | |||
| 1389 | /// <summary> | ||
| 1390 | /// Gets the number of bytes cached thus far. | ||
| 1391 | /// </summary> | ||
| 1392 | public long Progress { get; private set; } | ||
| 1393 | |||
| 1394 | /// <summary> | ||
| 1395 | /// Gets the total bytes to cache. | ||
| 1396 | /// </summary> | ||
| 1397 | public long Total { get; private set; } | ||
| 1398 | |||
| 1399 | /// <summary> | ||
| 1400 | /// Gets the overall percentage of progress of caching. | ||
| 1401 | /// </summary> | ||
| 1402 | public int OverallPercentage { get; private set; } | ||
| 1403 | } | 1302 | } |
| 1404 | 1303 | ||
| 1405 | /// <summary> | 1304 | /// <summary> |
| @@ -1428,25 +1327,23 @@ namespace WixToolset.Mba.Core | |||
| 1428 | } | 1327 | } |
| 1429 | 1328 | ||
| 1430 | /// <summary> | 1329 | /// <summary> |
| 1431 | /// Additional arguments used when the engine starts the verification of a payload. | 1330 | /// EventArgs for <see cref="IDefaultBootstrapperApplication.CacheVerifyBegin"/>. |
| 1432 | /// </summary> | 1331 | /// </summary> |
| 1433 | [Serializable] | 1332 | [Serializable] |
| 1434 | public class CacheVerifyBeginEventArgs : CancellableHResultEventArgs | 1333 | public class CacheVerifyBeginEventArgs : CancellableHResultEventArgs |
| 1435 | { | 1334 | { |
| 1436 | /// <summary> | 1335 | /// <summary /> |
| 1437 | /// Creates a new instance of the <see cref="CacheVerifyBeginEventArgs"/> class. | 1336 | public CacheVerifyBeginEventArgs(string packageOrContainerId, string payloadId, bool cancelRecommendation) |
| 1438 | /// </summary> | ||
| 1439 | public CacheVerifyBeginEventArgs(string packageId, string payloadId, bool cancelRecommendation) | ||
| 1440 | : base(cancelRecommendation) | 1337 | : base(cancelRecommendation) |
| 1441 | { | 1338 | { |
| 1442 | this.PackageId = packageId; | 1339 | this.PackageOrContainerId = packageOrContainerId; |
| 1443 | this.PayloadId = payloadId; | 1340 | this.PayloadId = payloadId; |
| 1444 | } | 1341 | } |
| 1445 | 1342 | ||
| 1446 | /// <summary> | 1343 | /// <summary> |
| 1447 | /// Gets the identifier of the package. | 1344 | /// Gets the identifier of the container or package. |
| 1448 | /// </summary> | 1345 | /// </summary> |
| 1449 | public string PackageId { get; private set; } | 1346 | public string PackageOrContainerId { get; private set; } |
| 1450 | 1347 | ||
| 1451 | /// <summary> | 1348 | /// <summary> |
| 1452 | /// Gets the identifier of the payload. | 1349 | /// Gets the identifier of the payload. |
| @@ -1455,25 +1352,42 @@ namespace WixToolset.Mba.Core | |||
| 1455 | } | 1352 | } |
| 1456 | 1353 | ||
| 1457 | /// <summary> | 1354 | /// <summary> |
| 1458 | /// Additional arguments used when the engine completes the verification of a payload. | 1355 | /// EventArgs for <see cref="IDefaultBootstrapperApplication.CacheVerifyProgress"/>. |
| 1459 | /// </summary> | 1356 | /// </summary> |
| 1460 | [Serializable] | 1357 | [Serializable] |
| 1461 | public class CacheVerifyCompleteEventArgs : ActionEventArgs<BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION> | 1358 | public class CacheVerifyProgressEventArgs : CacheProgressBaseEventArgs |
| 1462 | { | 1359 | { |
| 1360 | /// <summary /> | ||
| 1361 | public CacheVerifyProgressEventArgs(string packageOrContainerId, string payloadId, long progress, long total, int overallPercentage, CacheVerifyStep verifyStep, bool cancelRecommendation) | ||
| 1362 | : base(packageOrContainerId, payloadId, progress, total, overallPercentage, cancelRecommendation) | ||
| 1363 | { | ||
| 1364 | this.Step = verifyStep; | ||
| 1365 | } | ||
| 1366 | |||
| 1463 | /// <summary> | 1367 | /// <summary> |
| 1464 | /// Creates a new instance of the <see cref="CacheVerifyCompleteEventArgs"/> class. | 1368 | /// Gets the current verification step. |
| 1465 | /// </summary> | 1369 | /// </summary> |
| 1466 | public CacheVerifyCompleteEventArgs(string packageId, string payloadId, int hrStatus, BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION recommendation, BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION action) | 1370 | public CacheVerifyStep Step { get; private set; } |
| 1371 | } | ||
| 1372 | |||
| 1373 | /// <summary> | ||
| 1374 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.CacheVerifyComplete"/> | ||
| 1375 | /// </summary> | ||
| 1376 | [Serializable] | ||
| 1377 | public class CacheVerifyCompleteEventArgs : ActionEventArgs<BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION> | ||
| 1378 | { | ||
| 1379 | /// <summary /> | ||
| 1380 | public CacheVerifyCompleteEventArgs(string packageOrContainerId, string payloadId, int hrStatus, BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION recommendation, BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION action) | ||
| 1467 | : base(hrStatus, recommendation, action) | 1381 | : base(hrStatus, recommendation, action) |
| 1468 | { | 1382 | { |
| 1469 | this.PackageId = packageId; | 1383 | this.PackageOrContainerId = packageOrContainerId; |
| 1470 | this.PayloadId = payloadId; | 1384 | this.PayloadId = payloadId; |
| 1471 | } | 1385 | } |
| 1472 | 1386 | ||
| 1473 | /// <summary> | 1387 | /// <summary> |
| 1474 | /// Gets the identifier of the package. | 1388 | /// Gets the identifier of the container or package. |
| 1475 | /// </summary> | 1389 | /// </summary> |
| 1476 | public string PackageId { get; private set; } | 1390 | public string PackageOrContainerId { get; private set; } |
| 1477 | 1391 | ||
| 1478 | /// <summary> | 1392 | /// <summary> |
| 1479 | /// Gets the identifier of the payload. | 1393 | /// Gets the identifier of the payload. |
| @@ -1498,16 +1412,12 @@ namespace WixToolset.Mba.Core | |||
| 1498 | } | 1412 | } |
| 1499 | 1413 | ||
| 1500 | /// <summary> | 1414 | /// <summary> |
| 1501 | /// Additional arguments used when the engine has begun installing packages. | 1415 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ExecuteBegin"/> |
| 1502 | /// </summary> | 1416 | /// </summary> |
| 1503 | [Serializable] | 1417 | [Serializable] |
| 1504 | public class ExecuteBeginEventArgs : CancellableHResultEventArgs | 1418 | public class ExecuteBeginEventArgs : CancellableHResultEventArgs |
| 1505 | { | 1419 | { |
| 1506 | /// <summary> | 1420 | /// <summary /> |
| 1507 | /// Creates a new instance of the <see cref="ExecuteBeginEventArgs"/> class. | ||
| 1508 | /// </summary> | ||
| 1509 | /// <param name="packageCount">The number of packages to act on.</param> | ||
| 1510 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1511 | public ExecuteBeginEventArgs(int packageCount, bool cancelRecommendation) | 1421 | public ExecuteBeginEventArgs(int packageCount, bool cancelRecommendation) |
| 1512 | : base(cancelRecommendation) | 1422 | : base(cancelRecommendation) |
| 1513 | { | 1423 | { |
| @@ -1521,20 +1431,12 @@ namespace WixToolset.Mba.Core | |||
| 1521 | } | 1431 | } |
| 1522 | 1432 | ||
| 1523 | /// <summary> | 1433 | /// <summary> |
| 1524 | /// Additional arguments used when the engine has begun installing a specific package. | 1434 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ExecutePackageBegin"/> |
| 1525 | /// </summary> | 1435 | /// </summary> |
| 1526 | [Serializable] | 1436 | [Serializable] |
| 1527 | public class ExecutePackageBeginEventArgs : CancellableHResultEventArgs | 1437 | public class ExecutePackageBeginEventArgs : CancellableHResultEventArgs |
| 1528 | { | 1438 | { |
| 1529 | /// <summary> | 1439 | /// <summary /> |
| 1530 | /// Creates a new instance of the <see cref="ExecutePackageBeginEventArgs"/> class. | ||
| 1531 | /// </summary> | ||
| 1532 | /// <param name="packageId">The identity of the package to act on.</param> | ||
| 1533 | /// <param name="shouldExecute">Whether the package is being executed or rolled back.</param> | ||
| 1534 | /// <param name="action">The action about to be executed.</param> | ||
| 1535 | /// <param name="uiLevel">The internal UI level (if this is an MSI or MSP package).</param> | ||
| 1536 | /// <param name="disableExternalUiHandler">Whether Burn will set up an external UI handler (if this is an MSI or MSP package).</param> | ||
| 1537 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1538 | public ExecutePackageBeginEventArgs(string packageId, bool shouldExecute, ActionState action, INSTALLUILEVEL uiLevel, bool disableExternalUiHandler, bool cancelRecommendation) | 1440 | public ExecutePackageBeginEventArgs(string packageId, bool shouldExecute, ActionState action, INSTALLUILEVEL uiLevel, bool disableExternalUiHandler, bool cancelRecommendation) |
| 1539 | : base(cancelRecommendation) | 1441 | : base(cancelRecommendation) |
| 1540 | { | 1442 | { |
| @@ -1572,17 +1474,12 @@ namespace WixToolset.Mba.Core | |||
| 1572 | } | 1474 | } |
| 1573 | 1475 | ||
| 1574 | /// <summary> | 1476 | /// <summary> |
| 1575 | /// Additional arguments used when the engine executes one or more patches targeting a product. | 1477 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ExecutePatchTarget"/> |
| 1576 | /// </summary> | 1478 | /// </summary> |
| 1577 | [Serializable] | 1479 | [Serializable] |
| 1578 | public class ExecutePatchTargetEventArgs : CancellableHResultEventArgs | 1480 | public class ExecutePatchTargetEventArgs : CancellableHResultEventArgs |
| 1579 | { | 1481 | { |
| 1580 | /// <summary> | 1482 | /// <summary /> |
| 1581 | /// Creates a new instance of the <see cref="ExecutePatchTargetEventArgs"/> class. | ||
| 1582 | /// </summary> | ||
| 1583 | /// <param name="packageId">The identity of the package to act on.</param> | ||
| 1584 | /// <param name="targetProductCode">The product code of the target of the patch.</param> | ||
| 1585 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1586 | public ExecutePatchTargetEventArgs(string packageId, string targetProductCode, bool cancelRecommendation) | 1483 | public ExecutePatchTargetEventArgs(string packageId, string targetProductCode, bool cancelRecommendation) |
| 1587 | : base(cancelRecommendation) | 1484 | : base(cancelRecommendation) |
| 1588 | { | 1485 | { |
| @@ -1602,21 +1499,12 @@ namespace WixToolset.Mba.Core | |||
| 1602 | } | 1499 | } |
| 1603 | 1500 | ||
| 1604 | /// <summary> | 1501 | /// <summary> |
| 1605 | /// Additional arguments used when Windows Installer sends an installation message. | 1502 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ExecuteMsiMessage"/> |
| 1606 | /// </summary> | 1503 | /// </summary> |
| 1607 | [Serializable] | 1504 | [Serializable] |
| 1608 | public class ExecuteMsiMessageEventArgs : ResultEventArgs | 1505 | public class ExecuteMsiMessageEventArgs : ResultEventArgs |
| 1609 | { | 1506 | { |
| 1610 | /// <summary> | 1507 | /// <summary /> |
| 1611 | /// Creates a new instance of the <see cref="ExecuteMsiMessageEventArgs"/> class. | ||
| 1612 | /// </summary> | ||
| 1613 | /// <param name="packageId">The identity of the package that yielded this message.</param> | ||
| 1614 | /// <param name="messageType">The type of this message.</param> | ||
| 1615 | /// <param name="dwUIHint">Recommended display flags for this message.</param> | ||
| 1616 | /// <param name="message">The message.</param> | ||
| 1617 | /// <param name="data">The extended data for the message.</param> | ||
| 1618 | /// <param name="recommendation">Recommended result from engine.</param> | ||
| 1619 | /// <param name="result">The result to return to the engine.</param> | ||
| 1620 | public ExecuteMsiMessageEventArgs(string packageId, InstallMessage messageType, int dwUIHint, string message, string[] data, Result recommendation, Result result) | 1508 | public ExecuteMsiMessageEventArgs(string packageId, InstallMessage messageType, int dwUIHint, string message, string[] data, Result recommendation, Result result) |
| 1621 | : base(recommendation, result) | 1509 | : base(recommendation, result) |
| 1622 | { | 1510 | { |
| @@ -1654,18 +1542,12 @@ namespace WixToolset.Mba.Core | |||
| 1654 | } | 1542 | } |
| 1655 | 1543 | ||
| 1656 | /// <summary> | 1544 | /// <summary> |
| 1657 | /// Additional arugments used for file in use installation messages. | 1545 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ExecuteFilesInUse"/> |
| 1658 | /// </summary> | 1546 | /// </summary> |
| 1659 | [Serializable] | 1547 | [Serializable] |
| 1660 | public class ExecuteFilesInUseEventArgs : ResultEventArgs | 1548 | public class ExecuteFilesInUseEventArgs : ResultEventArgs |
| 1661 | { | 1549 | { |
| 1662 | /// <summary> | 1550 | /// <summary /> |
| 1663 | /// Creates a new instance of the <see cref="ExecuteFilesInUseEventArgs"/> class. | ||
| 1664 | /// </summary> | ||
| 1665 | /// <param name="packageId">The identity of the package that yielded the files in use message.</param> | ||
| 1666 | /// <param name="files">The list of files in use.</param> | ||
| 1667 | /// <param name="recommendation">Recommended result from engine.</param> | ||
| 1668 | /// <param name="result">The result to return to the engine.</param> | ||
| 1669 | public ExecuteFilesInUseEventArgs(string packageId, string[] files, Result recommendation, Result result) | 1551 | public ExecuteFilesInUseEventArgs(string packageId, string[] files, Result recommendation, Result result) |
| 1670 | : base(recommendation, result) | 1552 | : base(recommendation, result) |
| 1671 | { | 1553 | { |
| @@ -1685,19 +1567,13 @@ namespace WixToolset.Mba.Core | |||
| 1685 | } | 1567 | } |
| 1686 | 1568 | ||
| 1687 | /// <summary> | 1569 | /// <summary> |
| 1570 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ExecutePackageComplete"/> | ||
| 1688 | /// Additional arguments used when the engine has completed installing a specific package. | 1571 | /// Additional arguments used when the engine has completed installing a specific package. |
| 1689 | /// </summary> | 1572 | /// </summary> |
| 1690 | [Serializable] | 1573 | [Serializable] |
| 1691 | public class ExecutePackageCompleteEventArgs : ActionEventArgs<BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION> | 1574 | public class ExecutePackageCompleteEventArgs : ActionEventArgs<BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION> |
| 1692 | { | 1575 | { |
| 1693 | /// <summary> | 1576 | /// <summary /> |
| 1694 | /// Creates a new instance of the <see cref="ExecutePackageCompleteEventArgs"/> class. | ||
| 1695 | /// </summary> | ||
| 1696 | /// <param name="packageId">The identity of the package that was acted on.</param> | ||
| 1697 | /// <param name="hrStatus">The return code of the operation.</param> | ||
| 1698 | /// <param name="restart">Whether a restart is required.</param> | ||
| 1699 | /// <param name="recommendation">Recommended action from engine.</param> | ||
| 1700 | /// <param name="action">The action to perform.</param> | ||
| 1701 | public ExecutePackageCompleteEventArgs(string packageId, int hrStatus, ApplyRestart restart, BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION recommendation, BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION action) | 1577 | public ExecutePackageCompleteEventArgs(string packageId, int hrStatus, ApplyRestart restart, BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION recommendation, BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION action) |
| 1702 | : base(hrStatus, recommendation, action) | 1578 | : base(hrStatus, recommendation, action) |
| 1703 | { | 1579 | { |
| @@ -1733,18 +1609,12 @@ namespace WixToolset.Mba.Core | |||
| 1733 | } | 1609 | } |
| 1734 | 1610 | ||
| 1735 | /// <summary> | 1611 | /// <summary> |
| 1736 | /// Additional arguments used when the engine has completed installing the bundle. | 1612 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ApplyComplete"/> |
| 1737 | /// </summary> | 1613 | /// </summary> |
| 1738 | [Serializable] | 1614 | [Serializable] |
| 1739 | public class ApplyCompleteEventArgs : ActionEventArgs<BOOTSTRAPPER_APPLYCOMPLETE_ACTION> | 1615 | public class ApplyCompleteEventArgs : ActionEventArgs<BOOTSTRAPPER_APPLYCOMPLETE_ACTION> |
| 1740 | { | 1616 | { |
| 1741 | /// <summary> | 1617 | /// <summary /> |
| 1742 | /// Creates a new instance of the <see cref="ApplyCompleteEventArgs"/> clas. | ||
| 1743 | /// </summary> | ||
| 1744 | /// <param name="hrStatus">The return code of the operation.</param> | ||
| 1745 | /// <param name="restart">Whether a restart is required.</param> | ||
| 1746 | /// <param name="recommendation">Recommended action from engine.</param> | ||
| 1747 | /// <param name="action">The action to perform.</param> | ||
| 1748 | public ApplyCompleteEventArgs(int hrStatus, ApplyRestart restart, BOOTSTRAPPER_APPLYCOMPLETE_ACTION recommendation, BOOTSTRAPPER_APPLYCOMPLETE_ACTION action) | 1618 | public ApplyCompleteEventArgs(int hrStatus, ApplyRestart restart, BOOTSTRAPPER_APPLYCOMPLETE_ACTION recommendation, BOOTSTRAPPER_APPLYCOMPLETE_ACTION action) |
| 1749 | : base(hrStatus, recommendation, action) | 1619 | : base(hrStatus, recommendation, action) |
| 1750 | { | 1620 | { |
| @@ -1819,18 +1689,12 @@ namespace WixToolset.Mba.Core | |||
| 1819 | } | 1689 | } |
| 1820 | 1690 | ||
| 1821 | /// <summary> | 1691 | /// <summary> |
| 1822 | /// Additional arguments used by the engine when it has begun caching a specific package. | 1692 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.CachePackageBegin"/> |
| 1823 | /// </summary> | 1693 | /// </summary> |
| 1824 | [Serializable] | 1694 | [Serializable] |
| 1825 | public class CachePackageBeginEventArgs : CancellableHResultEventArgs | 1695 | public class CachePackageBeginEventArgs : CancellableHResultEventArgs |
| 1826 | { | 1696 | { |
| 1827 | /// <summary> | 1697 | /// <summary /> |
| 1828 | /// Creates a new instance of the <see cref="CachePackageBeginEventArgs"/> class. | ||
| 1829 | /// </summary> | ||
| 1830 | /// <param name="packageId">The identity of the package that is being cached.</param> | ||
| 1831 | /// <param name="cachePayloads">Number of payloads to be cached.</param> | ||
| 1832 | /// <param name="packageCacheSize">The size on disk required by the specific package.</param> | ||
| 1833 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1834 | public CachePackageBeginEventArgs(string packageId, int cachePayloads, long packageCacheSize, bool cancelRecommendation) | 1698 | public CachePackageBeginEventArgs(string packageId, int cachePayloads, long packageCacheSize, bool cancelRecommendation) |
| 1835 | : base(cancelRecommendation) | 1699 | : base(cancelRecommendation) |
| 1836 | { | 1700 | { |
| @@ -1856,18 +1720,12 @@ namespace WixToolset.Mba.Core | |||
| 1856 | } | 1720 | } |
| 1857 | 1721 | ||
| 1858 | /// <summary> | 1722 | /// <summary> |
| 1859 | /// Additional arguments passed by the engine when it has completed caching a specific package. | 1723 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.CachePackageComplete"/> |
| 1860 | /// </summary> | 1724 | /// </summary> |
| 1861 | [Serializable] | 1725 | [Serializable] |
| 1862 | public class CachePackageCompleteEventArgs : ActionEventArgs<BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION> | 1726 | public class CachePackageCompleteEventArgs : ActionEventArgs<BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION> |
| 1863 | { | 1727 | { |
| 1864 | /// <summary> | 1728 | /// <summary /> |
| 1865 | /// Creates a new instance of the <see cref="CachePackageCompleteEventArgs"/> class. | ||
| 1866 | /// </summary> | ||
| 1867 | /// <param name="packageId">The identity of the package that was cached.</param> | ||
| 1868 | /// <param name="hrStatus">The return code of the operation.</param> | ||
| 1869 | /// <param name="recommendation">Recommended action from engine.</param> | ||
| 1870 | /// <param name="action">The action to perform.</param> | ||
| 1871 | public CachePackageCompleteEventArgs(string packageId, int hrStatus, BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION recommendation, BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION action) | 1729 | public CachePackageCompleteEventArgs(string packageId, int hrStatus, BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION recommendation, BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION action) |
| 1872 | : base(hrStatus, recommendation, action) | 1730 | : base(hrStatus, recommendation, action) |
| 1873 | { | 1731 | { |
| @@ -1881,18 +1739,12 @@ namespace WixToolset.Mba.Core | |||
| 1881 | } | 1739 | } |
| 1882 | 1740 | ||
| 1883 | /// <summary> | 1741 | /// <summary> |
| 1884 | /// Additional arguments passed by the engine while executing on payload. | 1742 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.ExecuteProgress"/> |
| 1885 | /// </summary> | 1743 | /// </summary> |
| 1886 | [Serializable] | 1744 | [Serializable] |
| 1887 | public class ExecuteProgressEventArgs : CancellableHResultEventArgs | 1745 | public class ExecuteProgressEventArgs : CancellableHResultEventArgs |
| 1888 | { | 1746 | { |
| 1889 | /// <summary> | 1747 | /// <summary /> |
| 1890 | /// Creates a new instance of the <see cref="ExecuteProgressEventArgs"/> class. | ||
| 1891 | /// </summary> | ||
| 1892 | /// <param name="packageId">The identifier of the package being executed.</param> | ||
| 1893 | /// <param name="progressPercentage">The percentage from 0 to 100 of the execution progress for a single payload.</param> | ||
| 1894 | /// <param name="overallPercentage">The percentage from 0 to 100 of the execution progress for all payload.</param> | ||
| 1895 | /// <param name="cancelRecommendation">The recommendation from the engine.</param> | ||
| 1896 | public ExecuteProgressEventArgs(string packageId, int progressPercentage, int overallPercentage, bool cancelRecommendation) | 1748 | public ExecuteProgressEventArgs(string packageId, int progressPercentage, int overallPercentage, bool cancelRecommendation) |
| 1897 | : base(cancelRecommendation) | 1749 | : base(cancelRecommendation) |
| 1898 | { | 1750 | { |
| @@ -2187,4 +2039,130 @@ namespace WixToolset.Mba.Core | |||
| 2187 | { | 2039 | { |
| 2188 | } | 2040 | } |
| 2189 | } | 2041 | } |
| 2042 | |||
| 2043 | /// <summary> | ||
| 2044 | /// EventArgs for <see cref="IDefaultBootstrapperApplication.CacheContainerOrPayloadVerifyBegin"/>. | ||
| 2045 | /// </summary> | ||
| 2046 | [Serializable] | ||
| 2047 | public class CacheContainerOrPayloadVerifyBeginEventArgs : CancellableHResultEventArgs | ||
| 2048 | { | ||
| 2049 | /// <summary /> | ||
| 2050 | public CacheContainerOrPayloadVerifyBeginEventArgs(string packageOrContainerId, string payloadId, bool cancelRecommendation) | ||
| 2051 | : base(cancelRecommendation) | ||
| 2052 | { | ||
| 2053 | this.PackageOrContainerId = packageOrContainerId; | ||
| 2054 | this.PayloadId = payloadId; | ||
| 2055 | } | ||
| 2056 | |||
| 2057 | /// <summary> | ||
| 2058 | /// Gets the identifier of the container or package. | ||
| 2059 | /// </summary> | ||
| 2060 | public string PackageOrContainerId { get; private set; } | ||
| 2061 | |||
| 2062 | /// <summary> | ||
| 2063 | /// Gets the identifier of the payload. | ||
| 2064 | /// </summary> | ||
| 2065 | public string PayloadId { get; private set; } | ||
| 2066 | } | ||
| 2067 | |||
| 2068 | /// <summary> | ||
| 2069 | /// EventArgs for <see cref="IDefaultBootstrapperApplication.CacheContainerOrPayloadVerifyProgress"/>. | ||
| 2070 | /// </summary> | ||
| 2071 | [Serializable] | ||
| 2072 | public class CacheContainerOrPayloadVerifyProgressEventArgs : CacheProgressBaseEventArgs | ||
| 2073 | { | ||
| 2074 | /// <summary /> | ||
| 2075 | public CacheContainerOrPayloadVerifyProgressEventArgs(string packageOrContainerId, string payloadId, long progress, long total, int overallPercentage, bool cancelRecommendation) | ||
| 2076 | : base(packageOrContainerId, payloadId, progress, total, overallPercentage, cancelRecommendation) | ||
| 2077 | { | ||
| 2078 | } | ||
| 2079 | } | ||
| 2080 | |||
| 2081 | /// <summary> | ||
| 2082 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.CacheContainerOrPayloadVerifyComplete"/> | ||
| 2083 | /// </summary> | ||
| 2084 | [Serializable] | ||
| 2085 | public class CacheContainerOrPayloadVerifyCompleteEventArgs : StatusEventArgs | ||
| 2086 | { | ||
| 2087 | /// <summary /> | ||
| 2088 | public CacheContainerOrPayloadVerifyCompleteEventArgs(string packageOrContainerId, string payloadId, int hrStatus) | ||
| 2089 | : base(hrStatus) | ||
| 2090 | { | ||
| 2091 | this.PackageOrContainerId = packageOrContainerId; | ||
| 2092 | this.PayloadId = payloadId; | ||
| 2093 | } | ||
| 2094 | |||
| 2095 | /// <summary> | ||
| 2096 | /// Gets the identifier of the container or package. | ||
| 2097 | /// </summary> | ||
| 2098 | public string PackageOrContainerId { get; private set; } | ||
| 2099 | |||
| 2100 | /// <summary> | ||
| 2101 | /// Gets the identifier of the payload. | ||
| 2102 | /// </summary> | ||
| 2103 | public string PayloadId { get; private set; } | ||
| 2104 | } | ||
| 2105 | |||
| 2106 | /// <summary> | ||
| 2107 | /// EventArgs for <see cref="IDefaultBootstrapperApplication.CachePayloadExtractBegin"/>. | ||
| 2108 | /// </summary> | ||
| 2109 | [Serializable] | ||
| 2110 | public class CachePayloadExtractBeginEventArgs : CancellableHResultEventArgs | ||
| 2111 | { | ||
| 2112 | /// <summary /> | ||
| 2113 | public CachePayloadExtractBeginEventArgs(string containerId, string payloadId, bool cancelRecommendation) | ||
| 2114 | : base(cancelRecommendation) | ||
| 2115 | { | ||
| 2116 | this.ContainerId = containerId; | ||
| 2117 | this.PayloadId = payloadId; | ||
| 2118 | } | ||
| 2119 | |||
| 2120 | /// <summary> | ||
| 2121 | /// Gets the identifier of the container. | ||
| 2122 | /// </summary> | ||
| 2123 | public string ContainerId { get; private set; } | ||
| 2124 | |||
| 2125 | /// <summary> | ||
| 2126 | /// Gets the identifier of the payload. | ||
| 2127 | /// </summary> | ||
| 2128 | public string PayloadId { get; private set; } | ||
| 2129 | } | ||
| 2130 | |||
| 2131 | /// <summary> | ||
| 2132 | /// EventArgs for <see cref="IDefaultBootstrapperApplication.CachePayloadExtractProgress"/>. | ||
| 2133 | /// </summary> | ||
| 2134 | [Serializable] | ||
| 2135 | public class CachePayloadExtractProgressEventArgs : CacheProgressBaseEventArgs | ||
| 2136 | { | ||
| 2137 | /// <summary /> | ||
| 2138 | public CachePayloadExtractProgressEventArgs(string containerId, string payloadId, long progress, long total, int overallPercentage, bool cancelRecommendation) | ||
| 2139 | : base(containerId, payloadId, progress, total, overallPercentage, cancelRecommendation) | ||
| 2140 | { | ||
| 2141 | } | ||
| 2142 | } | ||
| 2143 | |||
| 2144 | /// <summary> | ||
| 2145 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.CachePayloadExtractComplete"/> | ||
| 2146 | /// </summary> | ||
| 2147 | [Serializable] | ||
| 2148 | public class CachePayloadExtractCompleteEventArgs : StatusEventArgs | ||
| 2149 | { | ||
| 2150 | /// <summary /> | ||
| 2151 | public CachePayloadExtractCompleteEventArgs(string containerId, string payloadId, int hrStatus) | ||
| 2152 | : base(hrStatus) | ||
| 2153 | { | ||
| 2154 | this.ContainerId = containerId; | ||
| 2155 | this.PayloadId = payloadId; | ||
| 2156 | } | ||
| 2157 | |||
| 2158 | /// <summary> | ||
| 2159 | /// Gets the identifier of the container. | ||
| 2160 | /// </summary> | ||
| 2161 | public string ContainerId { get; private set; } | ||
| 2162 | |||
| 2163 | /// <summary> | ||
| 2164 | /// Gets the identifier of the payload. | ||
| 2165 | /// </summary> | ||
| 2166 | public string PayloadId { get; private set; } | ||
| 2167 | } | ||
| 2190 | } | 2168 | } |
diff --git a/src/WixToolset.Mba.Core/IBootstrapperApplication.cs b/src/WixToolset.Mba.Core/IBootstrapperApplication.cs index 88c65674..2195fd4b 100644 --- a/src/WixToolset.Mba.Core/IBootstrapperApplication.cs +++ b/src/WixToolset.Mba.Core/IBootstrapperApplication.cs | |||
| @@ -3,7 +3,6 @@ | |||
| 3 | namespace WixToolset.Mba.Core | 3 | namespace WixToolset.Mba.Core |
| 4 | { | 4 | { |
| 5 | using System; | 5 | using System; |
| 6 | using System.CodeDom.Compiler; | ||
| 7 | using System.Runtime.InteropServices; | 6 | using System.Runtime.InteropServices; |
| 8 | 7 | ||
| 9 | /// <summary> | 8 | /// <summary> |
| @@ -15,6 +14,29 @@ namespace WixToolset.Mba.Core | |||
| 15 | public interface IBootstrapperApplication | 14 | public interface IBootstrapperApplication |
| 16 | { | 15 | { |
| 17 | /// <summary> | 16 | /// <summary> |
| 17 | /// Low level method that is called directly from the engine. | ||
| 18 | /// </summary> | ||
| 19 | [PreserveSig] | ||
| 20 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 21 | int BAProc( | ||
| 22 | int message, | ||
| 23 | IntPtr pvArgs, | ||
| 24 | IntPtr pvResults, | ||
| 25 | IntPtr pvContext | ||
| 26 | ); | ||
| 27 | |||
| 28 | /// <summary> | ||
| 29 | /// Low level method that is called directly from the engine. | ||
| 30 | /// </summary> | ||
| 31 | void BAProcFallback( | ||
| 32 | int message, | ||
| 33 | IntPtr pvArgs, | ||
| 34 | IntPtr pvResults, | ||
| 35 | ref int phr, | ||
| 36 | IntPtr pvContext | ||
| 37 | ); | ||
| 38 | |||
| 39 | /// <summary> | ||
| 18 | /// See <see cref="IDefaultBootstrapperApplication.Startup"/>. | 40 | /// See <see cref="IDefaultBootstrapperApplication.Startup"/>. |
| 19 | /// </summary> | 41 | /// </summary> |
| 20 | [PreserveSig] | 42 | [PreserveSig] |
| @@ -600,31 +622,36 @@ namespace WixToolset.Mba.Core | |||
| 600 | /// <summary> | 622 | /// <summary> |
| 601 | /// See <see cref="IDefaultBootstrapperApplication.CacheVerifyBegin"/>. | 623 | /// See <see cref="IDefaultBootstrapperApplication.CacheVerifyBegin"/>. |
| 602 | /// </summary> | 624 | /// </summary> |
| 603 | /// <param name="wzPackageId"></param> | ||
| 604 | /// <param name="wzPayloadId"></param> | ||
| 605 | /// <param name="fCancel"></param> | ||
| 606 | /// <returns></returns> | ||
| 607 | [PreserveSig] | 625 | [PreserveSig] |
| 608 | [return: MarshalAs(UnmanagedType.I4)] | 626 | [return: MarshalAs(UnmanagedType.I4)] |
| 609 | int OnCacheVerifyBegin( | 627 | int OnCacheVerifyBegin( |
| 610 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | 628 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, |
| 611 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | 629 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, |
| 612 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | 630 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel |
| 613 | ); | 631 | ); |
| 614 | 632 | ||
| 615 | /// <summary> | 633 | /// <summary> |
| 634 | /// See <see cref="IDefaultBootstrapperApplication.CacheVerifyProgress"/>. | ||
| 635 | /// </summary> | ||
| 636 | [PreserveSig] | ||
| 637 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 638 | int OnCacheVerifyProgress( | ||
| 639 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
| 640 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
| 641 | [MarshalAs(UnmanagedType.U8)] long dw64Progress, | ||
| 642 | [MarshalAs(UnmanagedType.U8)] long dw64Total, | ||
| 643 | [MarshalAs(UnmanagedType.U4)] int dwOverallPercentage, | ||
| 644 | [MarshalAs(UnmanagedType.I4)] CacheVerifyStep verifyStep, | ||
| 645 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
| 646 | ); | ||
| 647 | |||
| 648 | /// <summary> | ||
| 616 | /// See <see cref="IDefaultBootstrapperApplication.CacheVerifyComplete"/>. | 649 | /// See <see cref="IDefaultBootstrapperApplication.CacheVerifyComplete"/>. |
| 617 | /// </summary> | 650 | /// </summary> |
| 618 | /// <param name="wzPackageId"></param> | ||
| 619 | /// <param name="wzPayloadId"></param> | ||
| 620 | /// <param name="hrStatus"></param> | ||
| 621 | /// <param name="recommendation"></param> | ||
| 622 | /// <param name="action"></param> | ||
| 623 | /// <returns></returns> | ||
| 624 | [PreserveSig] | 651 | [PreserveSig] |
| 625 | [return: MarshalAs(UnmanagedType.I4)] | 652 | [return: MarshalAs(UnmanagedType.I4)] |
| 626 | int OnCacheVerifyComplete( | 653 | int OnCacheVerifyComplete( |
| 627 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | 654 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, |
| 628 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | 655 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, |
| 629 | int hrStatus, | 656 | int hrStatus, |
| 630 | BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION recommendation, | 657 | BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION recommendation, |
| @@ -1006,36 +1033,75 @@ namespace WixToolset.Mba.Core | |||
| 1006 | ); | 1033 | ); |
| 1007 | 1034 | ||
| 1008 | /// <summary> | 1035 | /// <summary> |
| 1009 | /// Low level method that is called directly from the engine. | 1036 | /// See <see cref="IDefaultBootstrapperApplication.CacheContainerOrPayloadVerifyBegin"/>. |
| 1010 | /// </summary> | 1037 | /// </summary> |
| 1011 | /// <param name="message"></param> | ||
| 1012 | /// <param name="pvArgs"></param> | ||
| 1013 | /// <param name="pvResults"></param> | ||
| 1014 | /// <param name="pvContext"></param> | ||
| 1015 | /// <returns></returns> | ||
| 1016 | [PreserveSig] | 1038 | [PreserveSig] |
| 1017 | [return: MarshalAs(UnmanagedType.I4)] | 1039 | [return: MarshalAs(UnmanagedType.I4)] |
| 1018 | int BAProc( | 1040 | int OnCacheContainerOrPayloadVerifyBegin( |
| 1019 | int message, | 1041 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, |
| 1020 | IntPtr pvArgs, | 1042 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, |
| 1021 | IntPtr pvResults, | 1043 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel |
| 1022 | IntPtr pvContext | ||
| 1023 | ); | 1044 | ); |
| 1024 | 1045 | ||
| 1025 | /// <summary> | 1046 | /// <summary> |
| 1026 | /// Low level method that is called directly from the engine. | 1047 | /// See <see cref="IDefaultBootstrapperApplication.CacheContainerOrPayloadVerifyProgress"/>. |
| 1027 | /// </summary> | 1048 | /// </summary> |
| 1028 | /// <param name="message"></param> | 1049 | [PreserveSig] |
| 1029 | /// <param name="pvArgs"></param> | 1050 | [return: MarshalAs(UnmanagedType.I4)] |
| 1030 | /// <param name="pvResults"></param> | 1051 | int OnCacheContainerOrPayloadVerifyProgress( |
| 1031 | /// <param name="phr"></param> | 1052 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, |
| 1032 | /// <param name="pvContext"></param> | 1053 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, |
| 1033 | void BAProcFallback( | 1054 | [MarshalAs(UnmanagedType.U8)] long dw64Progress, |
| 1034 | int message, | 1055 | [MarshalAs(UnmanagedType.U8)] long dw64Total, |
| 1035 | IntPtr pvArgs, | 1056 | [MarshalAs(UnmanagedType.U4)] int dwOverallPercentage, |
| 1036 | IntPtr pvResults, | 1057 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel |
| 1037 | ref int phr, | 1058 | ); |
| 1038 | IntPtr pvContext | 1059 | |
| 1060 | /// <summary> | ||
| 1061 | /// See <see cref="IDefaultBootstrapperApplication.CacheContainerOrPayloadVerifyComplete"/>. | ||
| 1062 | /// </summary> | ||
| 1063 | [PreserveSig] | ||
| 1064 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 1065 | int OnCacheContainerOrPayloadVerifyComplete( | ||
| 1066 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
| 1067 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
| 1068 | int hrStatus | ||
| 1069 | ); | ||
| 1070 | |||
| 1071 | /// <summary> | ||
| 1072 | /// See <see cref="IDefaultBootstrapperApplication.CachePayloadExtractBegin"/>. | ||
| 1073 | /// </summary> | ||
| 1074 | [PreserveSig] | ||
| 1075 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 1076 | int OnCachePayloadExtractBegin( | ||
| 1077 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
| 1078 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
| 1079 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
| 1080 | ); | ||
| 1081 | |||
| 1082 | /// <summary> | ||
| 1083 | /// See <see cref="IDefaultBootstrapperApplication.CachePayloadExtractProgress"/>. | ||
| 1084 | /// </summary> | ||
| 1085 | [PreserveSig] | ||
| 1086 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 1087 | int OnCachePayloadExtractProgress( | ||
| 1088 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
| 1089 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
| 1090 | [MarshalAs(UnmanagedType.U8)] long dw64Progress, | ||
| 1091 | [MarshalAs(UnmanagedType.U8)] long dw64Total, | ||
| 1092 | [MarshalAs(UnmanagedType.U4)] int dwOverallPercentage, | ||
| 1093 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
| 1094 | ); | ||
| 1095 | |||
| 1096 | /// <summary> | ||
| 1097 | /// See <see cref="IDefaultBootstrapperApplication.CachePayloadExtractComplete"/>. | ||
| 1098 | /// </summary> | ||
| 1099 | [PreserveSig] | ||
| 1100 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 1101 | int OnCachePayloadExtractComplete( | ||
| 1102 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
| 1103 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
| 1104 | int hrStatus | ||
| 1039 | ); | 1105 | ); |
| 1040 | } | 1106 | } |
| 1041 | 1107 | ||
| @@ -1449,6 +1515,26 @@ namespace WixToolset.Mba.Core | |||
| 1449 | } | 1515 | } |
| 1450 | 1516 | ||
| 1451 | /// <summary> | 1517 | /// <summary> |
| 1518 | /// The current step when verifying a container or payload. | ||
| 1519 | /// </summary> | ||
| 1520 | public enum CacheVerifyStep | ||
| 1521 | { | ||
| 1522 | /// <summary> | ||
| 1523 | /// Copying or moving the file from the working path to the unverified path. | ||
| 1524 | /// Not used during Layout. | ||
| 1525 | /// </summary> | ||
| 1526 | Stage, | ||
| 1527 | /// <summary> | ||
| 1528 | /// Hashing the file. | ||
| 1529 | /// </summary> | ||
| 1530 | Hash, | ||
| 1531 | /// <summary> | ||
| 1532 | /// Copying or moving the file to the final location. | ||
| 1533 | /// </summary> | ||
| 1534 | Finalize, | ||
| 1535 | } | ||
| 1536 | |||
| 1537 | /// <summary> | ||
| 1452 | /// The restart state after a package or all packages were applied. | 1538 | /// The restart state after a package or all packages were applied. |
| 1453 | /// </summary> | 1539 | /// </summary> |
| 1454 | public enum ApplyRestart | 1540 | public enum ApplyRestart |
| @@ -1566,7 +1652,7 @@ namespace WixToolset.Mba.Core | |||
| 1566 | None, | 1652 | None, |
| 1567 | 1653 | ||
| 1568 | /// <summary> | 1654 | /// <summary> |
| 1569 | /// Instructs the engine to try the acquisition of the package again. | 1655 | /// Instructs the engine to try the acquisition of the payload again. |
| 1570 | /// Ignored if hrStatus is a success. | 1656 | /// Ignored if hrStatus is a success. |
| 1571 | /// </summary> | 1657 | /// </summary> |
| 1572 | Retry, | 1658 | Retry, |
diff --git a/src/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs b/src/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs index 03f94d37..a295f6c0 100644 --- a/src/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs +++ b/src/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs | |||
| @@ -44,7 +44,7 @@ namespace WixToolset.Mba.Core | |||
| 44 | event EventHandler<CacheAcquireCompleteEventArgs> CacheAcquireComplete; | 44 | event EventHandler<CacheAcquireCompleteEventArgs> CacheAcquireComplete; |
| 45 | 45 | ||
| 46 | /// <summary> | 46 | /// <summary> |
| 47 | /// Fired when the engine has progress acquiring the installation sources. | 47 | /// Fired when the engine has progress acquiring the payload or container. |
| 48 | /// </summary> | 48 | /// </summary> |
| 49 | event EventHandler<CacheAcquireProgressEventArgs> CacheAcquireProgress; | 49 | event EventHandler<CacheAcquireProgressEventArgs> CacheAcquireProgress; |
| 50 | 50 | ||
| @@ -64,6 +64,21 @@ namespace WixToolset.Mba.Core | |||
| 64 | event EventHandler<CacheCompleteEventArgs> CacheComplete; | 64 | event EventHandler<CacheCompleteEventArgs> CacheComplete; |
| 65 | 65 | ||
| 66 | /// <summary> | 66 | /// <summary> |
| 67 | /// Fired when the engine begins the verification of the payload or container that was already in the package cache. | ||
| 68 | /// </summary> | ||
| 69 | event EventHandler<CacheContainerOrPayloadVerifyBeginEventArgs> CacheContainerOrPayloadVerifyBegin; | ||
| 70 | |||
| 71 | /// <summary> | ||
| 72 | /// Fired when the engine has completed the verification of the payload or container that was already in the package cache. | ||
| 73 | /// </summary> | ||
| 74 | event EventHandler<CacheContainerOrPayloadVerifyCompleteEventArgs> CacheContainerOrPayloadVerifyComplete; | ||
| 75 | |||
| 76 | /// <summary> | ||
| 77 | /// Fired when the engine has progress verifying the payload or container that was already in the package cache. | ||
| 78 | /// </summary> | ||
| 79 | event EventHandler<CacheContainerOrPayloadVerifyProgressEventArgs> CacheContainerOrPayloadVerifyProgress; | ||
| 80 | |||
| 81 | /// <summary> | ||
| 67 | /// Fired when the engine has begun caching a specific package. | 82 | /// Fired when the engine has begun caching a specific package. |
| 68 | /// </summary> | 83 | /// </summary> |
| 69 | event EventHandler<CachePackageBeginEventArgs> CachePackageBegin; | 84 | event EventHandler<CachePackageBeginEventArgs> CachePackageBegin; |
| @@ -74,16 +89,36 @@ namespace WixToolset.Mba.Core | |||
| 74 | event EventHandler<CachePackageCompleteEventArgs> CachePackageComplete; | 89 | event EventHandler<CachePackageCompleteEventArgs> CachePackageComplete; |
| 75 | 90 | ||
| 76 | /// <summary> | 91 | /// <summary> |
| 77 | /// Fired when the engine begins the verification of the acquired installation sources. | 92 | /// Fired when the engine begins the extraction of the payload from the container. |
| 93 | /// </summary> | ||
| 94 | event EventHandler<CachePayloadExtractBeginEventArgs> CachePayloadExtractBegin; | ||
| 95 | |||
| 96 | /// <summary> | ||
| 97 | /// Fired when the engine has completed the extraction of the payload from the container. | ||
| 98 | /// </summary> | ||
| 99 | event EventHandler<CachePayloadExtractCompleteEventArgs> CachePayloadExtractComplete; | ||
| 100 | |||
| 101 | /// <summary> | ||
| 102 | /// Fired when the engine has progress extracting the payload from the container. | ||
| 103 | /// </summary> | ||
| 104 | event EventHandler<CachePayloadExtractProgressEventArgs> CachePayloadExtractProgress; | ||
| 105 | |||
| 106 | /// <summary> | ||
| 107 | /// Fired when the engine begins the verification of the acquired payload or container. | ||
| 78 | /// </summary> | 108 | /// </summary> |
| 79 | event EventHandler<CacheVerifyBeginEventArgs> CacheVerifyBegin; | 109 | event EventHandler<CacheVerifyBeginEventArgs> CacheVerifyBegin; |
| 80 | 110 | ||
| 81 | /// <summary> | 111 | /// <summary> |
| 82 | /// Fired when the engine complete the verification of the acquired installation sources. | 112 | /// Fired when the engine has completed the verification of the acquired payload or container. |
| 83 | /// </summary> | 113 | /// </summary> |
| 84 | event EventHandler<CacheVerifyCompleteEventArgs> CacheVerifyComplete; | 114 | event EventHandler<CacheVerifyCompleteEventArgs> CacheVerifyComplete; |
| 85 | 115 | ||
| 86 | /// <summary> | 116 | /// <summary> |
| 117 | /// Fired when the engine has progress verifying the payload or container. | ||
| 118 | /// </summary> | ||
| 119 | event EventHandler<CacheVerifyProgressEventArgs> CacheVerifyProgress; | ||
| 120 | |||
| 121 | /// <summary> | ||
| 87 | /// Fired when the engine is about to commit an MSI transaction. | 122 | /// Fired when the engine is about to commit an MSI transaction. |
| 88 | /// </summary> | 123 | /// </summary> |
| 89 | event EventHandler<CommitMsiTransactionBeginEventArgs> CommitMsiTransactionBegin; | 124 | event EventHandler<CommitMsiTransactionBeginEventArgs> CommitMsiTransactionBegin; |
| @@ -179,7 +214,7 @@ namespace WixToolset.Mba.Core | |||
| 179 | event EventHandler<ExecuteCompleteEventArgs> ExecuteComplete; | 214 | event EventHandler<ExecuteCompleteEventArgs> ExecuteComplete; |
| 180 | 215 | ||
| 181 | /// <summary> | 216 | /// <summary> |
| 182 | /// Fired when Windows Installer sends a files in use installation message. | 217 | /// Fired when a package sends a files in use installation message. |
| 183 | /// </summary> | 218 | /// </summary> |
| 184 | event EventHandler<ExecuteFilesInUseEventArgs> ExecuteFilesInUse; | 219 | event EventHandler<ExecuteFilesInUseEventArgs> ExecuteFilesInUse; |
| 185 | 220 | ||
| @@ -204,7 +239,7 @@ namespace WixToolset.Mba.Core | |||
| 204 | event EventHandler<ExecutePatchTargetEventArgs> ExecutePatchTarget; | 239 | event EventHandler<ExecutePatchTargetEventArgs> ExecutePatchTarget; |
| 205 | 240 | ||
| 206 | /// <summary> | 241 | /// <summary> |
| 207 | /// Fired by the engine while executing on payload. | 242 | /// Fired by the engine while executing a package. |
| 208 | /// </summary> | 243 | /// </summary> |
| 209 | event EventHandler<ExecuteProgressEventArgs> ExecuteProgress; | 244 | event EventHandler<ExecuteProgressEventArgs> ExecuteProgress; |
| 210 | 245 | ||
diff --git a/src/balutil/inc/BAFunctions.h b/src/balutil/inc/BAFunctions.h index 07f7a750..2970478f 100644 --- a/src/balutil/inc/BAFunctions.h +++ b/src/balutil/inc/BAFunctions.h | |||
| @@ -74,6 +74,13 @@ enum BA_FUNCTIONS_MESSAGE | |||
| 74 | BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE, | 74 | BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE, |
| 75 | BA_FUNCTIONS_MESSAGE_ONPLANNEDPACKAGE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANNEDPACKAGE, | 75 | BA_FUNCTIONS_MESSAGE_ONPLANNEDPACKAGE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANNEDPACKAGE, |
| 76 | BA_FUNCTIONS_MESSAGE_ONPLANFORWARDCOMPATIBLEBUNDLE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANFORWARDCOMPATIBLEBUNDLE, | 76 | BA_FUNCTIONS_MESSAGE_ONPLANFORWARDCOMPATIBLEBUNDLE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANFORWARDCOMPATIBLEBUNDLE, |
| 77 | BA_FUNCTIONS_MESSAGE_ONCACHEVERIFYPROGRESS = BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEVERIFYPROGRESS, | ||
| 78 | BA_FUNCTIONS_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYBEGIN, | ||
| 79 | BA_FUNCTIONS_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE, | ||
| 80 | BA_FUNCTIONS_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS = BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS, | ||
| 81 | BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTBEGIN, | ||
| 82 | BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTCOMPLETE, | ||
| 83 | BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS = BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS, | ||
| 77 | 84 | ||
| 78 | BA_FUNCTIONS_MESSAGE_ONTHEMELOADED = 1024, | 85 | BA_FUNCTIONS_MESSAGE_ONTHEMELOADED = 1024, |
| 79 | BA_FUNCTIONS_MESSAGE_WNDPROC, | 86 | BA_FUNCTIONS_MESSAGE_WNDPROC, |
diff --git a/src/balutil/inc/BalBaseBAFunctions.h b/src/balutil/inc/BalBaseBAFunctions.h index ca727f49..054bfb26 100644 --- a/src/balutil/inc/BalBaseBAFunctions.h +++ b/src/balutil/inc/BalBaseBAFunctions.h | |||
| @@ -69,6 +69,26 @@ public: // IUnknown | |||
| 69 | } | 69 | } |
| 70 | 70 | ||
| 71 | public: // IBootstrapperApplication | 71 | public: // IBootstrapperApplication |
| 72 | virtual STDMETHODIMP_(HRESULT) BAProc( | ||
| 73 | __in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/, | ||
| 74 | __in const LPVOID /*pvArgs*/, | ||
| 75 | __inout LPVOID /*pvResults*/, | ||
| 76 | __in_opt LPVOID /*pvContext*/ | ||
| 77 | ) | ||
| 78 | { | ||
| 79 | return E_NOTIMPL; | ||
| 80 | } | ||
| 81 | |||
| 82 | virtual STDMETHODIMP_(void) BAProcFallback( | ||
| 83 | __in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/, | ||
| 84 | __in const LPVOID /*pvArgs*/, | ||
| 85 | __inout LPVOID /*pvResults*/, | ||
| 86 | __inout HRESULT* /*phr*/, | ||
| 87 | __in_opt LPVOID /*pvContext*/ | ||
| 88 | ) | ||
| 89 | { | ||
| 90 | } | ||
| 91 | |||
| 72 | virtual STDMETHODIMP OnStartup() | 92 | virtual STDMETHODIMP OnStartup() |
| 73 | { | 93 | { |
| 74 | return S_OK; | 94 | return S_OK; |
| @@ -439,7 +459,7 @@ public: // IBootstrapperApplication | |||
| 439 | } | 459 | } |
| 440 | 460 | ||
| 441 | virtual STDMETHODIMP OnCacheVerifyBegin( | 461 | virtual STDMETHODIMP OnCacheVerifyBegin( |
| 442 | __in_z LPCWSTR /*wzPackageId*/, | 462 | __in_z LPCWSTR /*wzPackageOrContainerId*/, |
| 443 | __in_z LPCWSTR /*wzPayloadId*/, | 463 | __in_z LPCWSTR /*wzPayloadId*/, |
| 444 | __inout BOOL* /*pfCancel*/ | 464 | __inout BOOL* /*pfCancel*/ |
| 445 | ) | 465 | ) |
| @@ -447,8 +467,21 @@ public: // IBootstrapperApplication | |||
| 447 | return S_OK; | 467 | return S_OK; |
| 448 | } | 468 | } |
| 449 | 469 | ||
| 470 | virtual STDMETHODIMP OnCacheVerifyProgress( | ||
| 471 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 472 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 473 | __in DWORD64 /*dw64Progress*/, | ||
| 474 | __in DWORD64 /*dw64Total*/, | ||
| 475 | __in DWORD /*dwOverallPercentage*/, | ||
| 476 | __in BOOTSTRAPPER_CACHE_VERIFY_STEP /*verifyStep*/, | ||
| 477 | __inout BOOL* /*pfCancel*/ | ||
| 478 | ) | ||
| 479 | { | ||
| 480 | return S_OK; | ||
| 481 | } | ||
| 482 | |||
| 450 | virtual STDMETHODIMP OnCacheVerifyComplete( | 483 | virtual STDMETHODIMP OnCacheVerifyComplete( |
| 451 | __in_z LPCWSTR /*wzPackageId*/, | 484 | __in_z LPCWSTR /*wzPackageOrContainerId*/, |
| 452 | __in_z LPCWSTR /*wzPayloadId*/, | 485 | __in_z LPCWSTR /*wzPayloadId*/, |
| 453 | __in HRESULT /*hrStatus*/, | 486 | __in HRESULT /*hrStatus*/, |
| 454 | __in BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION /*recommendation*/, | 487 | __in BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION /*recommendation*/, |
| @@ -684,24 +717,64 @@ public: // IBootstrapperApplication | |||
| 684 | return S_OK; | 717 | return S_OK; |
| 685 | } | 718 | } |
| 686 | 719 | ||
| 687 | virtual STDMETHODIMP_(HRESULT) BAProc( | 720 | virtual STDMETHODIMP OnCacheContainerOrPayloadVerifyBegin( |
| 688 | __in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/, | 721 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, |
| 689 | __in const LPVOID /*pvArgs*/, | 722 | __in_z_opt LPCWSTR /*wzPayloadId*/, |
| 690 | __inout LPVOID /*pvResults*/, | 723 | __inout BOOL* /*pfCancel*/ |
| 691 | __in_opt LPVOID /*pvContext*/ | ||
| 692 | ) | 724 | ) |
| 693 | { | 725 | { |
| 694 | return E_NOTIMPL; | 726 | return S_OK; |
| 695 | } | 727 | } |
| 696 | 728 | ||
| 697 | virtual STDMETHODIMP_(void) BAProcFallback( | 729 | virtual STDMETHODIMP OnCacheContainerOrPayloadVerifyProgress( |
| 698 | __in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/, | 730 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, |
| 699 | __in const LPVOID /*pvArgs*/, | 731 | __in_z_opt LPCWSTR /*wzPayloadId*/, |
| 700 | __inout LPVOID /*pvResults*/, | 732 | __in DWORD64 /*dw64Progress*/, |
| 701 | __inout HRESULT* /*phr*/, | 733 | __in DWORD64 /*dw64Total*/, |
| 702 | __in_opt LPVOID /*pvContext*/ | 734 | __in DWORD /*dwOverallPercentage*/, |
| 735 | __inout BOOL* /*pfCancel*/ | ||
| 736 | ) | ||
| 737 | { | ||
| 738 | return S_OK; | ||
| 739 | } | ||
| 740 | |||
| 741 | virtual STDMETHODIMP OnCacheContainerOrPayloadVerifyComplete( | ||
| 742 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 743 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 744 | __in HRESULT /*hrStatus*/ | ||
| 745 | ) | ||
| 746 | { | ||
| 747 | return S_OK; | ||
| 748 | } | ||
| 749 | |||
| 750 | virtual STDMETHODIMP OnCachePayloadExtractBegin( | ||
| 751 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 752 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 753 | __inout BOOL* /*pfCancel*/ | ||
| 703 | ) | 754 | ) |
| 704 | { | 755 | { |
| 756 | return S_OK; | ||
| 757 | } | ||
| 758 | |||
| 759 | virtual STDMETHODIMP OnCachePayloadExtractProgress( | ||
| 760 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 761 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 762 | __in DWORD64 /*dw64Progress*/, | ||
| 763 | __in DWORD64 /*dw64Total*/, | ||
| 764 | __in DWORD /*dwOverallPercentage*/, | ||
| 765 | __inout BOOL* /*pfCancel*/ | ||
| 766 | ) | ||
| 767 | { | ||
| 768 | return S_OK; | ||
| 769 | } | ||
| 770 | |||
| 771 | virtual STDMETHODIMP OnCachePayloadExtractComplete( | ||
| 772 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 773 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 774 | __in HRESULT /*hrStatus*/ | ||
| 775 | ) | ||
| 776 | { | ||
| 777 | return S_OK; | ||
| 705 | } | 778 | } |
| 706 | 779 | ||
| 707 | public: // IBAFunctions | 780 | public: // IBAFunctions |
diff --git a/src/balutil/inc/BalBaseBootstrapperApplication.h b/src/balutil/inc/BalBaseBootstrapperApplication.h index 3d3e4ffa..812025eb 100644 --- a/src/balutil/inc/BalBaseBootstrapperApplication.h +++ b/src/balutil/inc/BalBaseBootstrapperApplication.h | |||
| @@ -61,6 +61,26 @@ public: // IUnknown | |||
| 61 | } | 61 | } |
| 62 | 62 | ||
| 63 | public: // IBootstrapperApplication | 63 | public: // IBootstrapperApplication |
| 64 | virtual STDMETHODIMP_(HRESULT) BAProc( | ||
| 65 | __in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/, | ||
| 66 | __in const LPVOID /*pvArgs*/, | ||
| 67 | __inout LPVOID /*pvResults*/, | ||
| 68 | __in_opt LPVOID /*pvContext*/ | ||
| 69 | ) | ||
| 70 | { | ||
| 71 | return E_NOTIMPL; | ||
| 72 | } | ||
| 73 | |||
| 74 | virtual STDMETHODIMP_(void) BAProcFallback( | ||
| 75 | __in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/, | ||
| 76 | __in const LPVOID /*pvArgs*/, | ||
| 77 | __inout LPVOID /*pvResults*/, | ||
| 78 | __inout HRESULT* /*phr*/, | ||
| 79 | __in_opt LPVOID /*pvContext*/ | ||
| 80 | ) | ||
| 81 | { | ||
| 82 | } | ||
| 83 | |||
| 64 | virtual STDMETHODIMP OnStartup() | 84 | virtual STDMETHODIMP OnStartup() |
| 65 | { | 85 | { |
| 66 | return S_OK; | 86 | return S_OK; |
| @@ -540,7 +560,7 @@ public: // IBootstrapperApplication | |||
| 540 | } | 560 | } |
| 541 | 561 | ||
| 542 | virtual STDMETHODIMP OnCacheVerifyBegin( | 562 | virtual STDMETHODIMP OnCacheVerifyBegin( |
| 543 | __in_z LPCWSTR /*wzPackageId*/, | 563 | __in_z LPCWSTR /*wzPackageOrContainerId*/, |
| 544 | __in_z LPCWSTR /*wzPayloadId*/, | 564 | __in_z LPCWSTR /*wzPayloadId*/, |
| 545 | __inout BOOL* pfCancel | 565 | __inout BOOL* pfCancel |
| 546 | ) | 566 | ) |
| @@ -549,8 +569,22 @@ public: // IBootstrapperApplication | |||
| 549 | return S_OK; | 569 | return S_OK; |
| 550 | } | 570 | } |
| 551 | 571 | ||
| 572 | virtual STDMETHODIMP OnCacheVerifyProgress( | ||
| 573 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 574 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 575 | __in DWORD64 /*dw64Progress*/, | ||
| 576 | __in DWORD64 /*dw64Total*/, | ||
| 577 | __in DWORD /*dwOverallPercentage*/, | ||
| 578 | __in BOOTSTRAPPER_CACHE_VERIFY_STEP /*verifyStep*/, | ||
| 579 | __inout BOOL* pfCancel | ||
| 580 | ) | ||
| 581 | { | ||
| 582 | *pfCancel |= CheckCanceled(); | ||
| 583 | return S_OK; | ||
| 584 | } | ||
| 585 | |||
| 552 | virtual STDMETHODIMP OnCacheVerifyComplete( | 586 | virtual STDMETHODIMP OnCacheVerifyComplete( |
| 553 | __in_z LPCWSTR /*wzPackageId*/, | 587 | __in_z LPCWSTR /*wzPackageOrContainerId*/, |
| 554 | __in_z LPCWSTR /*wzPayloadId*/, | 588 | __in_z LPCWSTR /*wzPayloadId*/, |
| 555 | __in HRESULT /*hrStatus*/, | 589 | __in HRESULT /*hrStatus*/, |
| 556 | __in BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION /*recommendation*/, | 590 | __in BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION /*recommendation*/, |
| @@ -870,24 +904,68 @@ public: // IBootstrapperApplication | |||
| 870 | return S_OK; | 904 | return S_OK; |
| 871 | } | 905 | } |
| 872 | 906 | ||
| 873 | virtual STDMETHODIMP_(HRESULT) BAProc( | 907 | virtual STDMETHODIMP OnCacheContainerOrPayloadVerifyBegin( |
| 874 | __in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/, | 908 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, |
| 875 | __in const LPVOID /*pvArgs*/, | 909 | __in_z_opt LPCWSTR /*wzPayloadId*/, |
| 876 | __inout LPVOID /*pvResults*/, | 910 | __inout BOOL* pfCancel |
| 877 | __in_opt LPVOID /*pvContext*/ | ||
| 878 | ) | 911 | ) |
| 879 | { | 912 | { |
| 880 | return E_NOTIMPL; | 913 | *pfCancel |= CheckCanceled(); |
| 914 | return S_OK; | ||
| 881 | } | 915 | } |
| 882 | 916 | ||
| 883 | virtual STDMETHODIMP_(void) BAProcFallback( | 917 | virtual STDMETHODIMP OnCacheContainerOrPayloadVerifyProgress( |
| 884 | __in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/, | 918 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, |
| 885 | __in const LPVOID /*pvArgs*/, | 919 | __in_z_opt LPCWSTR /*wzPayloadId*/, |
| 886 | __inout LPVOID /*pvResults*/, | 920 | __in DWORD64 /*dw64Progress*/, |
| 887 | __inout HRESULT* /*phr*/, | 921 | __in DWORD64 /*dw64Total*/, |
| 888 | __in_opt LPVOID /*pvContext*/ | 922 | __in DWORD /*dwOverallPercentage*/, |
| 923 | __inout BOOL* pfCancel | ||
| 889 | ) | 924 | ) |
| 890 | { | 925 | { |
| 926 | *pfCancel |= CheckCanceled(); | ||
| 927 | return S_OK; | ||
| 928 | } | ||
| 929 | |||
| 930 | virtual STDMETHODIMP OnCacheContainerOrPayloadVerifyComplete( | ||
| 931 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 932 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 933 | __in HRESULT /*hrStatus*/ | ||
| 934 | ) | ||
| 935 | { | ||
| 936 | return S_OK; | ||
| 937 | } | ||
| 938 | |||
| 939 | virtual STDMETHODIMP OnCachePayloadExtractBegin( | ||
| 940 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 941 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 942 | __inout BOOL* pfCancel | ||
| 943 | ) | ||
| 944 | { | ||
| 945 | *pfCancel |= CheckCanceled(); | ||
| 946 | return S_OK; | ||
| 947 | } | ||
| 948 | |||
| 949 | virtual STDMETHODIMP OnCachePayloadExtractProgress( | ||
| 950 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 951 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 952 | __in DWORD64 /*dw64Progress*/, | ||
| 953 | __in DWORD64 /*dw64Total*/, | ||
| 954 | __in DWORD /*dwOverallPercentage*/, | ||
| 955 | __inout BOOL* pfCancel | ||
| 956 | ) | ||
| 957 | { | ||
| 958 | *pfCancel |= CheckCanceled(); | ||
| 959 | return S_OK; | ||
| 960 | } | ||
| 961 | |||
| 962 | virtual STDMETHODIMP OnCachePayloadExtractComplete( | ||
| 963 | __in_z_opt LPCWSTR /*wzPackageOrContainerId*/, | ||
| 964 | __in_z_opt LPCWSTR /*wzPayloadId*/, | ||
| 965 | __in HRESULT /*hrStatus*/ | ||
| 966 | ) | ||
| 967 | { | ||
| 968 | return S_OK; | ||
| 891 | } | 969 | } |
| 892 | 970 | ||
| 893 | protected: | 971 | protected: |
diff --git a/src/balutil/inc/BalBaseBootstrapperApplicationProc.h b/src/balutil/inc/BalBaseBootstrapperApplicationProc.h index 42ffeb79..10769529 100644 --- a/src/balutil/inc/BalBaseBootstrapperApplicationProc.h +++ b/src/balutil/inc/BalBaseBootstrapperApplicationProc.h | |||
| @@ -342,6 +342,15 @@ static HRESULT BalBaseBAProcOnCacheVerifyBegin( | |||
| 342 | return pBA->OnCacheVerifyBegin(pArgs->wzPackageOrContainerId, pArgs->wzPayloadId, &pResults->fCancel); | 342 | return pBA->OnCacheVerifyBegin(pArgs->wzPackageOrContainerId, pArgs->wzPayloadId, &pResults->fCancel); |
| 343 | } | 343 | } |
| 344 | 344 | ||
| 345 | static HRESULT BalBaseBAProcOnCacheVerifyProgress( | ||
| 346 | __in IBootstrapperApplication* pBA, | ||
| 347 | __in BA_ONCACHEVERIFYPROGRESS_ARGS* pArgs, | ||
| 348 | __inout BA_ONCACHEVERIFYPROGRESS_RESULTS* pResults | ||
| 349 | ) | ||
| 350 | { | ||
| 351 | return pBA->OnCacheVerifyProgress(pArgs->wzPackageOrContainerId, pArgs->wzPayloadId, pArgs->dw64Progress, pArgs->dw64Total, pArgs->dwOverallPercentage, pArgs->verifyStep, &pResults->fCancel); | ||
| 352 | } | ||
| 353 | |||
| 345 | static HRESULT BalBaseBAProcOnCacheVerifyComplete( | 354 | static HRESULT BalBaseBAProcOnCacheVerifyComplete( |
| 346 | __in IBootstrapperApplication* pBA, | 355 | __in IBootstrapperApplication* pBA, |
| 347 | __in BA_ONCACHEVERIFYCOMPLETE_ARGS* pArgs, | 356 | __in BA_ONCACHEVERIFYCOMPLETE_ARGS* pArgs, |
| @@ -594,6 +603,60 @@ static HRESULT BalBaseBAProcOnPlanForwardCompatibleBundle( | |||
| 594 | return pBA->OnPlanForwardCompatibleBundle(pArgs->wzBundleId, pArgs->relationType, pArgs->wzBundleTag, pArgs->fPerMachine, pArgs->wzVersion, pArgs->fRecommendedIgnoreBundle, &pResults->fCancel, &pResults->fIgnoreBundle); | 603 | return pBA->OnPlanForwardCompatibleBundle(pArgs->wzBundleId, pArgs->relationType, pArgs->wzBundleTag, pArgs->fPerMachine, pArgs->wzVersion, pArgs->fRecommendedIgnoreBundle, &pResults->fCancel, &pResults->fIgnoreBundle); |
| 595 | } | 604 | } |
| 596 | 605 | ||
| 606 | static HRESULT BalBaseBAProcOnCacheContainerOrPayloadVerifyBegin( | ||
| 607 | __in IBootstrapperApplication* pBA, | ||
| 608 | __in BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_ARGS* pArgs, | ||
| 609 | __inout BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_RESULTS* pResults | ||
| 610 | ) | ||
| 611 | { | ||
| 612 | return pBA->OnCacheContainerOrPayloadVerifyBegin(pArgs->wzPackageOrContainerId, pArgs->wzPayloadId, &pResults->fCancel); | ||
| 613 | } | ||
| 614 | |||
| 615 | static HRESULT BalBaseBAProcOnCacheContainerOrPayloadVerifyProgress( | ||
| 616 | __in IBootstrapperApplication* pBA, | ||
| 617 | __in BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_ARGS* pArgs, | ||
| 618 | __inout BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_RESULTS* pResults | ||
| 619 | ) | ||
| 620 | { | ||
| 621 | return pBA->OnCacheContainerOrPayloadVerifyProgress(pArgs->wzPackageOrContainerId, pArgs->wzPayloadId, pArgs->dw64Progress, pArgs->dw64Total, pArgs->dwOverallPercentage, &pResults->fCancel); | ||
| 622 | } | ||
| 623 | |||
| 624 | static HRESULT BalBaseBAProcOnCacheContainerOrPayloadVerifyComplete( | ||
| 625 | __in IBootstrapperApplication* pBA, | ||
| 626 | __in BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_ARGS* pArgs, | ||
| 627 | __inout BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_RESULTS* /*pResults*/ | ||
| 628 | ) | ||
| 629 | { | ||
| 630 | return pBA->OnCacheContainerOrPayloadVerifyComplete(pArgs->wzPackageOrContainerId, pArgs->wzPayloadId, pArgs->hrStatus); | ||
| 631 | } | ||
| 632 | |||
| 633 | static HRESULT BalBaseBAProcOnCachePayloadExtractBegin( | ||
| 634 | __in IBootstrapperApplication* pBA, | ||
| 635 | __in BA_ONCACHEPAYLOADEXTRACTBEGIN_ARGS* pArgs, | ||
| 636 | __inout BA_ONCACHEPAYLOADEXTRACTBEGIN_RESULTS* pResults | ||
| 637 | ) | ||
| 638 | { | ||
| 639 | return pBA->OnCachePayloadExtractBegin(pArgs->wzContainerId, pArgs->wzPayloadId, &pResults->fCancel); | ||
| 640 | } | ||
| 641 | |||
| 642 | static HRESULT BalBaseBAProcOnCachePayloadExtractProgress( | ||
| 643 | __in IBootstrapperApplication* pBA, | ||
| 644 | __in BA_ONCACHEPAYLOADEXTRACTPROGRESS_ARGS* pArgs, | ||
| 645 | __inout BA_ONCACHEPAYLOADEXTRACTPROGRESS_RESULTS* pResults | ||
| 646 | ) | ||
| 647 | { | ||
| 648 | return pBA->OnCachePayloadExtractProgress(pArgs->wzContainerId, pArgs->wzPayloadId, pArgs->dw64Progress, pArgs->dw64Total, pArgs->dwOverallPercentage, &pResults->fCancel); | ||
| 649 | } | ||
| 650 | |||
| 651 | static HRESULT BalBaseBAProcOnCachePayloadExtractComplete( | ||
| 652 | __in IBootstrapperApplication* pBA, | ||
| 653 | __in BA_ONCACHEPAYLOADEXTRACTCOMPLETE_ARGS* pArgs, | ||
| 654 | __inout BA_ONCACHEPAYLOADEXTRACTCOMPLETE_RESULTS* /*pResults*/ | ||
| 655 | ) | ||
| 656 | { | ||
| 657 | return pBA->OnCachePayloadExtractComplete(pArgs->wzContainerId, pArgs->wzPayloadId, pArgs->hrStatus); | ||
| 658 | } | ||
| 659 | |||
| 597 | /******************************************************************* | 660 | /******************************************************************* |
| 598 | BalBaseBootstrapperApplicationProc - requires pvContext to be of type IBootstrapperApplication. | 661 | BalBaseBootstrapperApplicationProc - requires pvContext to be of type IBootstrapperApplication. |
| 599 | Provides a default mapping between the new message based BA interface and | 662 | Provides a default mapping between the new message based BA interface and |
| @@ -722,6 +785,9 @@ static HRESULT WINAPI BalBaseBootstrapperApplicationProc( | |||
| 722 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEVERIFYBEGIN: | 785 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEVERIFYBEGIN: |
| 723 | hr = BalBaseBAProcOnCacheVerifyBegin(pBA, reinterpret_cast<BA_ONCACHEVERIFYBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEVERIFYBEGIN_RESULTS*>(pvResults)); | 786 | hr = BalBaseBAProcOnCacheVerifyBegin(pBA, reinterpret_cast<BA_ONCACHEVERIFYBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEVERIFYBEGIN_RESULTS*>(pvResults)); |
| 724 | break; | 787 | break; |
| 788 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEVERIFYPROGRESS: | ||
| 789 | hr = BalBaseBAProcOnCacheVerifyProgress(pBA, reinterpret_cast<BA_ONCACHEVERIFYPROGRESS_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEVERIFYPROGRESS_RESULTS*>(pvResults)); | ||
| 790 | break; | ||
| 725 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEVERIFYCOMPLETE: | 791 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEVERIFYCOMPLETE: |
| 726 | hr = BalBaseBAProcOnCacheVerifyComplete(pBA, reinterpret_cast<BA_ONCACHEVERIFYCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEVERIFYCOMPLETE_RESULTS*>(pvResults)); | 792 | hr = BalBaseBAProcOnCacheVerifyComplete(pBA, reinterpret_cast<BA_ONCACHEVERIFYCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEVERIFYCOMPLETE_RESULTS*>(pvResults)); |
| 727 | break; | 793 | break; |
| @@ -808,6 +874,24 @@ static HRESULT WINAPI BalBaseBootstrapperApplicationProc( | |||
| 808 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANFORWARDCOMPATIBLEBUNDLE: | 874 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANFORWARDCOMPATIBLEBUNDLE: |
| 809 | hr = BalBaseBAProcOnPlanForwardCompatibleBundle(pBA, reinterpret_cast<BA_ONPLANFORWARDCOMPATIBLEBUNDLE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANFORWARDCOMPATIBLEBUNDLE_RESULTS*>(pvResults)); | 875 | hr = BalBaseBAProcOnPlanForwardCompatibleBundle(pBA, reinterpret_cast<BA_ONPLANFORWARDCOMPATIBLEBUNDLE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANFORWARDCOMPATIBLEBUNDLE_RESULTS*>(pvResults)); |
| 810 | break; | 876 | break; |
| 877 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYBEGIN: | ||
| 878 | hr = BalBaseBAProcOnCacheContainerOrPayloadVerifyBegin(pBA, reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_RESULTS*>(pvResults)); | ||
| 879 | break; | ||
| 880 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS: | ||
| 881 | hr = BalBaseBAProcOnCacheContainerOrPayloadVerifyProgress(pBA, reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_RESULTS*>(pvResults)); | ||
| 882 | break; | ||
| 883 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE: | ||
| 884 | hr = BalBaseBAProcOnCacheContainerOrPayloadVerifyComplete(pBA, reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_RESULTS*>(pvResults)); | ||
| 885 | break; | ||
| 886 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTBEGIN: | ||
| 887 | hr = BalBaseBAProcOnCachePayloadExtractBegin(pBA, reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTBEGIN_RESULTS*>(pvResults)); | ||
| 888 | break; | ||
| 889 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS: | ||
| 890 | hr = BalBaseBAProcOnCachePayloadExtractProgress(pBA, reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTPROGRESS_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTPROGRESS_RESULTS*>(pvResults)); | ||
| 891 | break; | ||
| 892 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTCOMPLETE: | ||
| 893 | hr = BalBaseBAProcOnCachePayloadExtractComplete(pBA, reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTCOMPLETE_RESULTS*>(pvResults)); | ||
| 894 | break; | ||
| 811 | } | 895 | } |
| 812 | } | 896 | } |
| 813 | 897 | ||
diff --git a/src/balutil/inc/IBootstrapperApplication.h b/src/balutil/inc/IBootstrapperApplication.h index 8fcdd318..7d6a7164 100644 --- a/src/balutil/inc/IBootstrapperApplication.h +++ b/src/balutil/inc/IBootstrapperApplication.h | |||
| @@ -4,6 +4,26 @@ | |||
| 4 | 4 | ||
| 5 | DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-AB06-099D717C67FE") | 5 | DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-AB06-099D717C67FE") |
| 6 | { | 6 | { |
| 7 | // BAProc - The PFN_BOOTSTRAPPER_APPLICATION_PROC can call this method to give the BA raw access to the callback from the engine. | ||
| 8 | // This might be used to help the BA support more than one version of the engine. | ||
| 9 | STDMETHOD(BAProc)( | ||
| 10 | __in BOOTSTRAPPER_APPLICATION_MESSAGE message, | ||
| 11 | __in const LPVOID pvArgs, | ||
| 12 | __inout LPVOID pvResults, | ||
| 13 | __in_opt LPVOID pvContext | ||
| 14 | ) = 0; | ||
| 15 | |||
| 16 | // BAProcFallback - The PFN_BOOTSTRAPPER_APPLICATION_PROC can call this method | ||
| 17 | // to give the BA the ability to use default behavior | ||
| 18 | // and then forward the message to extensions. | ||
| 19 | STDMETHOD_(void, BAProcFallback)( | ||
| 20 | __in BOOTSTRAPPER_APPLICATION_MESSAGE message, | ||
| 21 | __in const LPVOID pvArgs, | ||
| 22 | __inout LPVOID pvResults, | ||
| 23 | __inout HRESULT* phr, | ||
| 24 | __in_opt LPVOID pvContext | ||
| 25 | ) = 0; | ||
| 26 | |||
| 7 | // OnStartup - called when the engine is ready for the bootstrapper application to start. | 27 | // OnStartup - called when the engine is ready for the bootstrapper application to start. |
| 8 | // | 28 | // |
| 9 | STDMETHOD(OnStartup)() = 0; | 29 | STDMETHOD(OnStartup)() = 0; |
| @@ -297,8 +317,7 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A | |||
| 297 | __inout BOOL* pfCancel | 317 | __inout BOOL* pfCancel |
| 298 | ) = 0; | 318 | ) = 0; |
| 299 | 319 | ||
| 300 | // OnCacheAcquireProgress - called when the engine makes progresss copying | 320 | // OnCacheAcquireProgress - called when the engine makes progress acquiring the payload or container. |
| 301 | // or downloading a payload to the working folder. | ||
| 302 | // | 321 | // |
| 303 | STDMETHOD(OnCacheAcquireProgress)( | 322 | STDMETHOD(OnCacheAcquireProgress)( |
| 304 | __in_z_opt LPCWSTR wzPackageOrContainerId, | 323 | __in_z_opt LPCWSTR wzPackageOrContainerId, |
| @@ -359,6 +378,16 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A | |||
| 359 | __inout BOOL* pfCancel | 378 | __inout BOOL* pfCancel |
| 360 | ) = 0; | 379 | ) = 0; |
| 361 | 380 | ||
| 381 | STDMETHOD(OnCacheVerifyProgress)( | ||
| 382 | __in_z_opt LPCWSTR wzPackageOrContainerId, | ||
| 383 | __in_z_opt LPCWSTR wzPayloadId, | ||
| 384 | __in DWORD64 dw64Progress, | ||
| 385 | __in DWORD64 dw64Total, | ||
| 386 | __in DWORD dwOverallPercentage, | ||
| 387 | __in BOOTSTRAPPER_CACHE_VERIFY_STEP verifyStep, | ||
| 388 | __inout BOOL* pfCancel | ||
| 389 | ) = 0; | ||
| 390 | |||
| 362 | // OnCacheVerifyComplete - called after the engine verifies and copies | 391 | // OnCacheVerifyComplete - called after the engine verifies and copies |
| 363 | // a payload or container to the package cache folder. | 392 | // a payload or container to the package cache folder. |
| 364 | // | 393 | // |
| @@ -570,23 +599,45 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A | |||
| 570 | __inout BOOL* pfIgnoreBundle | 599 | __inout BOOL* pfIgnoreBundle |
| 571 | ) = 0; | 600 | ) = 0; |
| 572 | 601 | ||
| 573 | // BAProc - The PFN_BOOTSTRAPPER_APPLICATION_PROC can call this method to give the BA raw access to the callback from the engine. | 602 | STDMETHOD(OnCacheContainerOrPayloadVerifyBegin)( |
| 574 | // This might be used to help the BA support more than one version of the engine. | 603 | __in_z_opt LPCWSTR wzPackageOrContainerId, |
| 575 | STDMETHOD(BAProc)( | 604 | __in_z_opt LPCWSTR wzPayloadId, |
| 576 | __in BOOTSTRAPPER_APPLICATION_MESSAGE message, | 605 | __inout BOOL* pfCancel |
| 577 | __in const LPVOID pvArgs, | ||
| 578 | __inout LPVOID pvResults, | ||
| 579 | __in_opt LPVOID pvContext | ||
| 580 | ) = 0; | 606 | ) = 0; |
| 581 | 607 | ||
| 582 | // BAProcFallback - The PFN_BOOTSTRAPPER_APPLICATION_PROC can call this method | 608 | STDMETHOD(OnCacheContainerOrPayloadVerifyProgress)( |
| 583 | // to give the BA the ability to use default behavior | 609 | __in_z_opt LPCWSTR wzPackageOrContainerId, |
| 584 | // and then forward the message to extensions. | 610 | __in_z_opt LPCWSTR wzPayloadId, |
| 585 | STDMETHOD_(void, BAProcFallback)( | 611 | __in DWORD64 dw64Progress, |
| 586 | __in BOOTSTRAPPER_APPLICATION_MESSAGE message, | 612 | __in DWORD64 dw64Total, |
| 587 | __in const LPVOID pvArgs, | 613 | __in DWORD dwOverallPercentage, |
| 588 | __inout LPVOID pvResults, | 614 | __inout BOOL* pfCancel |
| 589 | __inout HRESULT* phr, | 615 | ) = 0; |
| 590 | __in_opt LPVOID pvContext | 616 | |
| 617 | STDMETHOD(OnCacheContainerOrPayloadVerifyComplete)( | ||
| 618 | __in_z_opt LPCWSTR wzPackageOrContainerId, | ||
| 619 | __in_z_opt LPCWSTR wzPayloadId, | ||
| 620 | __in HRESULT hrStatus | ||
| 621 | ) = 0; | ||
| 622 | |||
| 623 | STDMETHOD(OnCachePayloadExtractBegin)( | ||
| 624 | __in_z_opt LPCWSTR wzContainerId, | ||
| 625 | __in_z_opt LPCWSTR wzPayloadId, | ||
| 626 | __inout BOOL* pfCancel | ||
| 627 | ) = 0; | ||
| 628 | |||
| 629 | STDMETHOD(OnCachePayloadExtractProgress)( | ||
| 630 | __in_z_opt LPCWSTR wzContainerId, | ||
| 631 | __in_z_opt LPCWSTR wzPayloadId, | ||
| 632 | __in DWORD64 dw64Progress, | ||
| 633 | __in DWORD64 dw64Total, | ||
| 634 | __in DWORD dwOverallPercentage, | ||
| 635 | __inout BOOL* pfCancel | ||
| 636 | ) = 0; | ||
| 637 | |||
| 638 | STDMETHOD(OnCachePayloadExtractComplete)( | ||
| 639 | __in_z_opt LPCWSTR wzContainerId, | ||
| 640 | __in_z_opt LPCWSTR wzPayloadId, | ||
| 641 | __in HRESULT hrStatus | ||
| 591 | ) = 0; | 642 | ) = 0; |
| 592 | }; | 643 | }; |
