Export/Private/New-ApplicationGatewayHttpListeners.ps1
function Global:New-ApplicationGatewayHttpListeners { <# .SYNOPSIS ... .EXAMPLE ... .PARAMETER xxx ... #> [CmdletBinding()] param ( [Parameter(Mandatory = $true)] $IpConfiguration, [Parameter(Mandatory = $true)] $FrontendPorts, [Parameter(Mandatory = $false)] $SslCertificate, [Parameter(Mandatory = $false)] [switch] $IncludeSsl ) process { Write-Verbose "Adding HttpListener..." $Listeners = @{ PrivateHttp = $null PublicHttp = $null PublicHttps = $null Collection = @() } $Listeners.PrivateHttp = New-AzApplicationGatewayHttpListener -Name "Listener_Private8080" -Protocol "Http" -FrontendIpConfiguration $IpConfiguration.Private -FrontendPort $FrontendPorts.PrivateHttp $Listeners.PublicHttp = New-AzApplicationGatewayHttpListener -Name "Listener_Public80" -Protocol "Http" -FrontendIpConfiguration $IpConfiguration.Public -FrontendPort $FrontendPorts.PublicHttp $Listeners.Collection += ($Listeners.PrivateHttp, $Listeners.PublicHttp) if ($IncludeSsl) { $Listeners.PublicHttps = New-AzApplicationGatewayHttpListener -Name "Listener_Public443" -Protocol "Https" -FrontendIpConfiguration $IpConfiguration.Public -FrontendPort $FrontendPorts.PublicHttps -SslCertificate $SslCertificate $Listeners.Collection += $Listeners.PublicHttps } $Listeners } } |