code: public TransactionInfo queryTransactionByID(String txID) throws ProposalException, InvalidArgumentException {
          return queryTransactionByID(getShuffledPeers(EnumSet.of(PeerRole.LEDGER_QUERY)), txID, client.getUserContext());
      }
docs: Query this channel for a Fabric Transaction given its transactionID.
  The request is sent to a random peer in the channel.
  
  
  <STRONG>This method may not be thread safe if client context is changed!</STRONG>
  
  @param txID the ID of the transaction
  @return a {@link TransactionInfo}
  @throws ProposalException
  @throws InvalidArgumentException