VaporShell.Transfer.Classes.ps1

using namespace System
using namespace System.Collections
using namespace System.Collections.Generic
using namespace System.IO
using namespace System.Management.Automation
[CmdletBinding()]
Param()

Write-Verbose "Importing class 'TransferUserHomeDirectoryMapEntry'"

class TransferUserHomeDirectoryMapEntry : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSTransferUserHomeDirectoryMapEntry'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-user-homedirectorymapentry.html'

    hidden [object] $_entry
    hidden [object] $_target

    [string] $Entry
    [string] $Target

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Entry -Value {
            $this._entry
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._entry = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Target -Value {
            $this._target
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._target = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

    TransferUserHomeDirectoryMapEntry() : base() {}
    TransferUserHomeDirectoryMapEntry([IDictionary] $props) : base($props) {}
    TransferUserHomeDirectoryMapEntry([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'TransferServerProtocolDetails'"

class TransferServerProtocolDetails : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSTransferServerProtocolDetails'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-protocoldetails.html'

    hidden [object] $_passiveIp

    [string] $PassiveIp

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name PassiveIp -Value {
            $this._passiveIp
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._passiveIp = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

    TransferServerProtocolDetails() : base() {}
    TransferServerProtocolDetails([IDictionary] $props) : base($props) {}
    TransferServerProtocolDetails([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'TransferUserSshPublicKey'"

class TransferUserSshPublicKey : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSTransferUserSshPublicKey'



    hidden [void] _addAccessors() {
    }

    TransferUserSshPublicKey() : base() {}
    TransferUserSshPublicKey([IDictionary] $props) : base($props) {}
    TransferUserSshPublicKey([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'TransferServerIdentityProviderDetails'"

class TransferServerIdentityProviderDetails : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSTransferServerIdentityProviderDetails'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html'

    hidden [object] $_directoryId
    hidden [object] $_invocationRole
    hidden [object] $_url

    [string] $DirectoryId
    [string] $InvocationRole
    [string] $Url

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name DirectoryId -Value {
            $this._directoryId
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._directoryId = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name InvocationRole -Value {
            $this._invocationRole
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._invocationRole = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Url -Value {
            $this._url
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._url = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

    TransferServerIdentityProviderDetails() : base() {}
    TransferServerIdentityProviderDetails([IDictionary] $props) : base($props) {}
    TransferServerIdentityProviderDetails([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'TransferServerEndpointDetails'"

class TransferServerEndpointDetails : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSTransferServerEndpointDetails'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html'

    hidden [object] $_addressAllocationIds
    hidden [object] $_vpcId
    hidden [object] $_vpcEndpointId
    hidden [object] $_securityGroupIds
    hidden [object] $_subnetIds

    [string[]] $AddressAllocationIds
    [string] $VpcId
    [string] $VpcEndpointId
    [string[]] $SecurityGroupIds
    [string[]] $SubnetIds

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name AddressAllocationIds -Value {
            $this._addressAllocationIds
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._addressAllocationIds = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name VpcId -Value {
            $this._vpcId
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._vpcId = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name VpcEndpointId -Value {
            $this._vpcEndpointId
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._vpcEndpointId = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SecurityGroupIds -Value {
            $this._securityGroupIds
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._securityGroupIds = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SubnetIds -Value {
            $this._subnetIds
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._subnetIds = @($value)
        }
    }

    TransferServerEndpointDetails() : base() {}
    TransferServerEndpointDetails([IDictionary] $props) : base($props) {}
    TransferServerEndpointDetails([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'TransferUserPosixProfile'"

class TransferUserPosixProfile : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSTransferUserPosixProfile'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-user-posixprofile.html'

    hidden [object] $_uid
    hidden [object] $_secondaryGids
    hidden [object] $_gid

    [double] $Uid
    [double[]] $SecondaryGids
    [double] $Gid

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Uid -Value {
            $this._uid
        } -SecondValue {
            param([ValidateType(([double], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._uid = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SecondaryGids -Value {
            $this._secondaryGids
        } -SecondValue {
            param([ValidateType(([double], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._secondaryGids = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Gid -Value {
            $this._gid
        } -SecondValue {
            param([ValidateType(([double], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._gid = $value
        }
    }

    TransferUserPosixProfile() : base() {}
    TransferUserPosixProfile([IDictionary] $props) : base($props) {}
    TransferUserPosixProfile([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'TransferServerProtocol'"

class TransferServerProtocol : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSTransferServerProtocol'



    hidden [void] _addAccessors() {
    }

    TransferServerProtocol() : base() {}
    TransferServerProtocol([IDictionary] $props) : base($props) {}
    TransferServerProtocol([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'TransferServer'"

class TransferServer : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSTransferServer'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html'

    hidden [string[]] $_attributes = @('ServerId','Arn')
    hidden [object] $_condition

    [string] $Type = 'AWS::Transfer::Server'
    [string] $LoggingRole
    [TransferServerProtocol[]] $Protocols
    [TransferServerIdentityProviderDetails] $IdentityProviderDetails
    [string] $EndpointType
    [string] $SecurityPolicyName
    [TransferServerProtocolDetails] $ProtocolDetails
    [string] $Domain
    [TransferServerEndpointDetails] $EndpointDetails
    [string] $IdentityProviderType
    [VSTag[]] $Tags
    [string] $Certificate
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name LoggingRole -Value {
            $this.Properties['LoggingRole']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['LoggingRole'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Protocols -Value {
            $this.Properties['Protocols']
        } -SecondValue {
            param([ValidateType(([TransferServerProtocol], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['Protocols'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name IdentityProviderDetails -Value {
            $this.Properties['IdentityProviderDetails']
        } -SecondValue {
            param([ValidateType(([TransferServerIdentityProviderDetails], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['IdentityProviderDetails'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name EndpointType -Value {
            $this.Properties['EndpointType']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['EndpointType'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SecurityPolicyName -Value {
            $this.Properties['SecurityPolicyName']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['SecurityPolicyName'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ProtocolDetails -Value {
            $this.Properties['ProtocolDetails']
        } -SecondValue {
            param([ValidateType(([TransferServerProtocolDetails], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ProtocolDetails'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Domain -Value {
            $this.Properties['Domain']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Domain'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name EndpointDetails -Value {
            $this.Properties['EndpointDetails']
        } -SecondValue {
            param([ValidateType(([TransferServerEndpointDetails], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['EndpointDetails'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name IdentityProviderType -Value {
            $this.Properties['IdentityProviderType']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['IdentityProviderType'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Tags -Value {
            $this.Properties['Tags']
        } -SecondValue {
            param([TransformTag()] [ValidateType(([IDictionary], [psobject], [VSTag]))] [object] $value)
            $this.Properties['Tags'] = [VSTag]::TransformTag($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Certificate -Value {
            $this.Properties['Certificate']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Certificate'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

    TransferServer() : base() {}
    TransferServer([IDictionary] $props) : base($props) {}
    TransferServer([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'TransferUser'"

class TransferUser : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSTransferUser'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html'

    hidden [string[]] $_attributes = @('ServerId','UserName','Arn')
    hidden [object] $_condition

    [string] $Type = 'AWS::Transfer::User'
    [string] $Policy
    [string] $Role
    [string] $HomeDirectory
    [string] $HomeDirectoryType
    [string] $ServerId
    [string] $UserName
    [TransferUserHomeDirectoryMapEntry[]] $HomeDirectoryMappings
    [TransferUserPosixProfile] $PosixProfile
    [TransferUserSshPublicKey[]] $SshPublicKeys
    [VSTag[]] $Tags
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name Policy -Value {
            $this.Properties['Policy']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Policy'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Role -Value {
            $this.Properties['Role']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Role'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name HomeDirectory -Value {
            $this.Properties['HomeDirectory']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['HomeDirectory'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name HomeDirectoryType -Value {
            $this.Properties['HomeDirectoryType']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['HomeDirectoryType'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ServerId -Value {
            $this.Properties['ServerId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ServerId'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name UserName -Value {
            $this.Properties['UserName']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['UserName'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name HomeDirectoryMappings -Value {
            $this.Properties['HomeDirectoryMappings']
        } -SecondValue {
            param([ValidateType(([TransferUserHomeDirectoryMapEntry], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['HomeDirectoryMappings'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PosixProfile -Value {
            $this.Properties['PosixProfile']
        } -SecondValue {
            param([ValidateType(([TransferUserPosixProfile], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['PosixProfile'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SshPublicKeys -Value {
            $this.Properties['SshPublicKeys']
        } -SecondValue {
            param([ValidateType(([TransferUserSshPublicKey], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['SshPublicKeys'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Tags -Value {
            $this.Properties['Tags']
        } -SecondValue {
            param([TransformTag()] [ValidateType(([IDictionary], [psobject], [VSTag]))] [object] $value)
            $this.Properties['Tags'] = [VSTag]::TransformTag($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

    TransferUser() : base() {}
    TransferUser([IDictionary] $props) : base($props) {}
    TransferUser([psobject] $props) : base($props) {}
}