Class BrowserEntryRouting
- Namespace
- Archiver.App.Core
- Assembly
- Archiver.App.Core.dll
T-F242 items 3, 4 and 6: the double-click decisions of the pending list and the Archive Browser, and the containment check for a file extracted into a temp scope.
public static class BrowserEntryRouting
- Inheritance
-
BrowserEntryRouting
- Inherited Members
Methods
DecideBrowserRow(bool, bool, bool, string, Func<bool>)
An Archive Browser row. Outside an archive (T-F107) a file opens only when it is a real archive; inside one an archive entry drills in (T-F98), a previewable one previews (T-F97) and anything else is extracted after a warning (T-F109).
public static RowOpenAction DecideBrowserRow(bool isBusy, bool insideArchive, bool isFolder, string name, Func<bool> isArchiveOnDisk)
Parameters
Returns
DecidePendingRow(bool, bool, Func<bool>)
A pending-list row: only a real archive on disk opens (magic bytes, the same ground truth ExtractionRouter uses — never the extension); nothing while an operation runs.
public static RowOpenAction DecidePendingRow(bool isBusy, bool isFolder, Func<bool> isArchiveOnDisk)
Parameters
Returns
OpensProtectedArchive(bool, bool, bool, string)
T-F275 step 3c: a row that DecidePendingRow(bool, bool, Func<bool>) or DecideBrowserRow(bool, bool, bool, string, Func<bool>)
leaves alone opens the archive it protects when it is a PAR2 file on disk (in the pending
list, or in a real folder). Inside an archive a .par2 entry is an ordinary entry.
public static bool OpensProtectedArchive(bool isBusy, bool insideArchive, bool isFolder, string name)
Parameters
Returns
ResolveInScope(string, string)
Where an entry extracted into scopeDir landed, or null when its name
would point outside the scope (an absolute or .. entry name) — T-F242 item 6: the
path is handed to ShellExecute, so it must never name a file Pakko did not write.
public static string? ResolveInScope(string scopeDir, string entryPath)