Class DocumentUpdateOptions


public final class DocumentUpdateOptions extends TransactionalOptions<DocumentUpdateOptions>
Author:
Mark Vollmary, Michele Rastelli
  • Constructor Details

    • DocumentUpdateOptions

      public DocumentUpdateOptions()
  • Method Details

    • getKeepNull

      public Boolean getKeepNull()
    • keepNull

      public DocumentUpdateOptions keepNull(Boolean keepNull)
      Parameters:
      keepNull - If the intention is to delete existing attributes with the patch command, the URL query parameter keepNull can be used with a value of false. This will modify the behavior of the patch command to remove any attributes from the existing document that are contained in the patch document with an attribute value of null.
      Returns:
      options
    • getMergeObjects

      public Boolean getMergeObjects()
    • mergeObjects

      public DocumentUpdateOptions mergeObjects(Boolean mergeObjects)
      Parameters:
      mergeObjects - Controls whether objects (not arrays) will be merged if present in both the existing and the patch document. If set to false, the value in the patch document will overwrite the existing document's value. If set to true, objects will be merged. The default is true.
      Returns:
      options
    • getWaitForSync

      public Boolean getWaitForSync()
    • waitForSync

      public DocumentUpdateOptions waitForSync(Boolean waitForSync)
      Parameters:
      waitForSync - Wait until document has been synced to disk.
      Returns:
      options
    • getIgnoreRevs

      public Boolean getIgnoreRevs()
    • ignoreRevs

      public DocumentUpdateOptions ignoreRevs(Boolean ignoreRevs)
      Parameters:
      ignoreRevs - By default, or if this is set to true, the _rev attributes in the given document is ignored. If this is set to false, then the _rev attribute given in the body document is taken as a precondition. The document is only updated if the current revision is the one specified.
      Returns:
      options
    • getIfMatch

      public String getIfMatch()
    • ifMatch

      public DocumentUpdateOptions ifMatch(String ifMatch)
      Parameters:
      ifMatch - update a document based on target revision
      Returns:
      options
    • getReturnNew

      public Boolean getReturnNew()
    • returnNew

      public DocumentUpdateOptions returnNew(Boolean returnNew)
      Parameters:
      returnNew - Return additionally the complete new document under the attribute new in the result.
      Returns:
      options
    • getReturnOld

      public Boolean getReturnOld()
    • returnOld

      public DocumentUpdateOptions returnOld(Boolean returnOld)
      Parameters:
      returnOld - Return additionally the complete previous revision of the changed document under the attribute old in the result.
      Returns:
      options
    • getSilent

      public Boolean getSilent()
    • silent

      public DocumentUpdateOptions silent(Boolean silent)
      Parameters:
      silent - If set to true, an empty object will be returned as response. No meta-data will be returned for the created document. This option can be used to save some network traffic.
      Returns:
      options
    • getRefillIndexCaches

      public Boolean getRefillIndexCaches()
    • refillIndexCaches

      public DocumentUpdateOptions refillIndexCaches(Boolean refillIndexCaches)
      Parameters:
      refillIndexCaches - Whether to update an existing entry in the in-memory edge cache if an edge document is updated.
      Returns:
      options
      Since:
      ArangoDB 3.11
    • getVersionAttribute

      public String getVersionAttribute()
    • versionAttribute

      public DocumentUpdateOptions versionAttribute(String versionAttribute)
      You can use the versionAttribute option for external versioning support. If set, the attribute with the name specified by the option is looked up in the stored document and the attribute value is compared numerically to the value of the versioning attribute in the supplied document that is supposed to update/replace it. If the version number in the new document is higher (rounded down to a whole number) than in the document that already exists in the database, then the update/replace operation is performed normally. This is also the case if the new versioning attribute has a non-numeric value, if it is a negative number, or if the attribute doesn't exist in the supplied or stored document. If the version number in the new document is lower or equal to what exists in the database, the operation is not performed and the existing document thus not changed. No error is returned in this case. The attribute can only be a top-level attribute. You can check if _oldRev (if present) and _rev are different to determine if the document has been changed.
      Parameters:
      versionAttribute - the attribute name to use for versioning
      Returns:
      options
      Since:
      ArangoDB 3.12