Class FastTerminal

java.lang.Object
org.apache.maven.jline.FastTerminal
All Implemented Interfaces:
Closeable, Flushable, AutoCloseable, org.jline.terminal.Sized, org.jline.terminal.spi.TerminalExt, org.jline.terminal.Terminal

public class FastTerminal extends Object implements org.jline.terminal.spi.TerminalExt
  • Constructor Details

    • FastTerminal

      public FastTerminal(Callable<org.jline.terminal.Terminal> builder, Consumer<org.jline.terminal.Terminal> consumer)
  • Method Details

    • start

      public void start()
      Starts the build thread. Must be called after the caller has published this FastTerminal (e.g. assigned it to MessageUtils.terminal) so that code running on the build thread can obtain a non-null reference through MessageUtils.getTerminal().

      Thread.start() establishes a happens-before edge, so the assignment made by the caller before this method is visible to the build thread without additional synchronization.

      See Also:
    • getTerminal

      public org.jline.terminal.spi.TerminalExt getTerminal()
    • getName

      public String getName()
      Specified by:
      getName in interface org.jline.terminal.Terminal
    • handle

      public org.jline.terminal.Terminal.SignalHandler handle(org.jline.terminal.Terminal.Signal signal, org.jline.terminal.Terminal.SignalHandler signalHandler)
      Specified by:
      handle in interface org.jline.terminal.Terminal
    • raise

      public void raise(org.jline.terminal.Terminal.Signal signal)
      Specified by:
      raise in interface org.jline.terminal.Terminal
    • reader

      public org.jline.utils.NonBlockingReader reader()
      Specified by:
      reader in interface org.jline.terminal.Terminal
    • writer

      public PrintWriter writer()
      Specified by:
      writer in interface org.jline.terminal.Terminal
    • encoding

      public Charset encoding()
      Specified by:
      encoding in interface org.jline.terminal.Terminal
    • input

      public InputStream input()
      Specified by:
      input in interface org.jline.terminal.Terminal
    • output

      public OutputStream output()
      Specified by:
      output in interface org.jline.terminal.Terminal
    • canPauseResume

      public boolean canPauseResume()
      Specified by:
      canPauseResume in interface org.jline.terminal.Terminal
    • pause

      public void pause()
      Specified by:
      pause in interface org.jline.terminal.Terminal
    • pause

      public void pause(boolean b) throws InterruptedException
      Specified by:
      pause in interface org.jline.terminal.Terminal
      Throws:
      InterruptedException
    • resume

      public void resume()
      Specified by:
      resume in interface org.jline.terminal.Terminal
    • paused

      public boolean paused()
      Specified by:
      paused in interface org.jline.terminal.Terminal
    • enterRawMode

      public org.jline.terminal.Attributes enterRawMode()
      Specified by:
      enterRawMode in interface org.jline.terminal.Terminal
    • echo

      public boolean echo()
      Specified by:
      echo in interface org.jline.terminal.Terminal
    • echo

      public boolean echo(boolean b)
      Specified by:
      echo in interface org.jline.terminal.Terminal
    • getAttributes

      public org.jline.terminal.Attributes getAttributes()
      Specified by:
      getAttributes in interface org.jline.terminal.Terminal
    • setAttributes

      public void setAttributes(org.jline.terminal.Attributes attributes)
      Specified by:
      setAttributes in interface org.jline.terminal.Terminal
    • getSize

      public org.jline.terminal.Size getSize()
      Specified by:
      getSize in interface org.jline.terminal.Terminal
    • setSize

      public void setSize(org.jline.terminal.Size size)
      Specified by:
      setSize in interface org.jline.terminal.Terminal
    • setSize

      public void setSize(org.jline.terminal.Sized sized)
      Specified by:
      setSize in interface org.jline.terminal.Terminal
    • getColumns

      public int getColumns()
      Specified by:
      getColumns in interface org.jline.terminal.Sized
      Specified by:
      getColumns in interface org.jline.terminal.Terminal
    • getRows

      public int getRows()
      Specified by:
      getRows in interface org.jline.terminal.Sized
      Specified by:
      getRows in interface org.jline.terminal.Terminal
    • getBufferSize

      public org.jline.terminal.Size getBufferSize()
      Specified by:
      getBufferSize in interface org.jline.terminal.Terminal
    • flush

      public void flush()
      Specified by:
      flush in interface Flushable
      Specified by:
      flush in interface org.jline.terminal.Terminal
    • getType

      public String getType()
      Specified by:
      getType in interface org.jline.terminal.Terminal
    • puts

      public boolean puts(org.jline.utils.InfoCmp.Capability capability, Object... objects)
      Specified by:
      puts in interface org.jline.terminal.Terminal
    • getBooleanCapability

      public boolean getBooleanCapability(org.jline.utils.InfoCmp.Capability capability)
      Specified by:
      getBooleanCapability in interface org.jline.terminal.Terminal
    • getNumericCapability

      public Integer getNumericCapability(org.jline.utils.InfoCmp.Capability capability)
      Specified by:
      getNumericCapability in interface org.jline.terminal.Terminal
    • getStringCapability

      public String getStringCapability(org.jline.utils.InfoCmp.Capability capability)
      Specified by:
      getStringCapability in interface org.jline.terminal.Terminal
    • getCursorPosition

      public org.jline.terminal.Cursor getCursorPosition(IntConsumer intConsumer)
      Specified by:
      getCursorPosition in interface org.jline.terminal.Terminal
    • hasMouseSupport

      public boolean hasMouseSupport()
      Specified by:
      hasMouseSupport in interface org.jline.terminal.Terminal
    • getCurrentMouseTracking

      public org.jline.terminal.Terminal.MouseTracking getCurrentMouseTracking()
      Specified by:
      getCurrentMouseTracking in interface org.jline.terminal.Terminal
    • trackMouse

      public boolean trackMouse(org.jline.terminal.Terminal.MouseTracking mouseTracking)
      Specified by:
      trackMouse in interface org.jline.terminal.Terminal
    • readMouseEvent

      public org.jline.terminal.MouseEvent readMouseEvent()
      Specified by:
      readMouseEvent in interface org.jline.terminal.Terminal
    • readMouseEvent

      public org.jline.terminal.MouseEvent readMouseEvent(IntSupplier intSupplier)
      Specified by:
      readMouseEvent in interface org.jline.terminal.Terminal
    • readMouseEvent

      public org.jline.terminal.MouseEvent readMouseEvent(String prefix)
      Specified by:
      readMouseEvent in interface org.jline.terminal.Terminal
    • readMouseEvent

      public org.jline.terminal.MouseEvent readMouseEvent(IntSupplier reader, String prefix)
      Specified by:
      readMouseEvent in interface org.jline.terminal.Terminal
    • hasFocusSupport

      public boolean hasFocusSupport()
      Specified by:
      hasFocusSupport in interface org.jline.terminal.Terminal
    • trackFocus

      public boolean trackFocus(boolean b)
      Specified by:
      trackFocus in interface org.jline.terminal.Terminal
    • getPalette

      public org.jline.utils.ColorPalette getPalette()
      Specified by:
      getPalette in interface org.jline.terminal.Terminal
    • close

      public void close() throws IOException
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Throws:
      IOException
    • getProvider

      public org.jline.terminal.spi.TerminalProvider getProvider()
      Specified by:
      getProvider in interface org.jline.terminal.spi.TerminalExt
    • getSystemStream

      public org.jline.terminal.spi.SystemStream getSystemStream()
      Specified by:
      getSystemStream in interface org.jline.terminal.spi.TerminalExt