Package org.rexxla.bsf.engines.rexx

# Class AbstractDirectCommandHandler

java.lang.Object
org.rexxla.bsf.engines.rexx.AbstractDirectCommandHandler

All Implemented Interfaces:
  `RexxCommandHandler`, `RexxHandler`

public abstract class AbstractDirectCommandHandler extends Object implements RexxCommandHandler
Make it easy for Rexx programs to implement direct command handlers in Rexx. :)

Since:
  850 (2022-08-23)

- ## Field Summary

  ### Fields inherited from interface org.rexxla.bsf.engines.rexx.RexxCommandHandler

  `version`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AbstractDirectCommandHandler()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract Object`
  `handleCommand(Object slot, String address, String command)`
  Command handler signature (called via native code) according to the ooRexx API documentation in `rexxpg.pdf`.
  `static void`
  `main(String[] args)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface org.rexxla.bsf.engines.rexx.RexxCommandHandler

  `isRedirectable, toString`

  ### Methods inherited from interface org.rexxla.bsf.engines.rexx.RexxHandler

  `checkCondition, clearCondition, dropContextVariable, getAllContextVariables, getCallerContext, getConditionInfo, getContextVariable, getGlobalEnvironment, getInterpreterVersion, getLanguageLevel, getLocalEnvironment, getNil, haltThread, newArray, newDirectory, newStem, newStringTable, raiseCondition, raiseException, raiseException0, raiseException1, raiseException2, setContextVariable, setContextVariableToNil, setThreadTrace`

- ## Constructor Details

  - ### AbstractDirectCommandHandler

    public AbstractDirectCommandHandler()

- ## Method Details

  - ### main

    public static void main(String[] args)

  - ### handleCommand

    public abstract Object handleCommand(Object slot, String address, String command)
    Description copied from interface: `RexxCommandHandler`
    Command handler signature (called via native code) according to the ooRexx API documentation in `rexxpg.pdf`.
    Specified by:
      `handleCommand` in interface `RexxCommandHandler`
    Parameters:
      `slot` - this is an opaque `Object` argument which must be supplied unchanged to the direct Rexx API methods in `RexxHandler`
      `address` - a String denoting the name of the command environment for which this method got invoked
      `command` - a String containing the command passed from Rexx
    Returns:
      any value, which can be retrieved on the Rexx side via the variable `RC` (result code)