Class AbstractUnixSysTerminal

java.lang.Object
org.jline.terminal.impl.AbstractTerminal
org.jline.terminal.impl.AbstractUnixSysTerminal
All Implemented Interfaces:
Closeable, Flushable, AutoCloseable, Sized, TerminalExt, Terminal
Direct Known Subclasses:
FfmUnixSysTerminal, JniUnixSysTerminal

public abstract class AbstractUnixSysTerminal extends AbstractTerminal
Base class for flattened POSIX system terminals that bypass the PTY abstraction.

Subclasses only need to implement four methods for platform-specific attribute and size operations:

The call chain is reduced from 7 layers to 4:

   Terminal → AbstractTerminal → AbstractUnixSysTerminal → subclass → native call
 

Important: the underlying system streams (FileDescriptor.in, FileDescriptor.out/err) are wrapped in NonCloseableInputStream / NonCloseableOutputStream. Closing the terminal will shut down the pump thread and release resources, but will not close the shared file descriptors. This prevents breaking System.in/System.out for the rest of the JVM.