From bc734fe51bc6b2f50a7f9687e8506aaedbc00d1b Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Tue, 5 Apr 2016 12:41:43 +0200 Subject: [PATCH] Add null check to selected arbitrator --- .../io/bitsquare/trade/protocol/trade/ProcessModel.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/ProcessModel.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/ProcessModel.java index c2768af9a2..f2edb03259 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/ProcessModel.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/ProcessModel.java @@ -18,6 +18,7 @@ package io.bitsquare.trade.protocol.trade; import io.bitsquare.app.Version; +import io.bitsquare.arbitration.Arbitrator; import io.bitsquare.arbitration.ArbitratorManager; import io.bitsquare.btc.AddressEntry; import io.bitsquare.btc.TradeWalletService; @@ -50,6 +51,8 @@ import java.io.Serializable; import java.util.ArrayList; import java.util.List; +import static com.google.common.base.Preconditions.checkNotNull; + public class ProcessModel implements Model, Serializable { // That object is saved to disc. We need to take care of changes to not break deserialization. private static final long serialVersionUID = Version.LOCAL_DB_VERSION; @@ -145,7 +148,9 @@ public class ProcessModel implements Model, Serializable { } public byte[] getArbitratorPubKey(NodeAddress arbitratorNodeAddress) { - return user.getAcceptedArbitratorByAddress(arbitratorNodeAddress).getBtcPubKey(); + Arbitrator acceptedArbitratorByAddress = user.getAcceptedArbitratorByAddress(arbitratorNodeAddress); + checkNotNull(acceptedArbitratorByAddress, "acceptedArbitratorByAddress must not be null. Maybe there is no arbitrator in the network available."); + return acceptedArbitratorByAddress.getBtcPubKey(); } public Offer getOffer() {