Core LibraryAPI Reference

Choose documentation 3

latest

Current version

latest
English

Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

property libtmux-dotnet latest

ServerConnectionOptions.Interceptor

Namespace LibTmux.ServerConnectionOptions.Interceptor LibTmux

Gets what every tmux invocation on this connection passes through, or null.

View as Markdown

Source and package
Module
LibTmux
Declared in
ServerConnectionOptions
Package
LibTmux
Source
src/LibTmux/Connection/TmuxConnectionOptions.cs
Interceptor : TmuxInterceptor?
property [source]

Description#

It sees each tmux client the connection starts to run a command: single commands, chains, and the version probe and server discovery a connection makes first. A control-mode client is one long-lived process and does not pass through it.

It sees what tmux is asked, which is more than was requested for a command against a pane, window, session, or one of their tables: two commands in front check that the server is still the one the handle was read from. An answer made in tmux's place has to start with that server's generation line.

A command runs its interceptor inside CommandTimeout and the command's span, so a retry shares both. The version probe and the discovery a connection makes first are bounded by the same timeout but are not recorded as commands. An exception the interceptor throws reaches the caller unchanged. Running a command again repeats whatever it did; Dispatch on a failure says whether tmux may already have acted.

Esc

Type to search.