org.apache.tinkerpop.gremlin.process.traversal.translator

## Class GroovyTranslator

- java.lang.Object
- - org.apache.tinkerpop.gremlin.process.traversal.translator.GroovyTranslator

- All Implemented Interfaces:
    Translator<String,Script>, Translator.ScriptTranslator

      public final class GroovyTranslator
      extends Object
      implements Translator.ScriptTranslator

  Converts bytecode to a Groovy string of Gremlin.
  Author:
    Marko A. Rodriguez (http://markorodriguez.com), Stephen Mallette (http://stephen.genoprime.com), Stark Arya (sandszhou.zj@alibaba-inc.com)

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `GroovyTranslator.DefaultTypeTranslator` Performs standard type translation for the TinkerPop types to Groovy.
    `static class` | `GroovyTranslator.LanguageTypeTranslator` An extension of the `GroovyTranslator.DefaultTypeTranslator` that generates Gremlin that is compliant with `gremlin-language` scripts.

    - ### Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Translator.ScriptTranslator

      `Translator.ScriptTranslator.AbstractTypeTranslator, Translator.ScriptTranslator.TypeTranslator`

    - ### Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Translator

      `Translator.ScriptTranslator, Translator.StepTranslator<S extends TraversalSource,T extends Traversal.Admin<?,?>>`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getTargetLanguage()` Get the language that the translator is converting the traversal byte code to.
    `String` | `getTraversalSource()` Get the `TraversalSource` representation rooting this translator.
    `static GroovyTranslator` | `of(String traversalSource)` Creates the translator with a `false` argument to `withParameters` using `of(String, boolean)`.
    `static GroovyTranslator` | `of(String traversalSource, boolean withParameters)` Creates the translator with the `GroovyTranslator.DefaultTypeTranslator` passing the `withParameters` option to it which will handle type translation in a fashion that should typically increase cache hits and reduce compilation times if enabled at the sacrifice to rewriting of the script that could reduce readability.
    `static GroovyTranslator` | `of(String traversalSource, Translator.ScriptTranslator.TypeTranslator typeTranslator)` Creates the translator with a custom `TypeTranslator` instance.
    `String` | `toString()`
    `Script` | `translate(Bytecode bytecode)` Translate `Bytecode` into a new representation.

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

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

    - ### Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Translator

      `translate`

- - ### Method Detail

    - #### of

          public static GroovyTranslator of(String traversalSource)

      Creates the translator with a `false` argument to `withParameters` using `of(String, boolean)`.

    - #### of

          public static GroovyTranslator of(String traversalSource,
                                            boolean withParameters)

      Creates the translator with the `GroovyTranslator.DefaultTypeTranslator` passing the `withParameters` option to it which will handle type translation in a fashion that should typically increase cache hits and reduce compilation times if enabled at the sacrifice to rewriting of the script that could reduce readability.

    - #### of

          public static GroovyTranslator of(String traversalSource,
                                            Translator.ScriptTranslator.TypeTranslator typeTranslator)

      Creates the translator with a custom `TypeTranslator` instance.

    - #### translate

          public Script translate(Bytecode bytecode)

      Description copied from interface: `Translator`
      Translate `Bytecode` into a new representation. Typically, for language translations, the translation is to a string representing the traversal in the respective scripting language.
      Specified by:
        `translate` in interface `Translator<String,Script>`
      Parameters:
        `bytecode` - the bytecode representing traversal source and traversal manipulations.
      Returns:
        the translated object

    - #### getTargetLanguage

          public String getTargetLanguage()

      Description copied from interface: `Translator`
      Get the language that the translator is converting the traversal byte code to.
      Specified by:
        `getTargetLanguage` in interface `Translator<String,Script>`
      Returns:
        the language of the translation

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### getTraversalSource

          public String getTraversalSource()

      Description copied from interface: `Translator`
      Get the `TraversalSource` representation rooting this translator. For string-based translators (`Translator.ScriptTranslator`), this is typically a "g". For java-based translators (`Translator.StepTranslator`), this is typically the `TraversalSource` instance which the `Traversal` will be built from.
      Specified by:
        `getTraversalSource` in interface `Translator<String,Script>`
      Returns:
        the traversal source representation

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