org.apache.tinkerpop.gremlin.groovy.jsr223

## Class GroovyCompilerGremlinPlugin.Builder

- java.lang.Object
- - org.apache.tinkerpop.gremlin.groovy.jsr223.GroovyCompilerGremlinPlugin.Builder

- Enclosing class:
    GroovyCompilerGremlinPlugin

      public static final class GroovyCompilerGremlinPlugin.Builder
      extends Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Builder()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `GroovyCompilerGremlinPlugin.Builder` | `classMapCacheSpecification(String cacheSpec)` Sets the cache specification for the class map which holds compiled scripts and uses the comma separated syntax of the caffeine cache for configuration.
    `GroovyCompilerGremlinPlugin.Builder` | `compilation(GroovyCompilerGremlinPlugin.Compilation compilation)`
    `GroovyCompilerGremlinPlugin.Builder` | `compilation(String compilation)`
    `GroovyCompilerGremlinPlugin.Builder` | `compilerConfigurationOptions(Map<String,Object> keyValues)`
    `GroovyCompilerGremlinPlugin` | `create()`
    `GroovyCompilerGremlinPlugin.Builder` | `enableInterpreterMode(boolean interpreterMode)`
    `GroovyCompilerGremlinPlugin.Builder` | `enableThreadInterrupt(boolean threadInterrupt)`
    `GroovyCompilerGremlinPlugin.Builder` | `expectedCompilationTime(int timeInMillis)` If the time it takes to compile a script exceeds the specified time then a warning is written to the logs.
    `GroovyCompilerGremlinPlugin.Builder` | `extensions(String extensions)`
    `GroovyCompilerGremlinPlugin.Builder` | `timedInterrupt(long timeInMillis)` Introduces timed checks to loops and other portions of a script to provide an interrupt for a long running script.

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

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

- - ### Constructor Detail

    - #### Builder

          public Builder()

  - ### Method Detail

    - #### expectedCompilationTime

          public GroovyCompilerGremlinPlugin.Builder expectedCompilationTime(int timeInMillis)

      If the time it takes to compile a script exceeds the specified time then a warning is written to the logs. Defaults to 5000ms and must be greater than zero.

    - #### enableInterpreterMode

          public GroovyCompilerGremlinPlugin.Builder enableInterpreterMode(boolean interpreterMode)

    - #### compilerConfigurationOptions

          public GroovyCompilerGremlinPlugin.Builder compilerConfigurationOptions(Map<String,Object> keyValues)

    - #### enableThreadInterrupt

          public GroovyCompilerGremlinPlugin.Builder enableThreadInterrupt(boolean threadInterrupt)

    - #### timedInterrupt

          public GroovyCompilerGremlinPlugin.Builder timedInterrupt(long timeInMillis)

      Introduces timed checks to loops and other portions of a script to provide an interrupt for a long running script. This configuration should not be used in conjunction with the Gremlin Server which has its own `scriptEvaluationTimeout` which performs a similar task but in a more complete way specific to the server. Configuring both may lead to inconsistent timeout errors returning from the server. This configuration should only be used if configuring a standalone instance fo the `GremlinGroovyScriptEngine`.

    - #### compilation

          public GroovyCompilerGremlinPlugin.Builder compilation(GroovyCompilerGremlinPlugin.Compilation compilation)

    - #### compilation

          public GroovyCompilerGremlinPlugin.Builder compilation(String compilation)

    - #### extensions

          public GroovyCompilerGremlinPlugin.Builder extensions(String extensions)

    - #### classMapCacheSpecification

          public GroovyCompilerGremlinPlugin.Builder classMapCacheSpecification(String cacheSpec)

      Sets the cache specification for the class map which holds compiled scripts and uses the comma separated syntax of the caffeine cache for configuration.
      - `initialCapacity=[integer]`: sets `Caffeine.initialCapacity`.
      - `maximumSize=[long]`: sets `Caffeine.maximumSize`.
      - `maximumWeight=[long]`: sets `Caffeine.maximumWeight`.
      - `expireAfterAccess=[duration]`: sets `Caffeine.expireAfterAccess`.
      - `expireAfterWrite=[duration]`: sets `Caffeine.expireAfterWrite`.
      - `refreshAfterWrite=[duration]`: sets `Caffeine.refreshAfterWrite`.
      - `weakKeys`: sets `Caffeine.weakKeys`.
      - `weakValues`: sets `Caffeine.weakValues`.
      - `softValues`: sets `Caffeine.softValues`.
      - `recordStats`: sets `Caffeine.recordStats`.
      Durations are represented by an integer, followed by one of "d", "h", "m", or "s", representing days, hours, minutes, or seconds respectively. Whitespace before and after commas and equal signs is ignored. Keys may not be repeated; it is also illegal to use the following pairs of keys in a single value:
      - `maximumSize` and `maximumWeight`
      - `weakValues` and `softValues`

    - #### create

          public GroovyCompilerGremlinPlugin create()

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