VaporShell.QLDB.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 'QLDBStreamKinesisConfiguration'"

class QLDBStreamKinesisConfiguration : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSQLDBStreamKinesisConfiguration'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qldb-stream-kinesisconfiguration.html'

    hidden [object] $_streamArn
    hidden [object] $_aggregationEnabled

    [string] $StreamArn
    [bool] $AggregationEnabled

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

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

Write-Verbose "Importing class 'QLDBStream'"

class QLDBStream : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSQLDBStream'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html'

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

    [string] $Type = 'AWS::QLDB::Stream'
    [string] $LedgerName
    [string] $StreamName
    [string] $RoleArn
    [string] $InclusiveStartTime
    [string] $ExclusiveEndTime
    [QLDBStreamKinesisConfiguration] $KinesisConfiguration
    [VSTag[]] $Tags
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name LedgerName -Value {
            $this.Properties['LedgerName']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['LedgerName'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name StreamName -Value {
            $this.Properties['StreamName']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['StreamName'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RoleArn -Value {
            $this.Properties['RoleArn']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['RoleArn'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name InclusiveStartTime -Value {
            $this.Properties['InclusiveStartTime']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['InclusiveStartTime'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ExclusiveEndTime -Value {
            $this.Properties['ExclusiveEndTime']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ExclusiveEndTime'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name KinesisConfiguration -Value {
            $this.Properties['KinesisConfiguration']
        } -SecondValue {
            param([ValidateType(([QLDBStreamKinesisConfiguration], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['KinesisConfiguration'] = $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
        }
    }

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

Write-Verbose "Importing class 'QLDBLedger'"

class QLDBLedger : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSQLDBLedger'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::QLDB::Ledger'
    [string] $PermissionsMode
    [bool] $DeletionProtection
    [string] $KmsKey
    [VSTag[]] $Tags
    [string] $Name
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name PermissionsMode -Value {
            $this.Properties['PermissionsMode']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['PermissionsMode'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DeletionProtection -Value {
            $this.Properties['DeletionProtection']
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['DeletionProtection'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name KmsKey -Value {
            $this.Properties['KmsKey']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['KmsKey'] = 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 Name -Value {
            $this.Properties['Name']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Name'] = 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
        }
    }

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