docs: private Block getConfigurationBlock() throws TransactionException {
  
          logger.debug(format("getConfigurationBlock for channel %s", name));
  
          try {
              Orderer orderer = getRandomOrderer();
  
              long lastConfigIndex = getLastConfigIndex(orderer);
  
              logger.debug(format("Last config index is %d", lastConfigIndex));
  
              Block configBlock = getBlockByNumber(lastConfigIndex);
  
              //Little extra parsing but make sure this really is a config block for this channel.
              Envelope envelopeRet = Envelope.parseFrom(configBlock.getData().getData(0));
              Payload payload = Payload.parseFrom(envelopeRet.getPayload());
              ChannelHeader channelHeader = ChannelHeader.parseFrom(payload.getHeader().getChannelHeader());
              if (channelHeader.getType() != HeaderType.CONFIG.getNumber()) {
                  throw new TransactionException(format("Bad last configuration block type %d, expected %d",
                          channelHeader.getType(), HeaderType.CONFIG.getNumber()));
              }
  
              if (!name.equals(channelHeader.getChannelId())) {
                  throw new TransactionException(format("Bad last configuration block channel id %s, expected %s",
                          channelHeader.getChannelId(), name));
              }
  
              if (null != diagnosticFileDumper) {
                  logger.trace(format("Channel %s getConfigurationBlock returned %s", name,
                          diagnosticFileDumper.createDiagnosticFile(String.valueOf(configBlock).getBytes())));
              }
  
              if (!logger.isTraceEnabled()) {
                  logger.debug(format("Channel %s getConfigurationBlock returned", name));
              }
  
              return configBlock;
  
          } catch (TransactionException e) {
              logger.error(e.getMessage(), e);
              throw e;
          } catch (Exception e) {
              logger.error(e.getMessage(), e);
              throw new TransactionException(e);
          }
      }