class DelegateDetailPresenter extends BasePresenter<DelegateDetailContract.View> implements DelegateDetailContract.Presenter {

    public List<DelegateItemInfo> buildDelegateItemInfoList(List<DelegateItemInfo> delegateInfoList, String walletAddress) {
        if (delegateInfoList == null || delegateInfoList.isEmpty() || TextUtils.isEmpty(walletAddress)) {
            return delegateInfoList;
        }

        return Flowable
                .fromIterable(delegateInfoList)
                .map(new Function<DelegateItemInfo, DelegateItemInfo>() {
                    @Override
                    public DelegateItemInfo apply(DelegateItemInfo delegateItemInfo) throws Exception {
                        delegateItemInfo.setWalletAddress(walletAddress);
                        return delegateItemInfo;
                    }
                })
                .toList()
                .blockingGet();
    }

}