diff --git a/StackMonkey.ps1 b/StackMonkey.ps1 index acd3f11..b02d9fb 100644 --- a/StackMonkey.ps1 +++ b/StackMonkey.ps1 @@ -220,11 +220,23 @@ function Write-LogHelper { } } -# Hybrid wrapper: uses your module's Write-Log if available, else falls back -if (Get-Command Write-Log -ErrorAction SilentlyContinue) { - function Write-LogHybrid { param($Message,$Level,$TaskCategory,$LogToEvent) Write-Log @PSBoundParameters } -} else { - function Write-LogHybrid { param($Message,$Level,$TaskCategory,$LogToEvent) Write-LogHelper @PSBoundParameters } +function Write-LogHybrid { + [CmdletBinding()] + param( + [Parameter(Mandatory)][string]$Message, + [ValidateSet("Info","Warning","Error","Success","General")] + [string]$Level = "Info", + [string]$TaskCategory = "GeneralTask", + [switch]$LogToEvent + ) + + # at *call* time* pick the right implementation + if ( Get-Command Write-Log -ErrorAction SilentlyContinue ) { + Write-Log @PSBoundParameters + } + else { + Write-LogHelper @PSBoundParameters + } } #endregion