com.hazelcast.core.AsyncAtomicReference Maven / Gradle / Ivy
package com.hazelcast.core;
import com.hazelcast.spi.annotation.Beta;
/**
* A {@link IAtomicReference} that exposes its operations using a {@link ICompletableFuture}
* so it can be used in the reactive programming model approach.
*
* @since 3.2
*/
@Beta
public interface AsyncAtomicReference extends IAtomicReference {
ICompletableFuture asyncCompareAndSet(E expect, E update);
ICompletableFuture asyncGet();
ICompletableFuture asyncSet(E newValue);
ICompletableFuture asyncGetAndSet(E newValue);
ICompletableFuture asyncSetAndGet(E update);
ICompletableFuture asyncIsNull();
ICompletableFuture asyncClear();
ICompletableFuture asyncContains(E value);
ICompletableFuture asyncAlter(IFunction function);
ICompletableFuture asyncAlterAndGet(IFunction function);
ICompletableFuture asyncGetAndAlter(IFunction function);
ICompletableFuture asyncApply(IFunction function);
}