code: private void setPoolSize(int min, int max)
      {
          SizeData newSize = new SizeData();
          newSize.minSize = min;
          newSize.maxSize = max;
  
          // Calculate the maximum drain amount to be <drainAggressivenessPercentage>
          // percent of the total drain opportunity. This will require the pool be
          // inactive for <100/drainAggressivenessPercentage> drain intervals before
          // it is completely drained.
          int drainOpportunity = max - min;
          if (drainOpportunity <= 0)
              newSize.maxDrainAmount = 0;
          else if (drainOpportunity <= 100 / DrainAggressivenessPercentage)
              newSize.maxDrainAmount = drainOpportunity;
          else
              newSize.maxDrainAmount = drainOpportunity * DrainAggressivenessPercentage / 100;
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
              Tr.debug(tc, "setPoolSize: min=" + newSize.minSize + ", max=" + newSize.maxSize + ", drain=" + newSize.maxDrainAmount);
  
          poolSize = newSize;
      }
docs: F96377