public class DeleteEntity extends DeleteInstance
Transaction function for soft-deleting an entity.
  • Field Details

    • FUNCTION_NAME

      public static final clojure.lang.Keyword FUNCTION_NAME
  • Constructor Details

    • DeleteEntity

      public DeleteEntity(Long txId, clojure.lang.PersistentHashMap existing, String userId, String obsoleteEntityGUID) throws Exception
      Constructor used to execute the transaction function.
      Parameters:
      txId - the transaction ID of this function invocation
      existing - XTDB document to update
      userId - doing the deletion
      obsoleteEntityGUID - of the entity to delete
      Throws:
      Exception - on any error
  • Method Details

    • transact

      Soft-delete the specified entity by pushing down the transaction.
      Parameters:
      xtdb - connectivity
      userId - doing the deletion
      entityGUID - of the entity to be deleted
      Returns:
      the resulting deleted entity
      Throws:
      EntityNotKnownException - if the entity cannot be found
      InvalidParameterException - if the relationship exists but is already soft-deleted
      RepositoryErrorException - on any other error
    • doc

      public clojure.lang.IPersistentMap doc()
      Interface that returns the updated document to write-back from the transaction.
      Returns:
      IPersistentMap giving the updated document in its entirety
    • create

      public static void create(xtdb.api.tx.Transaction.Builder tx)
      Create the transaction function within XTDB.
      Parameters:
      tx - the transaction through which to create this function