docs: protected <T, A> AsyncFuture<T> executeRequest(final ManagementRequest<T, A> request, final Channel channel, final ActiveOperation<T, A> support) {
          assert support != null;
          updateChannelRef(support, channel);
          final Integer requestId = this.requestID.incrementAndGet();
          final ActiveRequest<T, A> ar = new ActiveRequest<T, A>(support, request);
          requests.put(requestId, ar);
          final ManagementRequestHeader header = new ManagementRequestHeader(ManagementProtocol.VERSION, requestId, support.getOperationId(), request.getOperationType());
          final ActiveOperation.ResultHandler<T> resultHandler = support.getResultHandler();
          try {
              request.sendRequest(resultHandler, new ManagementRequestContextImpl<T, A>(support, channel, header, getExecutor()));
          } catch (Exception e) {
              resultHandler.failed(e);
              requests.remove(requestId);
          }
          return support.getResult();
      }