Interface SystemRegistry

All Superinterfaces:
CommandRegistry, ConsoleOptionGetter
All Known Implementing Classes:
SystemRegistryImpl

public interface SystemRegistry extends CommandRegistry, ConsoleOptionGetter
Aggregate command registries and dispatch command executions.
Author:
Matti Rinta-Nikkola
  • Method Details

    • setCommandRegistries

      void setCommandRegistries(CommandRegistry... commandRegistries)
      Set command registries
      Parameters:
      commandRegistries - command registries used by the application
    • register

      void register(String command, CommandRegistry subcommandRegistry)
      Register subcommand registry
      Parameters:
      command - main command
      subcommandRegistry - subcommand registry
    • initialize

      void initialize(File script)
      Initialize consoleEngine environment by executing console script
      Parameters:
      script - initialization script
    • getPipeNames

      Collection<String> getPipeNames()
      Returns:
      pipe names defined in systemRegistry
    • completer

      Completer completer()
      Returns command completer that includes also console variable and script completion.
      Returns:
      command completer
    • commandDescription

      CmdDesc commandDescription(CmdLine line)
      Returns a command, method or syntax description for use in the JLine Widgets framework.
      Parameters:
      line - command line whose description to return
      Returns:
      command description for JLine TailTipWidgets to be displayed in the terminal status bar.
    • execute

      Object execute(String line) throws Exception
      Execute a command, script or evaluate scriptEngine statement
      Parameters:
      line - command line to be executed
      Returns:
      execution result
      Throws:
      Exception - in case of error
    • cleanUp

      void cleanUp()
      Delete temporary console variables and reset output streams
    • trace

      void trace(Throwable exception)
      Print exception on terminal
      Parameters:
      exception - exception to print on terminal
    • trace

      void trace(boolean stack, Throwable exception)
      Print exception on terminal
      Parameters:
      stack - print stack trace if stack true otherwise message
      exception - exception to be printed
    • consoleOption

      Object consoleOption(String name)
      Return console option value
      Specified by:
      consoleOption in interface ConsoleOptionGetter
      Parameters:
      name - the option name
      Returns:
      option value
    • consoleOption

      <T> T consoleOption(String name, T defVal)
      Return console option value
      Specified by:
      consoleOption in interface ConsoleOptionGetter
      Type Parameters:
      T - option type
      Parameters:
      name - the option name
      defVal - value to return if console option does not exists
      Returns:
      option value
    • setConsoleOption

      void setConsoleOption(String name, Object value)
      Set console option value
      Parameters:
      name - the option name
      value - value to assign console option
    • terminal

      Terminal terminal()
      Returns:
      terminal
    • invoke

      Object invoke(String command, Object... args) throws Exception
      Execute command with arguments
      Parameters:
      command - command to be executed
      args - arguments of the command
      Returns:
      command execution result
      Throws:
      Exception - in case of error
    • isCommandOrScript

      boolean isCommandOrScript(ParsedLine line)
      Returns whether a line contains command/script that is known to this registry.
      Parameters:
      line - the parsed command line to test
      Returns:
      true if the specified line has a command registered
    • isCommandOrScript

      boolean isCommandOrScript(String command)
      Returns whether command is known to this registry.
      Parameters:
      command - the command to test
      Returns:
      true if the specified command is known
    • isCommandAlias

      boolean isCommandAlias(String alias)
      Returns whether alias is known command alias.
      Parameters:
      alias - the alias to test
      Returns:
      true if the alias is known command alias
    • close

      void close()
      Orderly close SystemRegistry.
    • get

      static SystemRegistry get()
      Returns:
      systemRegistry of the current thread
    • add

      static void add(SystemRegistry systemRegistry)
      Add systemRegistry to the thread map
      Parameters:
      systemRegistry - the systemRegistry
    • remove

      static void remove()
      Remove systemRegistry of the current thread from the thread map