functions/ConvertFrom-S1ConnectionPackageList.ps1
function ConvertFrom-S1ConnectionPackageList { [CmdletBinding()] param([Parameter(Mandatory = $True, ValueFromPipeline = $True)] [string[]] $Lines ) PROCESS { Write-Verbose("Processing line #$lines#") $lines | % { if ($lines -like "*ListPackageOptionsProcessor - Version*") { $parts = $_.Substring($_.IndexOf("ListPackageOptionsProcessor")+30).split(" ").Trim(); $item = @{}; Write-Verbose("Processing line #$line#") for ($i = 0; $i -lt $parts.Count; $i += 2) { Write-Verbose("Processing part $i $($parts[$i]) $($parts[$i+1])#") switch($parts[$i]){ "Version"{$item.Version=$parts[$i + 1].replace(",","")} "Schema"{$item.Schema=$parts[$i + 1]} "<="{$item.Current=$true} Default{$item.Add($parts[$i],$parts[$i + 1])} } }; write-output ([PSCustomObject]$item) # Write-Verbose ([PSCustomObject]$item| ConvertTojson) } } } } |