docs: public static int[] adjustBuffersForJSSE(WsByteBuffer[] buffers, int maxBufferSize) {
          int[] limitInfo = null;
          int dataAmount = 0;
          for (int i = 0; i < buffers.length && null != buffers[i]; i++) {
              // Valid buffer. Tally up how much data is in the buffer array so far.
              dataAmount += buffers[i].remaining();
              // Check if the max has been surpassed.
              if (dataAmount > maxBufferSize) {
                  // The max has been surpassed. Save the current array index and limit.
                  int savedLimit = buffers[i].limit();
                  limitInfo = new int[] { i, savedLimit };
                  // Adjust the limit to the max allowed.
                  int overFlow = dataAmount - maxBufferSize;
                  buffers[i].limit(savedLimit - overFlow);
                  if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                      Tr.debug(tc, "adjustBuffersForJSSE: buffer [" + i + "] from "
                                   + savedLimit + " to " + buffers[i].limit());
                  }
                  // Since this was the key buffer, break from the loop.
                  break;
              } else if (dataAmount == maxBufferSize) {
                  // Boundaries of buffers and max lined up perfectly. No changes required.
                  break;
              }
          }
          return limitInfo;
      }