docs: protected Channel getProducerChannel() throws IOException, TimeoutException {
          if (producerChannel == null) {
              synchronized (this) {
                  if (producerChannel == null) {
                      producerChannel = createChannel();
                  }
              }
          }
          return producerChannel;
      }