docs: public BlockchainInfo queryBlockchainInfo(Collection<Peer> peers, User userContext) throws ProposalException, InvalidArgumentException {
  
          checkChannelState();
          checkPeers(peers);
          User.userContextCheck(userContext);
  
          try {
              logger.debug("queryBlockchainInfo to peer " + " on channel " + name);
              QuerySCCRequest querySCCRequest = new QuerySCCRequest(userContext);
              querySCCRequest.setFcn(QuerySCCRequest.GETCHAININFO);
              querySCCRequest.setArgs(name);
  
              ProposalResponse proposalResponse = sendProposalSerially(querySCCRequest, peers);
  
              return new BlockchainInfo(Ledger.BlockchainInfo.parseFrom(proposalResponse.getProposalResponse().getResponse().getPayload()));
          } catch (Exception e) {
              logger.error(e);
              throw new ProposalException(e);
          }
      }