machine-account-subtypes/src/PSSailpoint.MachineAccountSubtypes/Model/SourceSubtypeV2.ps1
|
# # SailPoint Identity Security API - Machine Account Subtypes # Use these APIs to interact with the SailPoint Identity Security platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. # Version: v1 # Generated by OpenAPI Generator: https://openapi-generator.tech # <# .SYNOPSIS No summary available. .DESCRIPTION A machine account subtype defined at the source tier or the connector tier. .PARAMETER Id Unique identifier for the subtype. .PARAMETER TechnicalName Technical name of the subtype. .PARAMETER DisplayName Display name of the subtype. .PARAMETER Description Description of the subtype. .PARAMETER Type Entity type of the subtype. .PARAMETER TargetType Tier the subtype is defined at. `SOURCE` subtypes apply to one source. `CONNECTOR` subtypes apply to every source of a connector type. `CONNECTOR_VARIANT` is reserved for future use. .PARAMETER TargetId Scope key of the subtype. The source ID for `SOURCE` subtypes, or the connector type for `CONNECTOR` subtypes. .PARAMETER TargetName Display name of the target source or connector. .PARAMETER Classification Classification of the subtype. .PARAMETER Origin Tier of the parent subtype this subtype overrides. Set to `CONNECTOR` when a source subtype replaces a connector subtype with the same technical name in a source's effective subtype list. Otherwise `null`. .PARAMETER VarProfile No description available. .PARAMETER Created Creation timestamp. .PARAMETER Modified Last modified timestamp. .PARAMETER Target No description available. .OUTPUTS SourceSubtypeV2<PSCustomObject> #> function Initialize-SourceSubtypeV2 { [CmdletBinding()] Param ( [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${Id}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${TechnicalName}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${DisplayName}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${Description}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${Type}, [Parameter(ValueFromPipelineByPropertyName = $true)] [ValidateSet("SOURCE", "CONNECTOR", "CONNECTOR_VARIANT")] [String] ${TargetType}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${TargetId}, [Parameter(ValueFromPipelineByPropertyName = $true)] [String] ${TargetName}, [Parameter(ValueFromPipelineByPropertyName = $true)] [ValidateSet("MACHINE")] [String] ${Classification}, [Parameter(ValueFromPipelineByPropertyName = $true)] [ValidateSet("SOURCE", "CONNECTOR", "CONNECTOR_VARIANT")] [String] ${Origin}, [Parameter(ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${VarProfile}, [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[System.DateTime]] ${Created}, [Parameter(ValueFromPipelineByPropertyName = $true)] [System.Nullable[System.DateTime]] ${Modified}, [Parameter(ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${Target} ) Process { 'Creating PSCustomObject: PSSailpoint.MachineAccountSubtypes => SourceSubtypeV2' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $PSO = [PSCustomObject]@{ "id" = ${Id} "technicalName" = ${TechnicalName} "displayName" = ${DisplayName} "description" = ${Description} "type" = ${Type} "targetType" = ${TargetType} "targetId" = ${TargetId} "targetName" = ${TargetName} "classification" = ${Classification} "origin" = ${Origin} "profile" = ${VarProfile} "created" = ${Created} "modified" = ${Modified} "target" = ${Target} } return $PSO } } <# .SYNOPSIS Convert from JSON to SourceSubtypeV2<PSCustomObject> .DESCRIPTION Convert from JSON to SourceSubtypeV2<PSCustomObject> .PARAMETER Json Json object .OUTPUTS SourceSubtypeV2<PSCustomObject> #> function ConvertFrom-JsonToSourceSubtypeV2 { Param( [AllowEmptyString()] [string]$Json ) Process { 'Converting JSON to PSCustomObject: PSSailpoint.MachineAccountSubtypes => SourceSubtypeV2' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $JsonParameters = ConvertFrom-Json -InputObject $Json # check if Json contains properties not defined in SourceSubtypeV2 $AllProperties = ("id", "technicalName", "displayName", "description", "type", "targetType", "targetId", "targetName", "classification", "origin", "profile", "systemManaged", "created", "modified", "target") foreach ($name in $JsonParameters.PsObject.Properties.Name) { if (!($AllProperties.Contains($name))) { throw "Error! JSON key '$name' not found in the properties: $($AllProperties)" } } if (!([bool]($JsonParameters.PSobject.Properties.name -match "id"))) { #optional property not found $Id = $null } else { $Id = $JsonParameters.PSobject.Properties["id"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "technicalName"))) { #optional property not found $TechnicalName = $null } else { $TechnicalName = $JsonParameters.PSobject.Properties["technicalName"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "displayName"))) { #optional property not found $DisplayName = $null } else { $DisplayName = $JsonParameters.PSobject.Properties["displayName"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "description"))) { #optional property not found $Description = $null } else { $Description = $JsonParameters.PSobject.Properties["description"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "type"))) { #optional property not found $Type = $null } else { $Type = $JsonParameters.PSobject.Properties["type"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "targetType"))) { #optional property not found $TargetType = $null } else { $TargetType = $JsonParameters.PSobject.Properties["targetType"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "targetId"))) { #optional property not found $TargetId = $null } else { $TargetId = $JsonParameters.PSobject.Properties["targetId"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "targetName"))) { #optional property not found $TargetName = $null } else { $TargetName = $JsonParameters.PSobject.Properties["targetName"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "classification"))) { #optional property not found $Classification = $null } else { $Classification = $JsonParameters.PSobject.Properties["classification"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "origin"))) { #optional property not found $Origin = $null } else { $Origin = $JsonParameters.PSobject.Properties["origin"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "profile"))) { #optional property not found $VarProfile = $null } else { $VarProfile = $JsonParameters.PSobject.Properties["profile"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "systemManaged"))) { #optional property not found $SystemManaged = $null } else { $SystemManaged = $JsonParameters.PSobject.Properties["systemManaged"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "created"))) { #optional property not found $Created = $null } else { $Created = $JsonParameters.PSobject.Properties["created"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "modified"))) { #optional property not found $Modified = $null } else { $Modified = $JsonParameters.PSobject.Properties["modified"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "target"))) { #optional property not found $Target = $null } else { $Target = $JsonParameters.PSobject.Properties["target"].value } $PSO = [PSCustomObject]@{ "id" = ${Id} "technicalName" = ${TechnicalName} "displayName" = ${DisplayName} "description" = ${Description} "type" = ${Type} "targetType" = ${TargetType} "targetId" = ${TargetId} "targetName" = ${TargetName} "classification" = ${Classification} "origin" = ${Origin} "profile" = ${VarProfile} "systemManaged" = ${SystemManaged} "created" = ${Created} "modified" = ${Modified} "target" = ${Target} } return $PSO } } |