diff options
Diffstat (limited to 'src/api/burn/WixToolset.Mba.Core')
4 files changed, 304 insertions, 9 deletions
diff --git a/src/api/burn/WixToolset.Mba.Core/BootstrapperApplication.cs b/src/api/burn/WixToolset.Mba.Core/BootstrapperApplication.cs index 34b63a50..f277425e 100644 --- a/src/api/burn/WixToolset.Mba.Core/BootstrapperApplication.cs +++ b/src/api/burn/WixToolset.Mba.Core/BootstrapperApplication.cs | |||
| @@ -63,6 +63,9 @@ namespace WixToolset.Mba.Core | |||
| 63 | 63 | ||
| 64 | /// <inheritdoc/> | 64 | /// <inheritdoc/> |
| 65 | public event EventHandler<DetectPackageBeginEventArgs> DetectPackageBegin; | 65 | public event EventHandler<DetectPackageBeginEventArgs> DetectPackageBegin; |
| 66 | |||
| 67 | /// <inheritdoc/> | ||
| 68 | public event EventHandler<DetectCompatibleMsiPackageEventArgs> DetectCompatibleMsiPackage; | ||
| 66 | 69 | ||
| 67 | /// <inheritdoc/> | 70 | /// <inheritdoc/> |
| 68 | public event EventHandler<DetectRelatedMsiPackageEventArgs> DetectRelatedMsiPackage; | 71 | public event EventHandler<DetectRelatedMsiPackageEventArgs> DetectRelatedMsiPackage; |
| @@ -92,6 +95,12 @@ namespace WixToolset.Mba.Core | |||
| 92 | public event EventHandler<PlanPackageBeginEventArgs> PlanPackageBegin; | 95 | public event EventHandler<PlanPackageBeginEventArgs> PlanPackageBegin; |
| 93 | 96 | ||
| 94 | /// <inheritdoc/> | 97 | /// <inheritdoc/> |
| 98 | public event EventHandler<PlanCompatibleMsiPackageBeginEventArgs> PlanCompatibleMsiPackageBegin; | ||
| 99 | |||
| 100 | /// <inheritdoc/> | ||
| 101 | public event EventHandler<PlanCompatibleMsiPackageCompleteEventArgs> PlanCompatibleMsiPackageComplete; | ||
| 102 | |||
| 103 | /// <inheritdoc/> | ||
| 95 | public event EventHandler<PlanPatchTargetEventArgs> PlanPatchTarget; | 104 | public event EventHandler<PlanPatchTargetEventArgs> PlanPatchTarget; |
| 96 | 105 | ||
| 97 | /// <inheritdoc/> | 106 | /// <inheritdoc/> |
| @@ -104,6 +113,9 @@ namespace WixToolset.Mba.Core | |||
| 104 | public event EventHandler<PlanPackageCompleteEventArgs> PlanPackageComplete; | 113 | public event EventHandler<PlanPackageCompleteEventArgs> PlanPackageComplete; |
| 105 | 114 | ||
| 106 | /// <inheritdoc/> | 115 | /// <inheritdoc/> |
| 116 | public event EventHandler<PlannedCompatiblePackageEventArgs> PlannedCompatiblePackage; | ||
| 117 | |||
| 118 | /// <inheritdoc/> | ||
| 107 | public event EventHandler<PlannedPackageEventArgs> PlannedPackage; | 119 | public event EventHandler<PlannedPackageEventArgs> PlannedPackage; |
| 108 | 120 | ||
| 109 | /// <inheritdoc/> | 121 | /// <inheritdoc/> |
| @@ -415,6 +427,19 @@ namespace WixToolset.Mba.Core | |||
| 415 | } | 427 | } |
| 416 | 428 | ||
| 417 | /// <summary> | 429 | /// <summary> |
| 430 | /// Called by the engine, raises the <see cref="DetectCompatibleMsiPackage"/> event. | ||
| 431 | /// </summary> | ||
| 432 | /// <param name="args">Additional arguments for this event.</param> | ||
| 433 | protected virtual void OnDetectCompatibleMsiPackage(DetectCompatibleMsiPackageEventArgs args) | ||
| 434 | { | ||
| 435 | EventHandler<DetectCompatibleMsiPackageEventArgs> handler = this.DetectCompatibleMsiPackage; | ||
| 436 | if (null != handler) | ||
| 437 | { | ||
| 438 | handler(this, args); | ||
| 439 | } | ||
| 440 | } | ||
| 441 | |||
| 442 | /// <summary> | ||
| 418 | /// Called by the engine, raises the <see cref="DetectRelatedMsiPackage"/> event. | 443 | /// Called by the engine, raises the <see cref="DetectRelatedMsiPackage"/> event. |
| 419 | /// </summary> | 444 | /// </summary> |
| 420 | /// <param name="args">Additional arguments for this event.</param> | 445 | /// <param name="args">Additional arguments for this event.</param> |
| @@ -531,6 +556,32 @@ namespace WixToolset.Mba.Core | |||
| 531 | } | 556 | } |
| 532 | 557 | ||
| 533 | /// <summary> | 558 | /// <summary> |
| 559 | /// Called by the engine, raises the <see cref="PlanCompatibleMsiPackageBegin"/> event. | ||
| 560 | /// </summary> | ||
| 561 | /// <param name="args">Additional arguments for this event.</param> | ||
| 562 | protected virtual void OnPlanCompatibleMsiPackageBegin(PlanCompatibleMsiPackageBeginEventArgs args) | ||
| 563 | { | ||
| 564 | EventHandler<PlanCompatibleMsiPackageBeginEventArgs> handler = this.PlanCompatibleMsiPackageBegin; | ||
| 565 | if (null != handler) | ||
| 566 | { | ||
| 567 | handler(this, args); | ||
| 568 | } | ||
| 569 | } | ||
| 570 | |||
| 571 | /// <summary> | ||
| 572 | /// Called by the engine, raises the <see cref="PlanCompatibleMsiPackageComplete"/> event. | ||
| 573 | /// </summary> | ||
| 574 | /// <param name="args">Additional arguments for this event.</param> | ||
| 575 | protected virtual void OnPlanCompatibleMsiPackageComplete(PlanCompatibleMsiPackageCompleteEventArgs args) | ||
| 576 | { | ||
| 577 | EventHandler<PlanCompatibleMsiPackageCompleteEventArgs> handler = this.PlanCompatibleMsiPackageComplete; | ||
| 578 | if (null != handler) | ||
| 579 | { | ||
| 580 | handler(this, args); | ||
| 581 | } | ||
| 582 | } | ||
| 583 | |||
| 584 | /// <summary> | ||
| 534 | /// Called by the engine, raises the <see cref="PlanPatchTarget"/> event. | 585 | /// Called by the engine, raises the <see cref="PlanPatchTarget"/> event. |
| 535 | /// </summary> | 586 | /// </summary> |
| 536 | /// <param name="args">Additional arguments for this event.</param> | 587 | /// <param name="args">Additional arguments for this event.</param> |
| @@ -583,6 +634,19 @@ namespace WixToolset.Mba.Core | |||
| 583 | } | 634 | } |
| 584 | 635 | ||
| 585 | /// <summary> | 636 | /// <summary> |
| 637 | /// Called by the engine, raises the <see cref="PlannedCompatiblePackage"/> event. | ||
| 638 | /// </summary> | ||
| 639 | /// <param name="args">Additional arguments for this event.</param> | ||
| 640 | protected virtual void OnPlannedCompatiblePackage(PlannedCompatiblePackageEventArgs args) | ||
| 641 | { | ||
| 642 | EventHandler<PlannedCompatiblePackageEventArgs> handler = this.PlannedCompatiblePackage; | ||
| 643 | if (null != handler) | ||
| 644 | { | ||
| 645 | handler(this, args); | ||
| 646 | } | ||
| 647 | } | ||
| 648 | |||
| 649 | /// <summary> | ||
| 586 | /// Called by the engine, raises the <see cref="PlannedPackage"/> event. | 650 | /// Called by the engine, raises the <see cref="PlannedPackage"/> event. |
| 587 | /// </summary> | 651 | /// </summary> |
| 588 | /// <param name="args">Additional arguments for this event.</param> | 652 | /// <param name="args">Additional arguments for this event.</param> |
| @@ -1363,6 +1427,15 @@ namespace WixToolset.Mba.Core | |||
| 1363 | return args.HResult; | 1427 | return args.HResult; |
| 1364 | } | 1428 | } |
| 1365 | 1429 | ||
| 1430 | int IBootstrapperApplication.OnDetectCompatibleMsiPackage(string wzPackageId, string wzCompatiblePackageId, string wzCompatiblePackageVersion, ref bool fCancel) | ||
| 1431 | { | ||
| 1432 | DetectCompatibleMsiPackageEventArgs args = new DetectCompatibleMsiPackageEventArgs(wzPackageId, wzCompatiblePackageId, wzCompatiblePackageVersion, fCancel); | ||
| 1433 | this.OnDetectCompatibleMsiPackage(args); | ||
| 1434 | |||
| 1435 | fCancel = args.Cancel; | ||
| 1436 | return args.HResult; | ||
| 1437 | } | ||
| 1438 | |||
| 1366 | int IBootstrapperApplication.OnDetectRelatedMsiPackage(string wzPackageId, string wzUpgradeCode, string wzProductCode, bool fPerMachine, string wzVersion, RelatedOperation operation, ref bool fCancel) | 1439 | int IBootstrapperApplication.OnDetectRelatedMsiPackage(string wzPackageId, string wzUpgradeCode, string wzProductCode, bool fPerMachine, string wzVersion, RelatedOperation operation, ref bool fCancel) |
| 1367 | { | 1440 | { |
| 1368 | DetectRelatedMsiPackageEventArgs args = new DetectRelatedMsiPackageEventArgs(wzPackageId, wzUpgradeCode, wzProductCode, fPerMachine, wzVersion, operation, fCancel); | 1441 | DetectRelatedMsiPackageEventArgs args = new DetectRelatedMsiPackageEventArgs(wzPackageId, wzUpgradeCode, wzProductCode, fPerMachine, wzVersion, operation, fCancel); |
| @@ -1445,6 +1518,24 @@ namespace WixToolset.Mba.Core | |||
| 1445 | return args.HResult; | 1518 | return args.HResult; |
| 1446 | } | 1519 | } |
| 1447 | 1520 | ||
| 1521 | int IBootstrapperApplication.OnPlanCompatibleMsiPackageBegin(string wzPackageId, string wzCompatiblePackageId, string wzCompatiblePackageVersion, bool recommendedRemove, ref bool pRequestedRemove, ref bool fCancel) | ||
| 1522 | { | ||
| 1523 | PlanCompatibleMsiPackageBeginEventArgs args = new PlanCompatibleMsiPackageBeginEventArgs(wzPackageId, wzCompatiblePackageId, wzCompatiblePackageVersion, recommendedRemove, pRequestedRemove, fCancel); | ||
| 1524 | this.OnPlanCompatibleMsiPackageBegin(args); | ||
| 1525 | |||
| 1526 | pRequestedRemove = args.RequestRemove; | ||
| 1527 | fCancel = args.Cancel; | ||
| 1528 | return args.HResult; | ||
| 1529 | } | ||
| 1530 | |||
| 1531 | int IBootstrapperApplication.OnPlanCompatibleMsiPackageComplete(string wzPackageId, string wzCompatiblePackageId, int hrStatus, bool requestedRemove) | ||
| 1532 | { | ||
| 1533 | PlanCompatibleMsiPackageCompleteEventArgs args = new PlanCompatibleMsiPackageCompleteEventArgs(wzPackageId, wzCompatiblePackageId, hrStatus, requestedRemove); | ||
| 1534 | this.OnPlanCompatibleMsiPackageComplete(args); | ||
| 1535 | |||
| 1536 | return args.HResult; | ||
| 1537 | } | ||
| 1538 | |||
| 1448 | int IBootstrapperApplication.OnPlanPatchTarget(string wzPackageId, string wzProductCode, RequestState recommendedState, ref RequestState pRequestedState, ref bool fCancel) | 1539 | int IBootstrapperApplication.OnPlanPatchTarget(string wzPackageId, string wzProductCode, RequestState recommendedState, ref RequestState pRequestedState, ref bool fCancel) |
| 1449 | { | 1540 | { |
| 1450 | PlanPatchTargetEventArgs args = new PlanPatchTargetEventArgs(wzPackageId, wzProductCode, recommendedState, pRequestedState, fCancel); | 1541 | PlanPatchTargetEventArgs args = new PlanPatchTargetEventArgs(wzPackageId, wzProductCode, recommendedState, pRequestedState, fCancel); |
| @@ -1486,6 +1577,14 @@ namespace WixToolset.Mba.Core | |||
| 1486 | return args.HResult; | 1577 | return args.HResult; |
| 1487 | } | 1578 | } |
| 1488 | 1579 | ||
| 1580 | int IBootstrapperApplication.OnPlannedCompatiblePackage(string wzPackageId, string wzCompatiblePackageId, bool remove) | ||
| 1581 | { | ||
| 1582 | var args = new PlannedCompatiblePackageEventArgs(wzPackageId, wzCompatiblePackageId, remove); | ||
| 1583 | this.OnPlannedCompatiblePackage(args); | ||
| 1584 | |||
| 1585 | return args.HResult; | ||
| 1586 | } | ||
| 1587 | |||
| 1489 | int IBootstrapperApplication.OnPlannedPackage(string wzPackageId, ActionState execute, ActionState rollback, bool fPlannedCache, bool fPlannedUncache) | 1588 | int IBootstrapperApplication.OnPlannedPackage(string wzPackageId, ActionState execute, ActionState rollback, bool fPlannedCache, bool fPlannedUncache) |
| 1490 | { | 1589 | { |
| 1491 | var args = new PlannedPackageEventArgs(wzPackageId, execute, rollback, fPlannedCache, fPlannedUncache); | 1590 | var args = new PlannedPackageEventArgs(wzPackageId, execute, rollback, fPlannedCache, fPlannedUncache); |
diff --git a/src/api/burn/WixToolset.Mba.Core/EventArgs.cs b/src/api/burn/WixToolset.Mba.Core/EventArgs.cs index 93831be6..d4d70651 100644 --- a/src/api/burn/WixToolset.Mba.Core/EventArgs.cs +++ b/src/api/burn/WixToolset.Mba.Core/EventArgs.cs | |||
| @@ -496,6 +496,37 @@ namespace WixToolset.Mba.Core | |||
| 496 | } | 496 | } |
| 497 | 497 | ||
| 498 | /// <summary> | 498 | /// <summary> |
| 499 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectCompatibleMsiPackage"/> | ||
| 500 | /// </summary> | ||
| 501 | [Serializable] | ||
| 502 | public class DetectCompatibleMsiPackageEventArgs : CancellableHResultEventArgs | ||
| 503 | { | ||
| 504 | /// <summary /> | ||
| 505 | public DetectCompatibleMsiPackageEventArgs(string packageId, string compatiblePackageId, string compatiblePackageVersion, bool cancelRecommendation) | ||
| 506 | : base(cancelRecommendation) | ||
| 507 | { | ||
| 508 | this.PackageId = packageId; | ||
| 509 | this.CompatiblePackageId = compatiblePackageId; | ||
| 510 | this.CompatiblePackageVersion = compatiblePackageVersion; | ||
| 511 | } | ||
| 512 | |||
| 513 | /// <summary> | ||
| 514 | /// Gets the identity of the package that was not detected. | ||
| 515 | /// </summary> | ||
| 516 | public string PackageId { get; private set; } | ||
| 517 | |||
| 518 | /// <summary> | ||
| 519 | /// Gets the identity of the compatible package that was detected. | ||
| 520 | /// </summary> | ||
| 521 | public string CompatiblePackageId { get; private set; } | ||
| 522 | |||
| 523 | /// <summary> | ||
| 524 | /// Gets the version of the compatible package that was detected. | ||
| 525 | /// </summary> | ||
| 526 | public string CompatiblePackageVersion { get; private set; } | ||
| 527 | } | ||
| 528 | |||
| 529 | /// <summary> | ||
| 499 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectRelatedMsiPackage"/> | 530 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectRelatedMsiPackage"/> |
| 500 | /// </summary> | 531 | /// </summary> |
| 501 | [Serializable] | 532 | [Serializable] |
| @@ -776,6 +807,80 @@ namespace WixToolset.Mba.Core | |||
| 776 | } | 807 | } |
| 777 | 808 | ||
| 778 | /// <summary> | 809 | /// <summary> |
| 810 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanCompatibleMsiPackageBegin"/> | ||
| 811 | /// </summary> | ||
| 812 | [Serializable] | ||
| 813 | public class PlanCompatibleMsiPackageBeginEventArgs : CancellableHResultEventArgs | ||
| 814 | { | ||
| 815 | /// <summary /> | ||
| 816 | public PlanCompatibleMsiPackageBeginEventArgs(string packageId, string compatiblePackageId, string compatiblePackageVersion, bool recommendedRemove, bool requestRemove, bool cancelRecommendation) | ||
| 817 | : base(cancelRecommendation) | ||
| 818 | { | ||
| 819 | this.PackageId = packageId; | ||
| 820 | this.CompatiblePackageId = compatiblePackageId; | ||
| 821 | this.CompatiblePackageVersion = compatiblePackageVersion; | ||
| 822 | this.RecommendedRemove = recommendedRemove; | ||
| 823 | this.RequestRemove = requestRemove; | ||
| 824 | } | ||
| 825 | |||
| 826 | /// <summary> | ||
| 827 | /// Gets the identity of the package that was not detected. | ||
| 828 | /// </summary> | ||
| 829 | public string PackageId { get; private set; } | ||
| 830 | |||
| 831 | /// <summary> | ||
| 832 | /// Gets the identity of the compatible package detected. | ||
| 833 | /// </summary> | ||
| 834 | public string CompatiblePackageId { get; private set; } | ||
| 835 | |||
| 836 | /// <summary> | ||
| 837 | /// Gets the version of the compatible package detected. | ||
| 838 | /// </summary> | ||
| 839 | public string CompatiblePackageVersion { get; private set; } | ||
| 840 | |||
| 841 | /// <summary> | ||
| 842 | /// Gets the recommended state to use for the compatible package for planning. | ||
| 843 | /// </summary> | ||
| 844 | public bool RecommendedRemove { get; private set; } | ||
| 845 | |||
| 846 | /// <summary> | ||
| 847 | /// Gets or sets whether to uninstall the compatible package. | ||
| 848 | /// </summary> | ||
| 849 | public bool RequestRemove { get; set; } | ||
| 850 | } | ||
| 851 | |||
| 852 | /// <summary> | ||
| 853 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanCompatibleMsiPackageComplete"/> | ||
| 854 | /// </summary> | ||
| 855 | [Serializable] | ||
| 856 | public class PlanCompatibleMsiPackageCompleteEventArgs : StatusEventArgs | ||
| 857 | { | ||
| 858 | /// <summary /> | ||
| 859 | public PlanCompatibleMsiPackageCompleteEventArgs(string packageId, string compatiblePackageId, int hrStatus, bool requestedRemove) | ||
| 860 | : base(hrStatus) | ||
| 861 | { | ||
| 862 | this.PackageId = packageId; | ||
| 863 | this.CompatiblePackageId = compatiblePackageId; | ||
| 864 | this.RequestedRemove = requestedRemove; | ||
| 865 | } | ||
| 866 | |||
| 867 | /// <summary> | ||
| 868 | /// Gets the identity of the package planned for. | ||
| 869 | /// </summary> | ||
| 870 | public string PackageId { get; private set; } | ||
| 871 | |||
| 872 | /// <summary> | ||
| 873 | /// Gets the identity of the compatible package detected. | ||
| 874 | /// </summary> | ||
| 875 | public string CompatiblePackageId { get; private set; } | ||
| 876 | |||
| 877 | /// <summary> | ||
| 878 | /// Gets the requested state of the package. | ||
| 879 | /// </summary> | ||
| 880 | public bool RequestedRemove { get; private set; } | ||
| 881 | } | ||
| 882 | |||
| 883 | /// <summary> | ||
| 779 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanRollbackBoundary"/> | 884 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanRollbackBoundary"/> |
| 780 | /// </summary> | 885 | /// </summary> |
| 781 | [Serializable] | 886 | [Serializable] |
| @@ -981,6 +1086,36 @@ namespace WixToolset.Mba.Core | |||
| 981 | } | 1086 | } |
| 982 | 1087 | ||
| 983 | /// <summary> | 1088 | /// <summary> |
| 1089 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlannedCompatiblePackage"/> | ||
| 1090 | /// </summary> | ||
| 1091 | [Serializable] | ||
| 1092 | public class PlannedCompatiblePackageEventArgs : HResultEventArgs | ||
| 1093 | { | ||
| 1094 | /// <summary /> | ||
| 1095 | public PlannedCompatiblePackageEventArgs(string packageId, string compatiblePackageId, bool remove) | ||
| 1096 | { | ||
| 1097 | this.PackageId = packageId; | ||
| 1098 | this.CompatiblePackageId = compatiblePackageId; | ||
| 1099 | this.Remove = remove; | ||
| 1100 | } | ||
| 1101 | |||
| 1102 | /// <summary> | ||
| 1103 | /// Gets the identity of the package planned for. | ||
| 1104 | /// </summary> | ||
| 1105 | public string PackageId { get; private set; } | ||
| 1106 | |||
| 1107 | /// <summary> | ||
| 1108 | /// Gets the identity of the compatible package detected. | ||
| 1109 | /// </summary> | ||
| 1110 | public string CompatiblePackageId { get; private set; } | ||
| 1111 | |||
| 1112 | /// <summary> | ||
| 1113 | /// Gets the planned state of the package. | ||
| 1114 | /// </summary> | ||
| 1115 | public bool Remove { get; private set; } | ||
| 1116 | } | ||
| 1117 | |||
| 1118 | /// <summary> | ||
| 984 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlannedPackage"/> | 1119 | /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlannedPackage"/> |
| 985 | /// </summary> | 1120 | /// </summary> |
| 986 | [Serializable] | 1121 | [Serializable] |
diff --git a/src/api/burn/WixToolset.Mba.Core/IBootstrapperApplication.cs b/src/api/burn/WixToolset.Mba.Core/IBootstrapperApplication.cs index babd523a..05f96106 100644 --- a/src/api/burn/WixToolset.Mba.Core/IBootstrapperApplication.cs +++ b/src/api/burn/WixToolset.Mba.Core/IBootstrapperApplication.cs | |||
| @@ -182,16 +182,20 @@ namespace WixToolset.Mba.Core | |||
| 182 | ); | 182 | ); |
| 183 | 183 | ||
| 184 | /// <summary> | 184 | /// <summary> |
| 185 | /// See <see cref="IDefaultBootstrapperApplication.DetectCompatibleMsiPackage"/>. | ||
| 186 | /// </summary> | ||
| 187 | [PreserveSig] | ||
| 188 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 189 | int OnDetectCompatibleMsiPackage( | ||
| 190 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
| 191 | [MarshalAs(UnmanagedType.LPWStr)] string wzCompatiblePackageId, | ||
| 192 | [MarshalAs(UnmanagedType.LPWStr)] string wzCompatiblePackageVersion, | ||
| 193 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
| 194 | ); | ||
| 195 | |||
| 196 | /// <summary> | ||
| 185 | /// See <see cref="IDefaultBootstrapperApplication.DetectRelatedMsiPackage"/>. | 197 | /// See <see cref="IDefaultBootstrapperApplication.DetectRelatedMsiPackage"/>. |
| 186 | /// </summary> | 198 | /// </summary> |
| 187 | /// <param name="wzPackageId"></param> | ||
| 188 | /// <param name="wzUpgradeCode"></param> | ||
| 189 | /// <param name="wzProductCode"></param> | ||
| 190 | /// <param name="fPerMachine"></param> | ||
| 191 | /// <param name="wzVersion"></param> | ||
| 192 | /// <param name="operation"></param> | ||
| 193 | /// <param name="fCancel"></param> | ||
| 194 | /// <returns></returns> | ||
| 195 | [PreserveSig] | 199 | [PreserveSig] |
| 196 | [return: MarshalAs(UnmanagedType.I4)] | 200 | [return: MarshalAs(UnmanagedType.I4)] |
| 197 | int OnDetectRelatedMsiPackage( | 201 | int OnDetectRelatedMsiPackage( |
| @@ -318,6 +322,32 @@ namespace WixToolset.Mba.Core | |||
| 318 | ); | 322 | ); |
| 319 | 323 | ||
| 320 | /// <summary> | 324 | /// <summary> |
| 325 | /// See <see cref="IDefaultBootstrapperApplication.PlanCompatibleMsiPackageBegin"/>. | ||
| 326 | /// </summary> | ||
| 327 | [PreserveSig] | ||
| 328 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 329 | int OnPlanCompatibleMsiPackageBegin( | ||
| 330 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
| 331 | [MarshalAs(UnmanagedType.LPWStr)] string wzCompatiblePackageId, | ||
| 332 | [MarshalAs(UnmanagedType.LPWStr)] string wzCompatiblePackageVersion, | ||
| 333 | [MarshalAs(UnmanagedType.Bool)] bool fRecommendedRemove, | ||
| 334 | [MarshalAs(UnmanagedType.Bool)] ref bool fRequestRemove, | ||
| 335 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
| 336 | ); | ||
| 337 | |||
| 338 | /// <summary> | ||
| 339 | /// See <see cref="IDefaultBootstrapperApplication.PlanCompatibleMsiPackageComplete"/>. | ||
| 340 | /// </summary> | ||
| 341 | [PreserveSig] | ||
| 342 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 343 | int OnPlanCompatibleMsiPackageComplete( | ||
| 344 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
| 345 | [MarshalAs(UnmanagedType.LPWStr)] string wzCompatiblePackageId, | ||
| 346 | int hrStatus, | ||
| 347 | [MarshalAs(UnmanagedType.Bool)] bool fRequestedRemove | ||
| 348 | ); | ||
| 349 | |||
| 350 | /// <summary> | ||
| 321 | /// See <see cref="IDefaultBootstrapperApplication.PlanPatchTarget"/>. | 351 | /// See <see cref="IDefaultBootstrapperApplication.PlanPatchTarget"/>. |
| 322 | /// </summary> | 352 | /// </summary> |
| 323 | /// <param name="wzPackageId"></param> | 353 | /// <param name="wzPackageId"></param> |
| @@ -388,6 +418,17 @@ namespace WixToolset.Mba.Core | |||
| 388 | ); | 418 | ); |
| 389 | 419 | ||
| 390 | /// <summary> | 420 | /// <summary> |
| 421 | /// See <see cref="IDefaultBootstrapperApplication.PlannedCompatiblePackage"/>. | ||
| 422 | /// </summary> | ||
| 423 | [PreserveSig] | ||
| 424 | [return: MarshalAs(UnmanagedType.I4)] | ||
| 425 | int OnPlannedCompatiblePackage( | ||
| 426 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
| 427 | [MarshalAs(UnmanagedType.LPWStr)] string wzCompatiblePackageId, | ||
| 428 | [MarshalAs(UnmanagedType.Bool)] bool fRemove | ||
| 429 | ); | ||
| 430 | |||
| 431 | /// <summary> | ||
| 391 | /// See <see cref="IDefaultBootstrapperApplication.PlannedPackage"/>. | 432 | /// See <see cref="IDefaultBootstrapperApplication.PlannedPackage"/>. |
| 392 | /// </summary> | 433 | /// </summary> |
| 393 | [PreserveSig] | 434 | [PreserveSig] |
diff --git a/src/api/burn/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs b/src/api/burn/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs index e809a965..ce06408e 100644 --- a/src/api/burn/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs +++ b/src/api/burn/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs | |||
| @@ -134,6 +134,11 @@ namespace WixToolset.Mba.Core | |||
| 134 | event EventHandler<DetectBeginEventArgs> DetectBegin; | 134 | event EventHandler<DetectBeginEventArgs> DetectBegin; |
| 135 | 135 | ||
| 136 | /// <summary> | 136 | /// <summary> |
| 137 | /// Fired when a package was not detected but a package using the same provider key was. | ||
| 138 | /// </summary> | ||
| 139 | event EventHandler<DetectCompatibleMsiPackageEventArgs> DetectCompatibleMsiPackage; | ||
| 140 | |||
| 141 | /// <summary> | ||
| 137 | /// Fired when the detection phase has completed. | 142 | /// Fired when the detection phase has completed. |
| 138 | /// </summary> | 143 | /// </summary> |
| 139 | event EventHandler<DetectCompleteEventArgs> DetectComplete; | 144 | event EventHandler<DetectCompleteEventArgs> DetectComplete; |
| @@ -269,6 +274,16 @@ namespace WixToolset.Mba.Core | |||
| 269 | event EventHandler<PlanBeginEventArgs> PlanBegin; | 274 | event EventHandler<PlanBeginEventArgs> PlanBegin; |
| 270 | 275 | ||
| 271 | /// <summary> | 276 | /// <summary> |
| 277 | /// Fired when the engine plans a new, compatible package using the same provider key. | ||
| 278 | /// </summary> | ||
| 279 | event EventHandler<PlanCompatibleMsiPackageBeginEventArgs> PlanCompatibleMsiPackageBegin; | ||
| 280 | |||
| 281 | /// <summary> | ||
| 282 | /// Fired when the engine has completed planning the installation of a specific package. | ||
| 283 | /// </summary> | ||
| 284 | event EventHandler<PlanCompatibleMsiPackageCompleteEventArgs> PlanCompatibleMsiPackageComplete; | ||
| 285 | |||
| 286 | /// <summary> | ||
| 272 | /// Fired when the engine has completed planning the installation. | 287 | /// Fired when the engine has completed planning the installation. |
| 273 | /// </summary> | 288 | /// </summary> |
| 274 | event EventHandler<PlanCompleteEventArgs> PlanComplete; | 289 | event EventHandler<PlanCompleteEventArgs> PlanComplete; |
| @@ -279,6 +294,11 @@ namespace WixToolset.Mba.Core | |||
| 279 | event EventHandler<PlanForwardCompatibleBundleEventArgs> PlanForwardCompatibleBundle; | 294 | event EventHandler<PlanForwardCompatibleBundleEventArgs> PlanForwardCompatibleBundle; |
| 280 | 295 | ||
| 281 | /// <summary> | 296 | /// <summary> |
| 297 | /// Fired when the engine has completed planning a compatible package. | ||
| 298 | /// </summary> | ||
| 299 | event EventHandler<PlannedCompatiblePackageEventArgs> PlannedCompatiblePackage; | ||
| 300 | |||
| 301 | /// <summary> | ||
| 282 | /// Fired when the engine has completed planning a package. | 302 | /// Fired when the engine has completed planning a package. |
| 283 | /// </summary> | 303 | /// </summary> |
| 284 | event EventHandler<PlannedPackageEventArgs> PlannedPackage; | 304 | event EventHandler<PlannedPackageEventArgs> PlannedPackage; |
| @@ -399,4 +419,4 @@ namespace WixToolset.Mba.Core | |||
| 399 | /// </summary> | 419 | /// </summary> |
| 400 | event EventHandler<UnregisterCompleteEventArgs> UnregisterComplete; | 420 | event EventHandler<UnregisterCompleteEventArgs> UnregisterComplete; |
| 401 | } | 421 | } |
| 402 | } \ No newline at end of file | 422 | } |
