code: public Shape createRoundRectangle(final int x, final int y, final int w, final int h, final CornerSize size, final CornerStyle topLeft,
              final CornerStyle bottomLeft, final CornerStyle bottomRight, final CornerStyle topRight) {
          return createRoundRectangleInternal(x, y, w, h, size.getRadius(w, h), topLeft, bottomLeft, bottomRight, topRight);
      }
docs: Return a path for a rectangle with optionally rounded corners.
  
  @param  x           the X coordinate of the upper-left corner of the
  rectangle
  @param  y           the Y coordinate of the upper-left corner of the
  rectangle
  @param  w           the width of the rectangle
  @param  h           the height of the rectangle
  @param  size        the CornerSize value representing the amount of
  rounding
  @param  topLeft     the CornerStyle of the upper-left corner. This must
  be one of {@code CornerStyle.SQUARE} or
  {@code CornerStyle.ROUNDED}.
  @param  bottomLeft  the CornerStyle of the lower-left corner. This must
  be one of {@code CornerStyle.SQUARE} or
  {@code CornerStyle.ROUNDED}.
  @param  bottomRight the CornerStyle of the lower-right corner. This must
  be one of {@code CornerStyle.SQUARE} or
  {@code CornerStyle.ROUNDED}.
  @param  topRight    the CornerStyle of the upper-right corner. This must
  be one of {@code CornerStyle.SQUARE} or
  {@code CornerStyle.ROUNDED}.
  
  @return a path representing the shape.