Compare Exchange: How to Get Compare Exchange Value
-
Use
GetCompareExchangeValueOperation
to return the saved compare-exchange Value for the specified Key. -
For an overview of the 'Compare Exchange' feature click: Compare Exchange Overview
-
In this page:
Syntax
Method:
GetCompareExchangeValueOperation(Class<T> clazz, String key);
Returned object:
public class CompareExchangeValue<T> {
private String key;
private long index;
private T value;
public CompareExchangeValue(String key, long index, T value) {
this.key = key;
this.index = index;
this.value = value;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public long getIndex() {
return index;
}
public void setIndex(long index) {
this.index = index;
}
public T getValue() {
return value;
}
public void setValue(T value) {
this.value = value;
}
}
Key | String | The unique object identifier |
Value | T |
The existing value that Key has |
Index | long | The version number of the Value that is stored for the specified Key |
Example I - Value is 'long'
CompareExchangeValue<Long> readResult
= store.operations().send(new GetCompareExchangeValueOperation<>(Long.class, "nextClientId"));
Long value = readResult.getValue();
Example II - Value is a custom object
CompareExchangeValue<User> readResult
= store.operations().send(
new GetCompareExchangeValueOperation<>(User.class, "AdminUser"));
User admin = readResult.getValue();