Annotation Interface ArangoComputedValue


@Retention(RUNTIME) @Target({FIELD,METHOD,ANNOTATION_TYPE}) public @interface ArangoComputedValue
Annotation to mark a field representing an ArangoDB computed value. If the property is mutable, then the field is automatically updated in place with the value coming from the server for the following operations:
See Also:
  • Element Details

    • value

      @AliasFor("expression") String value
      Default:
      ""
    • expression

      @AliasFor("value") String expression
      Returns:
      An AQL RETURN operation with an expression that computes the desired value. If empty, the computed value data definition will not be set on collection creation.
      See Also:
      • ComputedValue.expression(String)
      Default:
      ""
    • overwrite

      boolean overwrite
      Returns:
      Whether the computed value shall take precedence over a user-provided or existing attribute. The default is false.
      See Also:
      • ComputedValue.overwrite(Boolean)
      Default:
      false
    • computeOn

      com.arangodb.model.ComputedValue.ComputeOn[] computeOn
      Returns:
      An array of operations to define on which write operations the value shall be computed. The default is ["insert", "update", "replace"].
      See Also:
      • ComputedValue.computeOn(ComputedValue.ComputeOn...)
      Default:
      {insert, update, replace}
    • keepNull

      boolean keepNull
      Returns:
      Whether the target attribute shall be set if the expression evaluates to null. You can set the option to false to not set (or unset) the target attribute if the expression returns null. The default is true.
      See Also:
      • ComputedValue.keepNull(Boolean)
      Default:
      true
    • failOnWarning

      boolean failOnWarning
      Returns:
      Whether to let the write operation fail if the expression produces a warning. The default is false.
      See Also:
      • ComputedValue.failOnWarning(Boolean)
      Default:
      false