Module/Rule.nxPackage/Convert/Methods.ps1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. <# .SYNOPSIS Retreives the nxPackage name from the check-content element in the xccdf .PARAMETER FixText Specifies the FixText element in the xccdf #> function Get-nxPackageName { [CmdletBinding()] [OutputType([string])] param ( [Parameter(Mandatory = $true)] [string] $FixText ) Write-Verbose "[$($MyInvocation.MyCommand.Name)]" try { $null = $FixText -match $regularExpression.nxPackage $nxPackageName = $Matches['packageName'] return $nxPackageName } catch { Write-Verbose "[$($MyInvocation.MyCommand.Name)] nxPackageName : Not Found" return $null } } <# .SYNOPSIS Retreives the nxPackage InstallState from the check-content element in the xccdf .PARAMETER FixText Specifies the check-content element in the xccdf #> function Get-nxPackageState { [CmdletBinding()] [OutputType([string])] param ( [Parameter(Mandatory = $true)] [string] $FixText ) try { $null = $FixText -match $regularExpression.nxPackage switch ($Matches['packageState']) { 'install' {return [ensure]::Present} 'remove' {return [ensure]::Absent} default {return $null} } } catch { Write-Verbose "[$($MyInvocation.MyCommand.Name)] nxPackageState : Not Found" return $null } } |