Public/convert-AllegisIDNProfileElementsToJSON.ps1
function convert-AllegisIDNProfileElementsToJSON ($importfromps) { $buildreference = @() $buildruletype = @() $buildAccountType = @() foreach ($File in $importfromps) { $reference = $null $ruleattribute = $null $reference = $file | ? {$_.type -eq "reference"} $ruleattribute= $file | ? {$_.type -eq "rule"} #building Json for import if ($file.type -eq "reference") { #transformation Build $buildreference+= ", { ""attributeName"":""$($file.attributename)"", ""attributes"":{ ""id"":""$($file.id)"", ""input"":{ ""attributes"":{ ""applicationId"":""$($file.applicationId)"", ""applicationName"":""$($file.applicationname)"", ""attributeName"":""$($file.attributenameofsource)"", ""sourceName"":""$($file.sourcename)"" }, ""type"":""accountAttribute"" } }, ""type"":""$($file.type)"" } " } elseif ($file.type -eq "rule") { $buildruletype+= ", { ""attributeName"":""$($file.attributeName)"", ""attributes"":{ ""id"":""$($file.id)"", ""name"":""$($file.name)"" }, ""type"":""$($file.type)"" } " } else { #Building Direct mapping $buildAccountType+= ", { ""attributeName"":""$($file.attributeName)"", ""attributes"":{ ""applicationId"":""$($file.applicationId)"", ""applicationName"":""$($file.applicationName)"", ""attributeName"":""$($file.attributenameofsource)"", ""sourceName"":""$($file.sourcename)"" }, ""type"":""accountAttribute"" }" } $combine = $buildAccountType + $buildreference + $buildruletype $blah = ($combine | Out-String).Substring(1) $final = "[" + $blah + "]" } return $final } |