org.apache.tinkerpop.gremlin.hadoop.jsr223

## Class HadoopRemoteAcceptor

- java.lang.Object
- - org.apache.tinkerpop.gremlin.hadoop.jsr223.HadoopRemoteAcceptor

- All Implemented Interfaces:
    Closeable, AutoCloseable, RemoteAcceptor

      public final class HadoopRemoteAcceptor
      extends Object
      implements RemoteAcceptor

  Author:
    Marko A. Rodriguez (http://markorodriguez.com)

- - ### Field Summary

    - ### Fields inherited from interface org.apache.tinkerpop.gremlin.jsr223.console.RemoteAcceptor

      `RESULT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `HadoopRemoteAcceptor(GremlinShellEnvironment shellEnvironment)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `allowRemoteConsole()` If the `RemoteAcceptor` is used in the Gremlin Console, then this method might be called to determine if it can be used in a fashion that supports the `:remote console` command.
    `void` | `close()`
    `Object` | `configure(List<String> args)` Gets called when `:remote` is used in conjunction with the `config` option.
    `Object` | `connect(List<String> args)` Gets called when `:remote` is used in conjunction with the "connect" option.
    `static String` | `getScript(String submittedScript, GremlinShellEnvironment shell)` Retrieve a script as defined in the shell context.
    `Object` | `submit(List<String> args)` Gets called when `:submit` is executed.

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

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

- - ### Constructor Detail

    - #### HadoopRemoteAcceptor

          public HadoopRemoteAcceptor(GremlinShellEnvironment shellEnvironment)

  - ### Method Detail

    - #### connect

          public Object connect(List<String> args)
                         throws RemoteException

      Description copied from interface: `RemoteAcceptor`
      Gets called when `:remote` is used in conjunction with the "connect" option. It is up to the implementation to decide how additional arguments on the line should be treated after "connect".
      Specified by:
        `connect` in interface `RemoteAcceptor`
      Returns:
        an object to display as output to the user
      Throws:
        `RemoteException` - if there is a problem with connecting

    - #### configure

          public Object configure(List<String> args)
                           throws RemoteException

      Description copied from interface: `RemoteAcceptor`
      Gets called when `:remote` is used in conjunction with the `config` option. It is up to the implementation to decide how additional arguments on the line should be treated after `config`.
      Specified by:
        `configure` in interface `RemoteAcceptor`
      Returns:
        an object to display as output to the user
      Throws:
        `RemoteException` - if there is a problem with configuration

    - #### submit

          public Object submit(List<String> args)
                        throws RemoteException

      Description copied from interface: `RemoteAcceptor`
      Gets called when `:submit` is executed. It is up to the implementation to decide how additional arguments on the line should be treated after `:submit`.
      Specified by:
        `submit` in interface `RemoteAcceptor`
      Returns:
        an object to display as output to the user
      Throws:
        `RemoteException` - if there is a problem with submission

    - #### allowRemoteConsole

          public boolean allowRemoteConsole()

      Description copied from interface: `RemoteAcceptor`
      If the `RemoteAcceptor` is used in the Gremlin Console, then this method might be called to determine if it can be used in a fashion that supports the `:remote console` command. By default, this value is set to `false`.

      A `RemoteAcceptor` should only return `true` for this method if it expects that all activities it supports are executed through the `:submit` command. If the users interaction with the remote requires working with both local and remote evaluation at the same time, it is likely best to keep this method return `false`. A good example of this type of plugin would be the Gephi Plugin which uses `:remote config` to configure a local `TraversalSource` to be used and expects calls to `:submit` for the same body of analysis.
      Specified by:
        `allowRemoteConsole` in interface `RemoteAcceptor`

    - #### close

          public void close()
                     throws IOException

      Specified by:
        `close` in interface `Closeable`
      Specified by:
        `close` in interface `AutoCloseable`
      Throws:
        `IOException`

    - #### getScript

          public static String getScript(String submittedScript,
                                         GremlinShellEnvironment shell)

      Retrieve a script as defined in the shell context. This allows for multi-line scripts to be submitted.

Copyright © 2013–2020 Apache Software Foundation. All rights reserved.