Public/Get-RecoveryPlanEntity.ps1

<#
    .DESCRIPTION
    Wrapper for Nutanix API version 0.3.
 
    .NOTES
    Author: Timothy Rasiah
#>


function Get-RecoveryPlanEntity {
    [CmdletBinding()]
    param (
        [Parameter(Mandatory=$true)]
        [String]$Uuid,
        [ValidateSet("MIGRATE", "LIVE_MIGRATE", "FAILOVER", "TEST_FAILOVER")]
        [String]$ActionType,
        [String[]]$FailedAvailabilityZoneInfoList,
        [String[]]$RecoveryAvailabilityZoneInfoList
    )

    $params = @{}

    if ($ActionType) {
        $params["action_type"] = $ActionType
    }

    if ($FailedAvailabilityZoneInfoList) {
        $params["failed_availability_zone_info_list"] = $FailedAvailabilityZoneInfoList -join ","
    }

    if ($RecoveryAvailabilityZoneInfoList) {
        $params["recovery_availability_zone_info_list"] = $RecoveryAvailabilityZoneInfoList -join ","
    }
    
    $response = Send-Request -method "GET" -endpoint "/recovery_plans/$($Uuid)/entities" -params $params
    return $response
}