java.lang.Object
org.jline.terminal.impl.AbstractTerminal
org.jline.terminal.impl.AbstractUnixSysTerminal
org.jline.terminal.impl.jni.JniUnixSysTerminal
- All Implemented Interfaces:
Closeable,Flushable,AutoCloseable,org.jline.terminal.Sized,org.jline.terminal.spi.TerminalExt,org.jline.terminal.Terminal
public class JniUnixSysTerminal
extends org.jline.terminal.impl.AbstractUnixSysTerminal
JNI-based POSIX system terminal that calls
CLibrary directly.
This implementation bypasses the PTY abstraction layer, reducing the call chain from 7 layers to 4:
Terminal ? AbstractTerminal ? AbstractUnixSysTerminal ? JniUnixSysTerminal ? CLibrary ? syscall
A TermiosMapping instance handles platform-specific
Termios ? Attributes conversions.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.jline.terminal.Terminal
org.jline.terminal.Terminal.MouseTracking, org.jline.terminal.Terminal.Signal, org.jline.terminal.Terminal.SignalHandler -
Field Summary
Fields inherited from class org.jline.terminal.impl.AbstractUnixSysTerminal
STDERR_FD, STDIN_FD, STDOUT_FDFields inherited from class org.jline.terminal.impl.AbstractTerminal
bools, closed, currentMouseTracking, encoding, handlers, inputEncoding, ints, name, onClose, outputEncoding, palette, status, strings, typeFields inherited from interface org.jline.terminal.Terminal
TYPE_DUMB, TYPE_DUMB_COLOR -
Method Summary
Modifier and TypeMethodDescriptionprotected org.jline.terminal.Attributesprotected org.jline.terminal.Sizeprotected voiddoSetAttributes(org.jline.terminal.Attributes attr) protected voiddoSetSize(org.jline.terminal.Sized size) Methods inherited from class org.jline.terminal.impl.AbstractUnixSysTerminal
doClose, getAttributes, getCursorPosition, getDefaultBackgroundColor, getDefaultForegroundColor, getProvider, getSize, getSystemStream, handle, input, output, reader, setAttributes, setSize, toString, writerMethods inherited from class org.jline.terminal.impl.AbstractTerminal
canPauseResume, checkClosed, checkInterrupted, close, detectTrueColorSupport, echo, echo, echoSignal, encoding, enterRawMode, flush, getBooleanCapability, getCurrentMouseTracking, getGraphemeClusterMode, getKind, getName, getNumericCapability, getPalette, getStatus, getStatus, getStringCapability, getType, hasFocusSupport, hasMouseSupport, inputEncoding, isClusterGrouped, outputEncoding, parseInfoCmp, pause, pause, paused, puts, raise, readMouseEvent, readMouseEvent, readMouseEvent, readMouseEvent, resume, setGraphemeClusterMode, setOnClose, supportsGraphemeClusterMode, trackFocus, trackMouseMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.jline.terminal.Terminal
getBufferSize, getColumns, getHeight, getRows, getWidth, setSize
-
Method Details
-
doGetAttributes
protected org.jline.terminal.Attributes doGetAttributes()- Specified by:
doGetAttributesin classorg.jline.terminal.impl.AbstractUnixSysTerminal
-
doSetAttributes
protected void doSetAttributes(org.jline.terminal.Attributes attr) - Specified by:
doSetAttributesin classorg.jline.terminal.impl.AbstractUnixSysTerminal
-
doGetSize
protected org.jline.terminal.Size doGetSize()- Specified by:
doGetSizein classorg.jline.terminal.impl.AbstractUnixSysTerminal
-
doSetSize
protected void doSetSize(org.jline.terminal.Sized size) - Specified by:
doSetSizein classorg.jline.terminal.impl.AbstractUnixSysTerminal
-