Skip to content

Commit

Permalink
Merge pull request #2528 from ben-kaufman/get-only-accepted-proposals
Browse files Browse the repository at this point in the history
Fix bug UI treats rejected proposals as accepted
  • Loading branch information
ManfredKarrer committed Mar 12, 2019
2 parents da20c4d + fee8d9f commit 76543bb
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 3 deletions.
Expand Up @@ -33,6 +33,7 @@
import bisq.core.dao.state.model.blockchain.Block;
import bisq.core.dao.state.model.blockchain.Tx;
import bisq.core.dao.state.model.blockchain.TxType;
import bisq.core.dao.state.model.governance.EvaluatedProposal;
import bisq.core.dao.state.model.governance.RemoveAssetProposal;
import bisq.core.locale.CurrencyUtil;
import bisq.core.trade.statistics.TradeStatistics2;
Expand Down Expand Up @@ -286,7 +287,7 @@ public void onParseBlockCompleteAfterBatchProcessing(Block block) {
///////////////////////////////////////////////////////////////////////////////////////////

public boolean wasAssetRemovedByVoting(String tickerSymbol) {
boolean isRemoved = getRemoveAssetProposalStream()
boolean isRemoved = getAcceptedRemoveAssetProposalStream()
.anyMatch(proposal -> proposal.getTickerSymbol().equals(tickerSymbol));
if (isRemoved)
log.info("Asset '{}' was removed", CurrencyUtil.getNameAndCode(tickerSymbol));
Expand All @@ -306,9 +307,10 @@ private Optional<StatefulAsset> findAsset(String tickerSymbol) {
// Private
///////////////////////////////////////////////////////////////////////////////////////////

private Stream<RemoveAssetProposal> getRemoveAssetProposalStream() {
private Stream<RemoveAssetProposal> getAcceptedRemoveAssetProposalStream() {
return daoStateService.getEvaluatedProposalList().stream()
.filter(evaluatedProposal -> evaluatedProposal.getProposal() instanceof RemoveAssetProposal)
.filter(EvaluatedProposal::isAccepted)
.map(e -> ((RemoveAssetProposal) e.getProposal()));
}

Expand Down
Expand Up @@ -22,6 +22,7 @@
import bisq.core.dao.governance.bond.BondRepository;
import bisq.core.dao.state.DaoStateService;
import bisq.core.dao.state.model.blockchain.TxOutput;
import bisq.core.dao.state.model.governance.EvaluatedProposal;
import bisq.core.dao.state.model.governance.Proposal;
import bisq.core.dao.state.model.governance.Role;
import bisq.core.dao.state.model.governance.RoleProposal;
Expand Down Expand Up @@ -62,7 +63,7 @@ public boolean isMyRole(Role role) {
Set<String> myWalletTransactionIds = bsqWalletService.getWalletTransactions().stream()
.map(Transaction::getHashAsString)
.collect(Collectors.toSet());
return getBondedRoleProposalStream()
return getAcceptedBondedRoleProposalStream()
.filter(roleProposal -> roleProposal.getRole().equals(role))
.map(Proposal::getTxId)
.anyMatch(myWalletTransactionIds::contains);
Expand Down Expand Up @@ -109,4 +110,11 @@ private Stream<RoleProposal> getBondedRoleProposalStream() {
.filter(evaluatedProposal -> evaluatedProposal.getProposal() instanceof RoleProposal)
.map(e -> ((RoleProposal) e.getProposal()));
}

private Stream<RoleProposal> getAcceptedBondedRoleProposalStream() {
return daoStateService.getEvaluatedProposalList().stream()
.filter(evaluatedProposal -> evaluatedProposal.getProposal() instanceof RoleProposal)
.filter(EvaluatedProposal::isAccepted)
.map(e -> ((RoleProposal) e.getProposal()));
}
}

0 comments on commit 76543bb

Please sign in to comment.