Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WinGet Source COM Api #4813

Open
wants to merge 38 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
874c523
Implement skeleton for package catalog management
Madhusudhan-MSFT Sep 16, 2024
2ba2e77
Add new vector interfaces for package catalog operations
Madhusudhan-MSFT Sep 16, 2024
084e9a7
Add registration for AddPackageCatalogOptions COM class
Madhusudhan-MSFT Sep 16, 2024
8dbdbb8
Add C# WinRT Projection for AddPackageCatalogOptions class
Madhusudhan-MSFT Sep 16, 2024
fb402a1
[PR Feedback:] Refactor AddPackageCatalogOptions and update PackageMa…
Madhusudhan-MSFT Sep 17, 2024
bb0923b
[PR Feedback:] Refactor progress reporting for CatalogPackageAsync me…
Madhusudhan-MSFT Sep 17, 2024
a8e28b7
[PR Feedback:] Refactor package catalog operations to async methods
Madhusudhan-MSFT Sep 17, 2024
c5ccec2
Refactor PackageCatalogReference methods to remove params
Madhusudhan-MSFT Sep 24, 2024
16d41d0
Remove progress reporting from ResetPackageCatalogAsync
Madhusudhan-MSFT Sep 24, 2024
c2d3a0f
Eliminate ResetPackageCatalogAsync in favor of options for RemovePack…
Madhusudhan-MSFT Sep 27, 2024
aeb98ea
Merge branch 'master' of https://github.com/Madhusudhan-MSFT/winget-c…
Madhusudhan-MSFT Oct 9, 2024
e2021d7
[MergeConflictFix:] Add new NameCLSIDPair for AddPackageCatalogOptions
Madhusudhan-MSFT Oct 9, 2024
6410b49
Remove package catalog handling logic for the changes expected in the…
Madhusudhan-MSFT Oct 9, 2024
c41bb16
Apply API review feedback
Madhusudhan-MSFT Oct 14, 2024
aa6de76
Merge branch 'microsoft:master' into user/masudars/WinGet_Source_COM_API
Madhusudhan-MSFT Oct 14, 2024
ac4ae58
Fix typo in comment for AcceptSourceAgreements
Madhusudhan-MSFT Oct 14, 2024
0bf0ad4
Reformat RemovePackageCatalogAsync method declaration
Madhusudhan-MSFT Oct 14, 2024
f1a064a
Add new error codes and update method documentation
Madhusudhan-MSFT Oct 18, 2024
e988965
Add CallbackDispatcherSink class for progress updates
Madhusudhan-MSFT Oct 18, 2024
8bff63e
Add, Remove and Refresh package catalog operations with error handling
Madhusudhan-MSFT Oct 18, 2024
9f3fad3
Add PackageCatalogInterop class for E2E PackageCatalog test operations
Madhusudhan-MSFT Oct 18, 2024
8a39538
Merge branch 'microsoft:master' into user/masudars/WinGet_Source_COM_API
Madhusudhan-MSFT Oct 18, 2024
3853876
Merge branch 'user/masudars/WinGet_Source_COM_API' of https://github.…
Madhusudhan-MSFT Oct 18, 2024
7714865
Refactor status handling for Add, Remove and Refresh with a Template …
Madhusudhan-MSFT Oct 18, 2024
a0a91ba
Align RepairOptions struct with its UUID attribute
Madhusudhan-MSFT Oct 18, 2024
75c68a2
Update contract version to 12 in deployment namespaces for WinGet Pac…
Madhusudhan-MSFT Oct 18, 2024
fead163
[SpellCheck_Error] Fix typo in RemovePackageCatalogAsync method comment
Madhusudhan-MSFT Oct 18, 2024
9fef0f8
Improve clarity of RemoveNonExistingPackageCatalog comment
Madhusudhan-MSFT Oct 18, 2024
69462af
Fix for forbidden-pattern error by spellchecking bot.
Madhusudhan-MSFT Oct 18, 2024
016c618
Remove <Natvis> element from vcxproj.filters
Madhusudhan-MSFT Oct 18, 2024
b4db8df
Refactor error handling that includes logging and update test cases
Madhusudhan-MSFT Oct 21, 2024
28b0a12
Extend group policy tests to include package catalog management opera…
Madhusudhan-MSFT Oct 21, 2024
e1902d9
Merge branch 'microsoft:master' into user/masudars/WinGet_Source_COM_API
Madhusudhan-MSFT Oct 21, 2024
127b4c7
Simplify default source type retrieval in PackageManager
Madhusudhan-MSFT Oct 21, 2024
ea785f3
Remove AcceptSourceAgreements property and related logic
Madhusudhan-MSFT Oct 23, 2024
4dcdc2a
[PR Feedback]:Refactor error handling and add admin/system check func…
Madhusudhan-MSFT Oct 23, 2024
f92b947
Fix indentation in RemovePackageCatalogOptions clsid
Madhusudhan-MSFT Oct 23, 2024
10f92be
Refactor argument validation in AddPackageCatalogAsync & RemovePackag…
Madhusudhan-MSFT Oct 23, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions src/AppInstallerCLIPackage/Package.appxmanifest
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,8 @@
</com:Class>
<com:Class Id ="6484A61D-50FA-41F0-B71E-F4370C6EB37C" DisplayName="AuthenticationArguments Server">
</com:Class>
<com:Class Id="D58C7E4C-70E6-476C-A5D4-80341ED80252" DisplayName="AddPackageCatalogOptions Server">
</com:Class>
</com:ExeServer>
</com:ComServer>
</com:Extension>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@
clsid="{80CF9D63-5505-4342-B9B4-BB87895CA8BB}"
threadingModel="Both"
description="PackageManagerSettings"/>
<comClass
Madhusudhan-MSFT marked this conversation as resolved.
Show resolved Hide resolved
clsid="{24E6F1FA-E4C3-4ACD-965D-DF213FD58F15}"
threadingModel="Both"
description="AddPackageCatalogOptions"/>
</file>

</assembly>
5 changes: 4 additions & 1 deletion src/Microsoft.Management.Deployment.OutOfProc/Factory.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ namespace Microsoft::Management::Deployment::OutOfProc
constexpr CLSID CLSID_CreateCompositePackageCatalogOptions = { 0x526534B8, 0x7E46, 0x47C8, { 0x84, 0x16, 0xB1, 0x68, 0x5C, 0x32, 0x7D, 0x37 } }; //526534B8-7E46-47C8-8416-B1685C327D37
constexpr CLSID CLSID_DownloadOptions = { 0x4CBABE76, 0x7322, 0x4BE4, { 0x9C, 0xEA, 0x25, 0x89, 0xA8, 0x06, 0x82, 0xDC } }; //4CBABE76-7322-4BE4-9CEA-2589A80682DC
constexpr CLSID CLSID_AuthenticationArguments = { 0xBA580786, 0xBDE3, 0x4F6C, { 0xB8, 0xF3, 0x44, 0x69, 0x8A, 0xC8, 0x71, 0x1A } }; //BA580786-BDE3-4F6C-B8F3-44698AC8711A
constexpr CLSID CLSID_AddPackageCatalogOptions = { 0xDB9D012D, 0x00D7, 0x47EE, { 0x8F, 0xB1, 0x60, 0x6E, 0x10, 0xAC, 0x4F, 0x51 } }; //DB9D012D-00D7-47EE-8FB1-606E10AC4F51
#else
constexpr CLSID CLSID_PackageManager = { 0x74CB3139, 0xB7C5, 0x4B9E, { 0x93, 0x88, 0xE6, 0x61, 0x6D, 0xEA, 0x28, 0x8C } }; //74CB3139-B7C5-4B9E-9388-E6616DEA288C
constexpr CLSID CLSID_InstallOptions = { 0x44FE0580, 0x62F7, 0x44D4, { 0x9E, 0x91, 0xAA, 0x96, 0x14, 0xAB, 0x3E, 0x86 } }; //44FE0580-62F7-44D4-9E91-AA9614AB3E86
Expand All @@ -30,6 +31,7 @@ namespace Microsoft::Management::Deployment::OutOfProc
constexpr CLSID CLSID_CreateCompositePackageCatalogOptions = { 0xEE160901, 0xB317, 0x4EA7, { 0x9C, 0xC6, 0x53, 0x55, 0xC6, 0xD7, 0xD8, 0xA7 } }; //EE160901-B317-4EA7-9CC6-5355C6D7D8A7
constexpr CLSID CLSID_DownloadOptions = { 0x8EF324ED, 0x367C, 0x4880, { 0x83, 0xE5, 0xBB, 0x2A, 0xBD, 0x0B, 0x72, 0xF6 } }; //8EF324ED-367C-4880-83E5-BB2ABD0B72F6
constexpr CLSID CLSID_AuthenticationArguments = { 0x6484A61D, 0x50FA, 0x41F0, { 0xB7, 0x1E, 0xF4, 0x37, 0x0C, 0x6E, 0xB3, 0x7C } }; //6484A61D-50FA-41F0-B71E-F4370C6EB37C
constexpr CLSID CLSID_AddPackageCatalogOptions = { 0xD58C7E4C, 0x70E6, 0x476C, { 0xA5, 0xD4, 0x80, 0x34, 0x1E, 0xD8, 0x02, 0x52 } }; //D58C7E4C-70E6-476C-A5D4-80341ED80252
#endif

struct NameCLSIDPair
Expand All @@ -38,7 +40,7 @@ namespace Microsoft::Management::Deployment::OutOfProc
GUID CLSID;
};

constexpr std::array<NameCLSIDPair, 8> s_nameCLSIDPairs
constexpr std::array<NameCLSIDPair, 9> s_nameCLSIDPairs
{
NameCLSIDPair{ L"Microsoft.Management.Deployment.PackageManager"sv, CLSID_PackageManager },
NameCLSIDPair{ L"Microsoft.Management.Deployment.InstallOptions"sv, CLSID_InstallOptions },
Expand All @@ -48,6 +50,7 @@ namespace Microsoft::Management::Deployment::OutOfProc
NameCLSIDPair{ L"Microsoft.Management.Deployment.CreateCompositePackageCatalogOptions"sv, CLSID_CreateCompositePackageCatalogOptions },
NameCLSIDPair{ L"Microsoft.Management.Deployment.DownloadOptions"sv, CLSID_DownloadOptions },
NameCLSIDPair{ L"Microsoft.Management.Deployment.AuthenticationArguments"sv, CLSID_AuthenticationArguments },
NameCLSIDPair{ L"Microsoft.Management.Deployment.AddPackageCatalogOptions"sv, CLSID_AddPackageCatalogOptions }
};

bool IsCLSIDPresent(const GUID& clsid)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright (c) Microsoft Corporation.
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.

namespace Microsoft.Management.Deployment.Projection
Expand Down Expand Up @@ -114,7 +114,19 @@ internal static class ClassesDefinition
{
[ClsidContext.InProc] = new Guid("80CF9D63-5505-4342-B9B4-BB87895CA8BB"),
}
}
},

[typeof(AddPackageCatalogOptions)] = new()
{
ProjectedClassType = typeof(AddPackageCatalogOptions),
InterfaceType = typeof(IAddPackageCatalogOptions),
Clsids = new Dictionary<ClsidContext, Guid>()
{
[ClsidContext.InProc] = new Guid("24E6F1FA-E4C3-4ACD-965D-DF213FD58F15"),
[ClsidContext.OutOfProc] = new Guid("DB9D012D-00D7-47EE-8FB1-606E10AC4F51"),
[ClsidContext.OutOfProcDev] = new Guid("D58C7E4C-70E6-476C-A5D4-80341ED80252"),
}
},
};

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright (c) Microsoft Corporation.
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.

namespace Microsoft.Management.Deployment.Projection
Expand Down Expand Up @@ -33,6 +33,8 @@ public WinGetProjectionFactory(IInstanceInitializer instanceInitializer)

public AuthenticationArguments CreateAuthenticationArguments() => InstanceInitializer.CreateInstance<AuthenticationArguments>();

public PackageManagerSettings CreatePackageManagerSettings() => InstanceInitializer.CreateInstance<PackageManagerSettings>();
public PackageManagerSettings CreatePackageManagerSettings() => InstanceInitializer.CreateInstance<PackageManagerSettings>();

public AddPackageCatalogOptions CreateAddPackageCatalogOptions() => InstanceInitializer.CreateInstance<AddPackageCatalogOptions>();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
#include "pch.h"
#pragma warning( push )
#pragma warning ( disable : 4467 6388)
// 6388 Allow CreateInstance.
#include <wil\cppwinrt_wrl.h>
// 4467 Allow use of uuid attribute for com object creation.
#include "AddPackageCatalogOptions.h"
#pragma warning( pop )
#include "AddPackageCatalogOptions.g.cpp"
#include "Converters.h"
#include "Helpers.h"

namespace winrt::Microsoft::Management::Deployment::implementation
{
hstring AddPackageCatalogOptions::CatalogName()
{
return hstring(m_catalogName);
}
void AddPackageCatalogOptions::CatalogName(hstring const& value)
{
m_catalogName = value;
}
hstring AddPackageCatalogOptions::SourceUri()
{
return hstring(m_sourceUri);
}
void AddPackageCatalogOptions::SourceUri(hstring const& value)
{
m_sourceUri = value;
}
hstring AddPackageCatalogOptions::Type()
{
return hstring(m_type);
}
void AddPackageCatalogOptions::Type(hstring const& value)
{
m_type = value;
}
hstring AddPackageCatalogOptions::Arguments()
{
return hstring(m_arguments);
}
void AddPackageCatalogOptions::Arguments(hstring const& value)
{
m_arguments = value;
}
winrt::Microsoft::Management::Deployment::PackageCatalogTrustLevel AddPackageCatalogOptions::TrustLevel()
{
return m_trustLevel;
}
void AddPackageCatalogOptions::TrustLevel(winrt::Microsoft::Management::Deployment::PackageCatalogTrustLevel const& value)
{
m_trustLevel = value;
}
hstring AddPackageCatalogOptions::CustomHeader()
{
return hstring(m_customHeader);
}
void AddPackageCatalogOptions::CustomHeader(hstring const& value)
{
m_customHeader = value;
}

CoCreatableMicrosoftManagementDeploymentClass(AddPackageCatalogOptions);
}
51 changes: 51 additions & 0 deletions src/Microsoft.Management.Deployment/AddPackageCatalogOptions.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
#pragma once
#include "AddPackageCatalogOptions.g.h"
#include "public/ComClsids.h"

namespace winrt::Microsoft::Management::Deployment::implementation
{
[uuid(WINGET_OUTOFPROC_COM_CLSID_AddPackageCatalogOptions)]
struct AddPackageCatalogOptions : AddPackageCatalogOptionsT<AddPackageCatalogOptions>
{
AddPackageCatalogOptions() = default;

hstring CatalogName();
void CatalogName(hstring const& value);

hstring SourceUri();
void SourceUri(hstring const& value);

hstring Type();
void Type(hstring const& value);

hstring Arguments();
void Arguments(hstring const& value);

winrt::Microsoft::Management::Deployment::PackageCatalogTrustLevel TrustLevel();
void TrustLevel(winrt::Microsoft::Management::Deployment::PackageCatalogTrustLevel const& value);

hstring CustomHeader();
void CustomHeader(hstring const& value);

#if !defined(INCLUDE_ONLY_INTERFACE_METHODS)
private:
std::wstring m_catalogName = L"";
std::wstring m_sourceUri = L"";
std::wstring m_type = L"";
std::wstring m_arguments = L"";
winrt::Microsoft::Management::Deployment::PackageCatalogTrustLevel m_trustLevel = winrt::Microsoft::Management::Deployment::PackageCatalogTrustLevel::None;
std::wstring m_customHeader = L"";
#endif
};
}

#if !defined(INCLUDE_ONLY_INTERFACE_METHODS)
namespace winrt::Microsoft::Management::Deployment::factory_implementation
{
struct AddPackageCatalogOptions : AddPackageCatalogOptionsT<AddPackageCatalogOptions, implementation::AddPackageCatalogOptions>
{
};
}
#endif
25 changes: 25 additions & 0 deletions src/Microsoft.Management.Deployment/AddPackageCatalogResult.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
#include "pch.h"
#include "AddPackageCatalogResult.h"
#include "AddPackageCatalogResult.g.cpp"
#include <wil\cppwinrt_wrl.h>

namespace winrt::Microsoft::Management::Deployment::implementation
{
void AddPackageCatalogResult::Initialize(
winrt::Microsoft::Management::Deployment::AddPackageCatalogStatus status,
winrt::hresult extendedErrorCode)
{
m_status = status;
m_extendedErrorCode = extendedErrorCode;
}
winrt::Microsoft::Management::Deployment::AddPackageCatalogStatus AddPackageCatalogResult::Status()
{
return m_status;
}
winrt::hresult AddPackageCatalogResult::ExtendedErrorCode()
{
return m_extendedErrorCode;
}
}
28 changes: 28 additions & 0 deletions src/Microsoft.Management.Deployment/AddPackageCatalogResult.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
#pragma once
#include "AddPackageCatalogResult.g.h"

namespace winrt::Microsoft::Management::Deployment::implementation
{
struct AddPackageCatalogResult : AddPackageCatalogResultT<AddPackageCatalogResult>
{
AddPackageCatalogResult() = default;

#if !defined(INCLUDE_ONLY_INTERFACE_METHODS)
void Initialize(
winrt::Microsoft::Management::Deployment::AddPackageCatalogStatus status,
winrt::hresult extendedErrorCode);
#endif

winrt::Microsoft::Management::Deployment::AddPackageCatalogStatus Status();
winrt::hresult ExtendedErrorCode();

#if !defined(INCLUDE_ONLY_INTERFACE_METHODS)
private:
winrt::Microsoft::Management::Deployment::AddPackageCatalogStatus m_status = winrt::Microsoft::Management::Deployment::AddPackageCatalogStatus::Ok;
winrt::hresult m_extendedErrorCode = S_OK;
#endif
};
}
#pragma once
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,8 @@
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="AddPackageCatalogOptions.h" />
<ClInclude Include="AddPackageCatalogResult.h" />
<ClInclude Include="AuthenticationArguments.h" />
<ClInclude Include="AuthenticationInfo.h" />
<ClInclude Include="CatalogPackage.h" />
Expand Down Expand Up @@ -217,11 +219,16 @@
<ClInclude Include="pch.h" />
<ClInclude Include="Public\CoCreatableMicrosoftManagementDeploymentClass.h" />
<ClInclude Include="Public\ComClsids.h" />
<ClInclude Include="RemovePackageCatalogResult.h" />
<ClInclude Include="ResetPackageCatalogResult.h" />
<ClInclude Include="SourceAgreement.h" />
<ClInclude Include="UninstallOptions.h" />
<ClInclude Include="UninstallResult.h" />
<ClInclude Include="UpdatePackageCatalogResult.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="AddPackageCatalogOptions.cpp" />
<ClCompile Include="AddPackageCatalogResult.cpp" />
<ClCompile Include="AuthenticationArguments.cpp" />
<ClCompile Include="AuthenticationInfo.cpp" />
<ClCompile Include="CatalogPackage.cpp" />
Expand Down Expand Up @@ -257,10 +264,13 @@
<ClCompile Include="pch.cpp">
<PrecompiledHeader>Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="RemovePackageCatalogResult.cpp" />
<ClCompile Include="ResetPackageCatalogResult.cpp" />
<ClCompile Include="SourceAgreement.cpp" />
<ClCompile Include="$(GeneratedFilesDir)module.g.cpp" />
<ClCompile Include="UninstallOptions.cpp" />
<ClCompile Include="UninstallResult.cpp" />
<ClCompile Include="UpdatePackageCatalogResult.cpp" />
</ItemGroup>
<ItemGroup>
<None Include="Microsoft_Management_Deployment.def" />
Expand Down
28 changes: 28 additions & 0 deletions src/Microsoft.Management.Deployment/PackageManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1066,5 +1066,33 @@ namespace winrt::Microsoft::Management::Deployment::implementation
return GetPackageOperation<Deployment::DownloadResult, Deployment::PackageDownloadProgress, Deployment::DownloadOptions, Deployment::PackageDownloadProgressState>(true, std::move(queueItem));
}

winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::AddPackageCatalogResult, winrt::Microsoft::Management::Deployment::AddPackageCatalogProgress> PackageManager::AddPackageCatalogAsync(winrt::Microsoft::Management::Deployment::AddPackageCatalogOptions options)
{
// TODO: Implement AddPackageCatalogAsync
return winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::AddPackageCatalogResult, winrt::Microsoft::Management::Deployment::AddPackageCatalogProgress>();
}

winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::RemovePackageCatalogResult, winrt::Microsoft::Management::Deployment::RemovePackageCatalogProgress> PackageManager::RemovePackageCatalogAsync(hstring const& catalogName)
{
UNREFERENCED_PARAMETER(catalogName);

// TODO: Implement RemovePackageCatalogAsync
return winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::RemovePackageCatalogResult, winrt::Microsoft::Management::Deployment::RemovePackageCatalogProgress>();
}

winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::ResetPackageCatalogResult, winrt::Microsoft::Management::Deployment::ResetPackageCatalogProgress> PackageManager::ResetPackageCatalogAsync()
{
// TODO: Implement ResetPackageCatalogAsync
return winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::ResetPackageCatalogResult, winrt::Microsoft::Management::Deployment::ResetPackageCatalogProgress>();
}

winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::UpdatePackageCatalogResult, winrt::Microsoft::Management::Deployment::UpdatePackageCatalogProgress> PackageManager::UpdatePackageCatalogAsync(hstring const& catalogName)
{
UNREFERENCED_PARAMETER(catalogName);

// TODO: Implement UpdatePackageCatalogAsync
return winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::UpdatePackageCatalogResult, winrt::Microsoft::Management::Deployment::UpdatePackageCatalogProgress>();
}

CoCreatableMicrosoftManagementDeploymentClass(PackageManager);
}
7 changes: 7 additions & 0 deletions src/Microsoft.Management.Deployment/PackageManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,13 @@ namespace winrt::Microsoft::Management::Deployment::implementation
DownloadPackageAsync(winrt::Microsoft::Management::Deployment::CatalogPackage package, winrt::Microsoft::Management::Deployment::DownloadOptions options);
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::DownloadResult, winrt::Microsoft::Management::Deployment::PackageDownloadProgress>
GetDownloadProgress(winrt::Microsoft::Management::Deployment::CatalogPackage package, winrt::Microsoft::Management::Deployment::PackageCatalogInfo catalogInfo);
// Contract 11.0
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::AddPackageCatalogResult, winrt::Microsoft::Management::Deployment::AddPackageCatalogProgress>
AddPackageCatalogAsync(winrt::Microsoft::Management::Deployment::AddPackageCatalogOptions options);
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::RemovePackageCatalogResult, winrt::Microsoft::Management::Deployment::RemovePackageCatalogProgress>
RemovePackageCatalogAsync(hstring const& catalogName);
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::ResetPackageCatalogResult, winrt::Microsoft::Management::Deployment::ResetPackageCatalogProgress> ResetPackageCatalogAsync();
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Management::Deployment::UpdatePackageCatalogResult, winrt::Microsoft::Management::Deployment::UpdatePackageCatalogProgress> UpdatePackageCatalogAsync(hstring const& catalogName);
};

#if !defined(INCLUDE_ONLY_INTERFACE_METHODS)
Expand Down
Loading
Loading