Files
Merge-DSCConfigurationData/Private/Get-ConfigurationDataTemplateExtends.ps1

32 lines
1.0 KiB
PowerShell

function Get-ConfigurationDataTemplateExtends {
[CmdletBinding()]
Param(
[Parameter(Mandatory=$true)]
[System.Collections.IDictionary]
$ConfigurationData
)
$Extends = $null
if(Test-ConfigurationDataDictionaryKey -Dictionary $ConfigurationData -Key "Metadata"){
$Metadata = Get-ConfigurationDataDictionaryValue -Dictionary $ConfigurationData -Key "Metadata"
if($Metadata -is [System.Collections.IDictionary] -and (Test-ConfigurationDataDictionaryKey -Dictionary $Metadata -Key "Extends")){
$Extends = Get-ConfigurationDataDictionaryValue -Dictionary $Metadata -Key "Extends"
}
}
if($null -eq $Extends -and (Test-ConfigurationDataDictionaryKey -Dictionary $ConfigurationData -Key "Extends")){
$Extends = Get-ConfigurationDataDictionaryValue -Dictionary $ConfigurationData -Key "Extends"
}
if($null -eq $Extends){
return @()
}
if($Extends -is [System.Array] -and $Extends -isnot [string]){
return @($Extends)
}
return @($Extends)
}