Interface AsyncCompareAndSwapOperation

    • Method Detail

      • getStateData

        CompletableFuture<Optional<byte[]>> getStateData​(Optional<Long> timeoutNanos)
        Reads data if it exists
        Parameters:
        timeoutNanos - optional timeout in nanoseconds
        Returns:
        persisted data or empty optional if data not exists
      • compareAndSwap

        CompletableFuture<Boolean> compareAndSwap​(byte[] originalData,
                                                  byte[] newData,
                                                  RemoteBucketState newState,
                                                  Optional<Long> timeoutNanos)
        Compares and swap data associated with key
        Parameters:
        originalData - previous bucket state(can be null).
        newData - new bucket state
        newState - new state of bucket - can be used to extract additional data is useful for persistence or logging.
        timeoutNanos - optional timeout in nanoseconds
        Returns:
        true if data changed, false if another parallel transaction achieved success instead of current transaction