code: @Override
      public void close() throws IOException {
          if (channel == null) {
              LOGGER.warn("Attempt to close a publisher channel that has not been initialized");
              return;
          } else if (! channel.isOpen()) {
              LOGGER.warn("Attempt to close a publisher channel that has already been closed or is already closing");
              return;
          }
          LOGGER.debug("Closing publisher channel");
          channel.close();
          channel = null;
          LOGGER.debug("Successfully closed publisher channel");
      }
docs: {@inheritDoc}