Model/VirtualSite.ps1
# # SMServer V6 # Syncplify Server! REST API # Version: 1.0.0 # Generated by OpenAPI Generator: https://openapi-generator.tech # <# .SYNOPSIS No summary available. .DESCRIPTION When adding a new virtual site the required fields are 'id', 'name', and at least one binding must be defined .PARAMETER Id ID of the virtual site. Only letters and numbers, no spaces, no special characters .PARAMETER Name Name of the virtual site (can be anything) .PARAMETER AutoStart Should this virtualsite be automatically started when the program starts? .PARAMETER AutoRestart Should this virtualsite be automatically restarted if its process ""dies"" unexpectedly? .PARAMETER ServiceStatus No description available. .PARAMETER NodeBindings Multiple bindings are supported for each node of each virtual site .PARAMETER AdminUiLogo Logo to be displayed in the Admin UI .PARAMETER AdminUiLogoType MIME-Type of the logo to be displayed in the Admin UI .PARAMETER AdminUiDisclaimer Legal disclaimer (free text) to be displayed on the Admin UI's login page .OUTPUTS VirtualSite<PSCustomObject> #> function Initialize-SS6VirtualSite { [CmdletBinding()] Param ( [Parameter(Position = 0, ValueFromPipelineByPropertyName = $true)] [String] ${Id}, [Parameter(Position = 1, ValueFromPipelineByPropertyName = $true)] [String] ${Name}, [Parameter(Position = 2, ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${AutoStart}, [Parameter(Position = 3, ValueFromPipelineByPropertyName = $true)] [System.Nullable[Boolean]] ${AutoRestart}, [Parameter(Position = 4, ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${ServiceStatus}, [Parameter(Position = 5, ValueFromPipelineByPropertyName = $true)] [PSCustomObject[]] ${NodeBindings}, [Parameter(Position = 6, ValueFromPipelineByPropertyName = $true)] [PSCustomObject] ${AdminUiLogo}, [Parameter(Position = 7, ValueFromPipelineByPropertyName = $true)] [String] ${AdminUiLogoType}, [Parameter(Position = 8, ValueFromPipelineByPropertyName = $true)] [String] ${AdminUiDisclaimer} ) Process { 'Creating PSCustomObject: SS6AdminModule => SS6VirtualSite' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $PSO = [PSCustomObject]@{ "id" = ${Id} "name" = ${Name} "autoStart" = ${AutoStart} "autoRestart" = ${AutoRestart} "serviceStatus" = ${ServiceStatus} "nodeBindings" = ${NodeBindings} "adminUiLogo" = ${AdminUiLogo} "adminUiLogoType" = ${AdminUiLogoType} "adminUiDisclaimer" = ${AdminUiDisclaimer} } return $PSO } } <# .SYNOPSIS Convert from JSON to VirtualSite<PSCustomObject> .DESCRIPTION Convert from JSON to VirtualSite<PSCustomObject> .PARAMETER Json Json object .OUTPUTS VirtualSite<PSCustomObject> #> function ConvertFrom-SS6JsonToVirtualSite { Param( [AllowEmptyString()] [string]$Json ) Process { 'Converting JSON to PSCustomObject: SS6AdminModule => SS6VirtualSite' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $JsonParameters = ConvertFrom-Json -InputObject $Json # check if Json contains properties not defined in SS6VirtualSite $AllProperties = ("id", "name", "autoStart", "autoRestart", "serviceStatus", "nodeBindings", "adminUiLogo", "adminUiLogoType", "adminUiDisclaimer") 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 "name"))) { #optional property not found $Name = $null } else { $Name = $JsonParameters.PSobject.Properties["name"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "autoStart"))) { #optional property not found $AutoStart = $null } else { $AutoStart = $JsonParameters.PSobject.Properties["autoStart"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "autoRestart"))) { #optional property not found $AutoRestart = $null } else { $AutoRestart = $JsonParameters.PSobject.Properties["autoRestart"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "serviceStatus"))) { #optional property not found $ServiceStatus = $null } else { $ServiceStatus = $JsonParameters.PSobject.Properties["serviceStatus"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "nodeBindings"))) { #optional property not found $NodeBindings = $null } else { $NodeBindings = $JsonParameters.PSobject.Properties["nodeBindings"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "adminUiLogo"))) { #optional property not found $AdminUiLogo = $null } else { $AdminUiLogo = $JsonParameters.PSobject.Properties["adminUiLogo"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "adminUiLogoType"))) { #optional property not found $AdminUiLogoType = $null } else { $AdminUiLogoType = $JsonParameters.PSobject.Properties["adminUiLogoType"].value } if (!([bool]($JsonParameters.PSobject.Properties.name -match "adminUiDisclaimer"))) { #optional property not found $AdminUiDisclaimer = $null } else { $AdminUiDisclaimer = $JsonParameters.PSobject.Properties["adminUiDisclaimer"].value } $PSO = [PSCustomObject]@{ "id" = ${Id} "name" = ${Name} "autoStart" = ${AutoStart} "autoRestart" = ${AutoRestart} "serviceStatus" = ${ServiceStatus} "nodeBindings" = ${NodeBindings} "adminUiLogo" = ${AdminUiLogo} "adminUiLogoType" = ${AdminUiLogoType} "adminUiDisclaimer" = ${AdminUiDisclaimer} } return $PSO } } |