Add lazy property loading support to Get-CCMApplication function #59
+29
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements the ability to load lazy properties for CCM classes, starting with the
Get-CCMApplication
function.Problem
Configuration Manager classes like
CCM_Application
use lazy-loaded properties such asAppDTs
(deployment types) that are not populated in initial CIM queries. These properties contain important information but require additional queries to load, resulting in performance implications.Solution
Added a new
-IncludeLazyProperties
switch parameter toGet-CCMApplication
that enables lazy property loading when needed:Implementation Details
-IncludeLazyProperties
is specified, the function performs a second, more specific CIM query for each application using itsId
andRevision
as filtersAppDTs
that are normally null/emptyBackward Compatibility
Performance Considerations
The feature significantly increases network activity as each application requires an additional CIM query. This is why it's disabled by default and should only be used when lazy properties are specifically needed.
Fixes #47.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.