package net.ktnx.mobileledger.utils;
import android.os.Build;
-import android.support.annotation.RequiresApi;
import java.util.Observable;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.function.IntBinaryOperator;
import java.util.function.IntUnaryOperator;
+import androidx.annotation.RequiresApi;
+
public class ObservableAtomicInteger extends Observable {
private AtomicInteger holder;
ObservableAtomicInteger() {
return holder.get();
}
public void set(int newValue) {
-// Log.d("atomic", "set");
+// debug("atomic", "set");
holder.set(newValue);
forceNotify();
}
private void forceNotify() {
setChanged();
-// Log.d("atomic", String.format("notifying %d observers", countObservers()));
+// debug("atomic", String.format("notifying %d observers", countObservers()));
notifyObservers();
}
// public void lazySet(int newValue) {
return result;
}
public int incrementAndGet() {
-// Log.d("atomic", "incrementAndGet");
+// debug("atomic", "incrementAndGet");
int result = holder.incrementAndGet();
forceNotify();
return result;
}
public int decrementAndGet() {
-// Log.d("atomic", "decrementAndGet");
+// debug("atomic", "decrementAndGet");
int result = holder.decrementAndGet();
forceNotify();
return result;