public static AccountInfo adaptAccountInfo(OkCoinUserInfo userInfo) { OkCoinFunds funds = userInfo.getInfo().getFunds(); Map<String, Balance.Builder> builders = new TreeMap<>(); for (Map.Entry<String, BigDecimal> available : funds.getFree().entrySet()) { builders.put( available.getKey(), new Balance.Builder() .currency(Currency.getInstance(available.getKey())) .available(available.getValue())); } for (Map.Entry<String, BigDecimal> frozen : funds.getFreezed().entrySet()) { Balance.Builder builder = builders.get(frozen.getKey()); if (builder == null) { builder = new Balance.Builder().currency(Currency.getInstance(frozen.getKey())); } builders.put(frozen.getKey(), builder.frozen(frozen.getValue())); } for (Map.Entry<String, BigDecimal> borrowed : funds.getBorrow().entrySet()) { Balance.Builder builder = builders.get(borrowed.getKey()); if (builder == null) { builder = new Balance.Builder().currency(Currency.getInstance(borrowed.getKey())); } builders.put(borrowed.getKey(), builder.borrowed(borrowed.getValue())); } List<Balance> wallet = new ArrayList<>(builders.size()); for (Balance.Builder builder : builders.values()) { wallet.add(builder.build()); } return new AccountInfo(new Wallet(wallet)); }
public static Wallet adaptWallet(Map<String, BTCChinaValue> balances, Map<String, BTCChinaValue> frozens, Map<String, BTCChinaValue> loans) { List<Balance> wallet = new ArrayList<>(balances.size()); for (Map.Entry<String, BTCChinaValue> entry : balances.entrySet()) { BTCChinaValue frozen = frozens.get(entry.getKey()); BTCChinaValue loan = loans.get(entry.getKey()); BigDecimal balanceAmount = BTCChinaUtils.valueToBigDecimal(entry.getValue()); BigDecimal frozenAmount = frozen == null ? BigDecimal.ZERO : BTCChinaUtils.valueToBigDecimal(frozen); BigDecimal loanAmount = loan == null ? BigDecimal.ZERO : BTCChinaUtils.valueToBigDecimal(loan); wallet.add(new Balance.Builder().currency(Currency.getInstance(entry.getValue().getCurrency())).available(balanceAmount).frozen(frozenAmount) .borrowed(loanAmount).build()); } return new Wallet(wallet); }
public static AccountInfo adaptAccountInfo(OkCoinUserInfo userInfo) { OkCoinFunds funds = userInfo.getInfo().getFunds(); Map<String, Balance.Builder> builders = new TreeMap<>(); for (Map.Entry<String, BigDecimal> available : funds.getFree().entrySet()) { builders.put( available.getKey(), new Balance.Builder() .currency(Currency.getInstance(available.getKey())) .available(available.getValue())); } for (Map.Entry<String, BigDecimal> frozen : funds.getFreezed().entrySet()) { Balance.Builder builder = builders.get(frozen.getKey()); if (builder == null) { builder = new Balance.Builder().currency(Currency.getInstance(frozen.getKey())); } builders.put(frozen.getKey(), builder.frozen(frozen.getValue())); } for (Map.Entry<String, BigDecimal> borrowed : funds.getBorrow().entrySet()) { Balance.Builder builder = builders.get(borrowed.getKey()); if (builder == null) { builder = new Balance.Builder().currency(Currency.getInstance(borrowed.getKey())); } builders.put(borrowed.getKey(), builder.borrowed(borrowed.getValue())); } List<Balance> wallet = new ArrayList<>(builders.size()); for (Balance.Builder builder : builders.values()) { wallet.add(builder.build()); } return new AccountInfo(new Wallet(wallet)); }
public static Builder from(Balance balance) { return new Builder() .currency(balance.getCurrency()) .total(balance.getTotal()) .available(balance.getAvailable()) .frozen(balance.getFrozen()) .borrowed(balance.getBorrowed()) .loaned(balance.getLoaned()) .withdrawing(balance.getWithdrawing()) .depositing(balance.getDepositing()); }
public static Builder from(Balance balance) { return new Builder() .currency(balance.getCurrency()) .total(balance.getTotal()) .available(balance.getAvailable()) .frozen(balance.getFrozen()) .borrowed(balance.getBorrowed()) .loaned(balance.getLoaned()) .withdrawing(balance.getWithdrawing()) .depositing(balance.getDepositing()); }