Private/New-Win32ApplicationInfo.ps1
|
function New-Win32ApplicationInfo { [Diagnostics.CodeAnalysis.SuppressMessageAttribute('PSUseShouldProcessForStateChangingFunctions', '', Justification = 'Only builds an in-memory hashtable; no system state is changed.')] [CmdletBinding()] [OutputType([Hashtable])] param( [Parameter(Mandatory = $true)] [string]$displayName, [Parameter(Mandatory = $true)] [string]$description, [Parameter(Mandatory = $true)] [string]$publisher, [string]$notes, [string]$owner, [string]$developer, [string]$version, [bool]$isFeatured = $false, [string]$privacyInformationUrl, [string]$informationUrl ) $CommonParameters = [System.Management.Automation.PSCmdlet]::CommonParameters + [System.Management.Automation.PSCmdlet]::OptionalCommonParameters $ApplicationInfoHashtable = @{} foreach ($param in $PSBoundParameters.Keys) { if ($param -notin $CommonParameters -and $PSBoundParameters[$param]) { $ApplicationInfoHashtable[$param] = $PSBoundParameters[$param] } } $ApplicationInfoHashtable['isFeatured'] = $isFeatured return $ApplicationInfoHashtable } |