[bisq-network/bisq] Move Payment account creation and removal from UI to core (#3586)

Bernard Labno notifications at github.com
Tue Nov 19 15:10:34 UTC 2019


blabno commented on this pull request.



> +
+            }
+            accountAgeWitnessService.publishMyAccountAgeWitness(paymentAccount.getPaymentAccountPayload());
+        }
+        return paymentAccount;
+    }
+
+    public void removePaymentAccount(String id) {
+        PaymentAccount paymentAccount = user.getPaymentAccount(id);
+        if (paymentAccount == null) {
+            throw new NotFoundException(format("Payment account %s not found", id));
+        }
+        boolean isPaymentAccountUsed = openOfferManager.getObservableList().stream()
+                .anyMatch(openOffer -> id.equals(openOffer.getOffer().getMakerPaymentAccountId()));
+        if (isPaymentAccountUsed) {
+            throw new PaymentAccountInUseException(format("Payment account %s is used for open offer", id));

Yes, give up, cause you don't have better arguments. When there are many reasons why a method might fail then the typed exceptions are the way to inform other component about the reason.
Strings are good for humans, but it's not only the humans that interact with this business logic component.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/bisq-network/bisq/pull/3586#discussion_r347980451
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20191119/fec4493c/attachment.html>


More information about the bisq-github mailing list