parts/GetTssSecretObject.ps1
<#
.Synopsis Creates a TssSecret object to output the SecretModel object .Description Creates an instance of the TssSecret class to output the SecretModule object #> param( [pscustomobject]$SecretRecord ) begin { $secretProperties = $SecretRecord.PSObject.Properties.Where({$_.Name -notin 'responseCodes'}).Name $itemProperties = $SecretRecord.items[0].PSObject.Properties.Name } process { $items = @() foreach ($i in $SecretRecord.items) { $item = [TssSecretItem]::new() foreach ($iProp in $itemProperties) { $item.$iProp = $i.$iProp } $items += $item } foreach ($s in $SecretRecord) { $outSecret = [TssSecret]::new() foreach ($sProp in $secretProperties) { if ($sProp -eq 'items') { $outSecret.Items = $items } $outSecret.$sProp = $s.$sProp } } return $outSecret } |