Private/Format-FoHistoryEntry.ps1
|
function Format-FoHistoryEntry { param( $Entry, [ValidateSet('Summary', 'Detailed')] [string]$Format = 'Summary', [ValidateSet('Auto', 'Bytes', 'KB', 'MB', 'GB')] [string]$Unit = 'Auto' ) $batch = if ($Entry.BatchId) { $Entry.BatchId } else { '-' } if ($Format -eq 'Detailed') { $pct = if ($Entry.OriginalSize -gt 0) { [math]::Round((1 - $Entry.FinalSize / $Entry.OriginalSize) * 100, 1) } else { 0 } return @( "Id: $($Entry.Id)" "BatchId: $batch" "Timestamp: $($Entry.Timestamp)" "Status: $($Entry.ReversalStatus)" "OutputMode: $($Entry.OutputMode)" "TargetPath: $(if ($Entry.TargetPath) { $Entry.TargetPath } else { $Entry.OriginalPath })" "OriginalPath: $($Entry.OriginalPath)" "OriginalSize: $(Format-FoFileSize -Bytes $Entry.OriginalSize -Unit $Unit -IncludeBytes)" "FinalSize: $(Format-FoFileSize -Bytes $Entry.FinalSize -Unit $Unit -IncludeBytes) (-$pct%)" "OptimizedPath: $($Entry.OptimizedPath)" "BackupPath: $($Entry.BackupPath)" '---' ) -join "`n" } return ('[{0}] batch={1} {2} {3,-14} {4,-10} {5} {6}' -f ` $Entry.Id, $batch, $Entry.Timestamp, $Entry.ReversalStatus, $Entry.OutputMode, ` $(if ($Entry.TargetPath) { $Entry.TargetPath } else { $Entry.OriginalPath }), ` (Format-FoSizeChange -OriginalSize $Entry.OriginalSize -FinalSize $Entry.FinalSize -Unit $Unit)) } |