docs: public boolean allowLargeMessage(long size) {
          if (!getConfig().areMessagesLimited()) {
              // no limits on messages, so default to yes
              return true;
          }
  
          if (HttpConfigConstants.UNLIMITED == getConfig().getLargerBufferSize()) {
              // no second upper limit, the first is a hard ceiling
              // unlimited is the same as not-set
              return false;
          }
          // otherwise compare sizes
          if (size > getConfig().getLargerBufferSize()) {
              return false;
          }
  
          // if the current setting is true, then change it to false for anybody
          // else checking and let the last caller in. If it is false, then let
          // them know that.
          synchronized (this.key) {
              if (this.allowLargeMessage) {
                  this.allowLargeMessage = false;
                  return true;
              }
              return false;
          }
      }