Model/AppGroupSnapshotAllOfGroupSteps.ps1
# # Login Enterprise # v8.0-preview [API Console (Swagger)](/publicApi/swagger/index.html?urls.primaryName=Login%20Enterprise%20API%20v8-preview), [Documentation (ReDoc)](/publicApi/v8-preview/docs/index.html) v7.0 [API Console (Swagger)](/publicApi/swagger/index.html?urls.primaryName=Login%20Enterprise%20API%20v7), [Documentation (ReDoc)](/publicApi/v7/docs/index.html) v6.0 [API Console (Swagger)](/publicApi/swagger/index.html?urls.primaryName=Login%20Enterprise%20API%20v6), [Documentation (ReDoc)](/publicApi/v6/docs/index.html) <br><b>API v8 (preview) – Introduced in Login Enterprise v6.0 and subject to breaking changes.</b></br> <br><b>API v7 – is the recommended version to use. It is the actively developed version starting with Login Enterprise v6.0.</b></br> <br><b>API v6 – is currently supported, but unmaintained as of v6.0.</b></br> <br><b>API v5 and v4 - These versions are removed in v6.0.</b></br> The Login Enterprise Public API provides documentation and Swagger per version within the product. For additional information please refer to the [documentation](https://support.loginvsi.com/hc/en-us/articles/360009534760) on our website. # Version: 7.0 # Generated by OpenAPI Generator: https://openapi-generator.tech # <# .SYNOPSIS No summary available. .DESCRIPTION Step snapshot .PARAMETER Json JSON object .OUTPUTS AppGroupSnapshotAllOfGroupSteps<PSCustomObject> #> function ConvertFrom-LEJsonToAppGroupSnapshotAllOfGroupSteps { [CmdletBinding()] Param ( [AllowEmptyString()] [string]$Json ) Process { $match = 0 $matchType = $null $matchInstance = $null # try to match AppGroupSnapshot defined in the oneOf schemas try { $matchInstance = ConvertFrom-LEJsonToAppGroupSnapshot $Json foreach($property in $matchInstance.PsObject.Properties) { if ($null -ne $property.Value) { $matchType = "AppGroupSnapshot" $match++ break } } } catch { # fail to match the schema defined in oneOf, proceed to the next one Write-Debug "Failed to match 'AppGroupSnapshot' defined in oneOf (LEAppGroupSnapshotAllOfGroupSteps). Proceeding to the next one if any." } # try to match AppInvocationSnapshot defined in the oneOf schemas try { $matchInstance = ConvertFrom-LEJsonToAppInvocationSnapshot $Json foreach($property in $matchInstance.PsObject.Properties) { if ($null -ne $property.Value) { $matchType = "AppInvocationSnapshot" $match++ break } } } catch { # fail to match the schema defined in oneOf, proceed to the next one Write-Debug "Failed to match 'AppInvocationSnapshot' defined in oneOf (LEAppGroupSnapshotAllOfGroupSteps). Proceeding to the next one if any." } # try to match DelaySnapshot defined in the oneOf schemas try { $matchInstance = ConvertFrom-LEJsonToDelaySnapshot $Json foreach($property in $matchInstance.PsObject.Properties) { if ($null -ne $property.Value) { $matchType = "DelaySnapshot" $match++ break } } } catch { # fail to match the schema defined in oneOf, proceed to the next one Write-Debug "Failed to match 'DelaySnapshot' defined in oneOf (LEAppGroupSnapshotAllOfGroupSteps). Proceeding to the next one if any." } if ($match -gt 1) { throw "Error! The JSON payload matches more than one type defined in oneOf schemas ([AppGroupSnapshot, AppInvocationSnapshot, DelaySnapshot]). JSON Payload: $($Json)" } elseif ($match -eq 1) { return [PSCustomObject]@{ "ActualType" = ${matchType} "ActualInstance" = ${matchInstance} "OneOfSchemas" = @("AppGroupSnapshot", "AppInvocationSnapshot", "DelaySnapshot") } } else { throw "Error! The JSON payload doesn't matches any type defined in oneOf schemas ([AppGroupSnapshot, AppInvocationSnapshot, DelaySnapshot]). JSON Payload: $($Json)" } } } |