icinga-powershell-framework/lib/core/framework/Invoke-IcingaNamespaceCmdlets.psm1
2022-01-25 10:00:19 +01:00

30 lines
760 B
PowerShell

function Invoke-IcingaNamespaceCmdlets()
{
param (
[string]$Command
);
[Hashtable]$CommandConfig = @{ };
if ($Command.Contains('*') -eq $FALSE) {
$Command = [string]::Format('{0}*', $Command);
}
$CommandList = Get-Command $Command;
foreach ($Cmdlet in $CommandList) {
try {
$CommandName = $Cmdlet.Name;
$Content = (& $CommandName);
Add-IcingaHashtableItem `
-Hashtable $CommandConfig `
-Key $Cmdlet.Name `
-Value $Content | Out-Null;
} catch {
Write-IcingaEventMessage -EventId 1103 -Namespace 'Framework' -ExceptionObject $_ -Objects $CommandName;
}
}
return $CommandConfig;
}