code: private HttpMediaType fromString(String combinedType) {
      Matcher matcher = FULL_MEDIA_TYPE_REGEX.matcher(combinedType);
      Preconditions.checkArgument(
          matcher.matches(), "Type must be in the 'maintype/subtype; parameter=value' format");
  
      setType(matcher.group(1));
      setSubType(matcher.group(2));
      String params = matcher.group(3);
      if (params != null) {
        matcher = PARAMETER_REGEX.matcher(params);
        while (matcher.find()) {
          // 1=key, 2=valueWithQuotes, 3=valueWithoutQuotes
          String key = matcher.group(1);
          String value = matcher.group(3);
          if (value == null) {
            value = matcher.group(2);
          }
          setParameter(key, value);
        }
      }
      return this;
    }
docs: Sets the full media type by parsing a full content-type string, for example {@code "text/plain;
  foo=bar"}.
  
  <p>This method will not clear existing parameters. Use {@link #clearParameters()} if this
  behavior is required.
  
  @param combinedType full media type in the {@code "maintype/subtype; key=value"} format.