diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2021-04-19 19:41:23 -0500 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2021-04-20 00:04:12 -0500 |
commit | 5bbff3ae92decfd071f835b5d489e63000f8cf19 (patch) | |
tree | a4bf21a8bcb360064843a519fb8710bdfb192295 /src | |
parent | 1fb8dc635834c5b9f24b898a291734d7bd136ad4 (diff) | |
download | wix-5bbff3ae92decfd071f835b5d489e63000f8cf19.tar.gz wix-5bbff3ae92decfd071f835b5d489e63000f8cf19.tar.bz2 wix-5bbff3ae92decfd071f835b5d489e63000f8cf19.zip |
Process new cache BA messages.
Diffstat (limited to 'src')
-rw-r--r-- | src/wixstdba/WixStandardBootstrapperApplication.cpp | 159 |
1 files changed, 159 insertions, 0 deletions
diff --git a/src/wixstdba/WixStandardBootstrapperApplication.cpp b/src/wixstdba/WixStandardBootstrapperApplication.cpp index 23fded79..2a8edb93 100644 --- a/src/wixstdba/WixStandardBootstrapperApplication.cpp +++ b/src/wixstdba/WixStandardBootstrapperApplication.cpp | |||
@@ -628,6 +628,64 @@ public: // IBootstrapperApplication | |||
628 | } | 628 | } |
629 | 629 | ||
630 | 630 | ||
631 | virtual STDMETHODIMP OnCacheContainerOrPayloadVerifyProgress( | ||
632 | __in_z LPCWSTR wzPackageOrContainerId, | ||
633 | __in_z_opt LPCWSTR wzPayloadId, | ||
634 | __in DWORD64 dw64Progress, | ||
635 | __in DWORD64 dw64Total, | ||
636 | __in DWORD dwOverallPercentage, | ||
637 | __inout BOOL* pfCancel | ||
638 | ) | ||
639 | { | ||
640 | #ifdef DEBUG | ||
641 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: OnCacheContainerOrPayloadVerifyProgress() - container/package: %ls, payload: %ls, progress: %I64u, total: %I64u, overall progress: %u%%", wzPackageOrContainerId, wzPayloadId, dw64Progress, dw64Total, dwOverallPercentage); | ||
642 | #endif | ||
643 | |||
644 | UpdateCacheProgress(dwOverallPercentage); | ||
645 | |||
646 | return __super::OnCacheContainerOrPayloadVerifyProgress(wzPackageOrContainerId, wzPayloadId, dw64Progress, dw64Total, dwOverallPercentage, pfCancel); | ||
647 | } | ||
648 | |||
649 | |||
650 | virtual STDMETHODIMP OnCachePayloadExtractProgress( | ||
651 | __in_z LPCWSTR wzPackageOrContainerId, | ||
652 | __in_z_opt LPCWSTR wzPayloadId, | ||
653 | __in DWORD64 dw64Progress, | ||
654 | __in DWORD64 dw64Total, | ||
655 | __in DWORD dwOverallPercentage, | ||
656 | __inout BOOL* pfCancel | ||
657 | ) | ||
658 | { | ||
659 | #ifdef DEBUG | ||
660 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: OnCachePayloadExtractProgress() - container/package: %ls, payload: %ls, progress: %I64u, total: %I64u, overall progress: %u%%", wzPackageOrContainerId, wzPayloadId, dw64Progress, dw64Total, dwOverallPercentage); | ||
661 | #endif | ||
662 | |||
663 | UpdateCacheProgress(dwOverallPercentage); | ||
664 | |||
665 | return __super::OnCachePayloadExtractProgress(wzPackageOrContainerId, wzPayloadId, dw64Progress, dw64Total, dwOverallPercentage, pfCancel); | ||
666 | } | ||
667 | |||
668 | |||
669 | virtual STDMETHODIMP OnCacheVerifyProgress( | ||
670 | __in_z LPCWSTR wzPackageOrContainerId, | ||
671 | __in_z_opt LPCWSTR wzPayloadId, | ||
672 | __in DWORD64 dw64Progress, | ||
673 | __in DWORD64 dw64Total, | ||
674 | __in DWORD dwOverallPercentage, | ||
675 | __in BOOTSTRAPPER_CACHE_VERIFY_STEP verifyStep, | ||
676 | __inout BOOL* pfCancel | ||
677 | ) | ||
678 | { | ||
679 | #ifdef DEBUG | ||
680 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: OnCacheVerifyProgress() - container/package: %ls, payload: %ls, progress: %I64u, total: %I64u, overall progress: %u%%, step: %u", wzPackageOrContainerId, wzPayloadId, dw64Progress, dw64Total, dwOverallPercentage, verifyStep); | ||
681 | #endif | ||
682 | |||
683 | UpdateCacheProgress(dwOverallPercentage); | ||
684 | |||
685 | return __super::OnCacheVerifyProgress(wzPackageOrContainerId, wzPayloadId, dw64Progress, dw64Total, dwOverallPercentage, verifyStep, pfCancel); | ||
686 | } | ||
687 | |||
688 | |||
631 | virtual STDMETHODIMP OnCacheAcquireComplete( | 689 | virtual STDMETHODIMP OnCacheAcquireComplete( |
632 | __in_z LPCWSTR wzPackageOrContainerId, | 690 | __in_z LPCWSTR wzPackageOrContainerId, |
633 | __in_z_opt LPCWSTR wzPayloadId, | 691 | __in_z_opt LPCWSTR wzPayloadId, |
@@ -641,6 +699,28 @@ public: // IBootstrapperApplication | |||
641 | } | 699 | } |
642 | 700 | ||
643 | 701 | ||
702 | virtual STDMETHODIMP OnCacheContainerOrPayloadVerifyComplete( | ||
703 | __in_z LPCWSTR wzPackageOrContainerId, | ||
704 | __in_z_opt LPCWSTR wzPayloadId, | ||
705 | __in HRESULT hrStatus | ||
706 | ) | ||
707 | { | ||
708 | SetProgressState(hrStatus); | ||
709 | return __super::OnCacheContainerOrPayloadVerifyComplete(wzPackageOrContainerId, wzPayloadId, hrStatus); | ||
710 | } | ||
711 | |||
712 | |||
713 | virtual STDMETHODIMP OnCachePayloadExtractComplete( | ||
714 | __in_z LPCWSTR wzPackageOrContainerId, | ||
715 | __in_z_opt LPCWSTR wzPayloadId, | ||
716 | __in HRESULT hrStatus | ||
717 | ) | ||
718 | { | ||
719 | SetProgressState(hrStatus); | ||
720 | return __super::OnCachePayloadExtractComplete(wzPackageOrContainerId, wzPayloadId, hrStatus); | ||
721 | } | ||
722 | |||
723 | |||
644 | virtual STDMETHODIMP OnCacheVerifyComplete( | 724 | virtual STDMETHODIMP OnCacheVerifyComplete( |
645 | __in_z LPCWSTR wzPackageId, | 725 | __in_z LPCWSTR wzPackageId, |
646 | __in_z LPCWSTR wzPayloadId, | 726 | __in_z LPCWSTR wzPayloadId, |
@@ -1282,8 +1362,31 @@ public: // IBootstrapperApplication | |||
1282 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANNEDPACKAGE: | 1362 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANNEDPACKAGE: |
1283 | OnPlannedPackageFallback(reinterpret_cast<BA_ONPLANNEDPACKAGE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANNEDPACKAGE_RESULTS*>(pvResults)); | 1363 | OnPlannedPackageFallback(reinterpret_cast<BA_ONPLANNEDPACKAGE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANNEDPACKAGE_RESULTS*>(pvResults)); |
1284 | break; | 1364 | break; |
1365 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEVERIFYPROGRESS: | ||
1366 | OnCacheVerifyProgressFallback(reinterpret_cast<BA_ONCACHEVERIFYPROGRESS_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEVERIFYPROGRESS_RESULTS*>(pvResults)); | ||
1367 | break; | ||
1368 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYBEGIN: | ||
1369 | OnCacheContainerOrPayloadVerifyBeginFallback(reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_RESULTS*>(pvResults)); | ||
1370 | break; | ||
1371 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE: | ||
1372 | OnCacheContainerOrPayloadVerifyCompleteFallback(reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_RESULTS*>(pvResults)); | ||
1373 | break; | ||
1374 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS: | ||
1375 | OnCacheContainerOrPayloadVerifyProgressFallback(reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_RESULTS*>(pvResults)); | ||
1376 | break; | ||
1377 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTBEGIN: | ||
1378 | OnCachePayloadExtractBeginFallback(reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTBEGIN_RESULTS*>(pvResults)); | ||
1379 | break; | ||
1380 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTCOMPLETE: | ||
1381 | OnCachePayloadExtractCompleteFallback(reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTCOMPLETE_RESULTS*>(pvResults)); | ||
1382 | break; | ||
1383 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS: | ||
1384 | OnCachePayloadExtractProgressFallback(reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTPROGRESS_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTPROGRESS_RESULTS*>(pvResults)); | ||
1385 | break; | ||
1285 | default: | 1386 | default: |
1387 | #ifdef DEBUG | ||
1286 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: Forwarding unknown BA message: %d", message); | 1388 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: Forwarding unknown BA message: %d", message); |
1389 | #endif | ||
1287 | m_pfnBAFunctionsProc((BA_FUNCTIONS_MESSAGE)message, pvArgs, pvResults, m_pvBAFunctionsProcContext); | 1390 | m_pfnBAFunctionsProc((BA_FUNCTIONS_MESSAGE)message, pvArgs, pvResults, m_pvBAFunctionsProcContext); |
1288 | break; | 1391 | break; |
1289 | } | 1392 | } |
@@ -1817,6 +1920,62 @@ private: // privates | |||
1817 | BalLogId(BOOTSTRAPPER_LOG_LEVEL_STANDARD, MSG_WIXSTDBA_PLANNED_FORWARD_COMPATIBLE_BUNDLE, m_hModule, pArgs->wzBundleId, fIgnoreBundle ? "ignore" : "enable", pResults->fIgnoreBundle ? "ignore" : "enable"); | 1920 | BalLogId(BOOTSTRAPPER_LOG_LEVEL_STANDARD, MSG_WIXSTDBA_PLANNED_FORWARD_COMPATIBLE_BUNDLE, m_hModule, pArgs->wzBundleId, fIgnoreBundle ? "ignore" : "enable", pResults->fIgnoreBundle ? "ignore" : "enable"); |
1818 | } | 1921 | } |
1819 | 1922 | ||
1923 | void OnCacheVerifyProgressFallback( | ||
1924 | __in BA_ONCACHEVERIFYPROGRESS_ARGS* pArgs, | ||
1925 | __inout BA_ONCACHEVERIFYPROGRESS_RESULTS* pResults | ||
1926 | ) | ||
1927 | { | ||
1928 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONCACHEVERIFYPROGRESS, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
1929 | } | ||
1930 | |||
1931 | void OnCacheContainerOrPayloadVerifyBeginFallback( | ||
1932 | __in BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_ARGS* pArgs, | ||
1933 | __inout BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_RESULTS* pResults | ||
1934 | ) | ||
1935 | { | ||
1936 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYBEGIN, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
1937 | } | ||
1938 | |||
1939 | void OnCacheContainerOrPayloadVerifyCompleteFallback( | ||
1940 | __in BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_ARGS* pArgs, | ||
1941 | __inout BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_RESULTS* pResults | ||
1942 | ) | ||
1943 | { | ||
1944 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
1945 | } | ||
1946 | |||
1947 | void OnCacheContainerOrPayloadVerifyProgressFallback( | ||
1948 | __in BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_ARGS* pArgs, | ||
1949 | __inout BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_RESULTS* pResults | ||
1950 | ) | ||
1951 | { | ||
1952 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
1953 | } | ||
1954 | |||
1955 | void OnCachePayloadExtractBeginFallback( | ||
1956 | __in BA_ONCACHEPAYLOADEXTRACTBEGIN_ARGS* pArgs, | ||
1957 | __inout BA_ONCACHEPAYLOADEXTRACTBEGIN_RESULTS* pResults | ||
1958 | ) | ||
1959 | { | ||
1960 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTBEGIN, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
1961 | } | ||
1962 | |||
1963 | void OnCachePayloadExtractCompleteFallback( | ||
1964 | __in BA_ONCACHEPAYLOADEXTRACTCOMPLETE_ARGS* pArgs, | ||
1965 | __inout BA_ONCACHEPAYLOADEXTRACTCOMPLETE_RESULTS* pResults | ||
1966 | ) | ||
1967 | { | ||
1968 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTCOMPLETE, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
1969 | } | ||
1970 | |||
1971 | void OnCachePayloadExtractProgressFallback( | ||
1972 | __in BA_ONCACHEPAYLOADEXTRACTPROGRESS_ARGS* pArgs, | ||
1973 | __inout BA_ONCACHEPAYLOADEXTRACTPROGRESS_RESULTS* pResults | ||
1974 | ) | ||
1975 | { | ||
1976 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
1977 | } | ||
1978 | |||
1820 | // | 1979 | // |
1821 | // UiThreadProc - entrypoint for UI thread. | 1980 | // UiThreadProc - entrypoint for UI thread. |
1822 | // | 1981 | // |