Shared/Disable-XRefPersistence.ps1
#.ExternalHelp StreamXRef-help.xml function Disable-XRefPersistence { [CmdletBinding()] [OutputType([System.Void])] Param( [Parameter()] [switch]$Quiet, [Parameter()] [switch]$Remove, [Parameter(DontShow)] [switch]$_Reset ) Process { if ($PersistCanUse) { if ($Remove) { if (Test-Path "$PersistPath*") { # Delete file (and/or .bak version) Remove-Item "$PersistPath*" -Force if (-not $Quiet) { Write-Host "StreamXRef persistence files deleted." } } elseif (-not $Quiet) { Write-Host "No StreamXRef persistence files to delete." } } elseif (-not $_Reset -and (Test-Path $PersistPath)) { # Add ".bak" to name to prevent auto-loading (except when resetting) Move-Item $PersistPath "$PersistPath.bak" -Force } # Disable persistence subscriber if ($PersistId -ne 0) { Unregister-Event -SubscriptionId $PersistId # Reset value $script:PersistId = 0 if (-not $Quiet) { Write-Host "StreamXRef persistence disabled." } } $script:PersistEnabled = $false } else { Write-Error "Data persistence path is not set." } } } |