mirror of
https://github.com/bitcoinj/bitcoinj.git
synced 2024-11-20 18:22:12 +01:00
Wallet: Make BalanceFutureRequest less mutable
This commit is contained in:
parent
4bb592aee6
commit
1616b6f02f
@ -3735,11 +3735,17 @@ public class Wallet extends BaseTaggableObject
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static class BalanceFutureRequest {
|
private static class BalanceFutureRequest {
|
||||||
public SettableFuture<Coin> future;
|
public final SettableFuture<Coin> future;
|
||||||
public Coin value;
|
public final Coin value;
|
||||||
public BalanceType type;
|
public final BalanceType type;
|
||||||
|
|
||||||
|
private BalanceFutureRequest(SettableFuture<Coin> future, Coin value, BalanceType type) {
|
||||||
|
this.future = future;
|
||||||
|
this.value = value;
|
||||||
|
this.type = type;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@GuardedBy("lock") private List<BalanceFutureRequest> balanceFutureRequests = new LinkedList<>();
|
@GuardedBy("lock") private final List<BalanceFutureRequest> balanceFutureRequests = new LinkedList<>();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>Returns a future that will complete when the balance of the given type has becom equal or larger to the given
|
* <p>Returns a future that will complete when the balance of the given type has becom equal or larger to the given
|
||||||
@ -3767,11 +3773,7 @@ public class Wallet extends BaseTaggableObject
|
|||||||
// Will be checked later in checkBalanceFutures. We don't just add an event listener for ourselves
|
// Will be checked later in checkBalanceFutures. We don't just add an event listener for ourselves
|
||||||
// here so that running getBalanceFuture().get() in the user code thread works - generally we must
|
// here so that running getBalanceFuture().get() in the user code thread works - generally we must
|
||||||
// avoid giving the user back futures that require the user code thread to be free.
|
// avoid giving the user back futures that require the user code thread to be free.
|
||||||
BalanceFutureRequest req = new BalanceFutureRequest();
|
balanceFutureRequests.add(new BalanceFutureRequest(future, value, type));
|
||||||
req.future = future;
|
|
||||||
req.value = value;
|
|
||||||
req.type = type;
|
|
||||||
balanceFutureRequests.add(req);
|
|
||||||
}
|
}
|
||||||
return future;
|
return future;
|
||||||
} finally {
|
} finally {
|
||||||
|
Loading…
Reference in New Issue
Block a user