MediaType { public boolean equalsTypeSubTypeWithoutSuffix(MediaType mediaType) { if (equalsType(mediaType)) { UnaryOperator<String> removeSuffix = s -> s.replaceAll("\\+.*", ""); String thisSubtype = removeSuffix.apply(subtype); String givenSubtype = removeSuffix.apply(mediaType.subtype); return thisSubtype.equals(givenSubtype); } return false; } private  MediaType(String originalString, String type, String subtype, String charset, String nuxeoEntity); String type(); String subtype(); Charset charset(); String nuxeoEntity(); Charset charset(Charset defaultValue); okhttp3.MediaType toOkHttpMediaType(); boolean equalsType(MediaType mediaType); boolean equalsTypeSubType(MediaType mediaType); boolean equalsTypeSubTypeWithoutSuffix(MediaType mediaType); @Override String toString(); @Override boolean equals(Object o); @Override int hashCode(); static MediaType fromOkHttpMediaType(okhttp3.MediaType mediaType); static MediaType parse(String string);  }
@Test public void testEqualsTypeSubTypeWithoutSuffix() { MediaType mediaType1 = MediaType.parse("application/json; charset=UTF-8"); MediaType mediaType2 = MediaType.parse("application/json+nxentity; charset=UTF-8"); assertTrue(mediaType1.equalsTypeSubTypeWithoutSuffix(mediaType2)); assertTrue(mediaType2.equalsTypeSubTypeWithoutSuffix(mediaType1)); }