MediaTypeHelper { public static AcceptMediaType findFistCompatibleAcceptMediaType(List<AcceptMediaType> acceptMediaTypes, List<MediaType> producedByResource) { for (AcceptMediaType accept : acceptMediaTypes) { if (accept.isWildcardType()) { return accept; } for (MediaType produce : producedByResource) { if (produce.isCompatible(accept.getMediaType())) { return accept; } } } return null; } private  MediaTypeHelper(); static Iterator<MediaType> createDescendingMediaTypeIterator(MediaType type); static List<MediaType> createConsumesList(Consumes mime); static List<MediaType> createProducesList(Produces mime); static boolean isConsume(List<MediaType> consumes, MediaType contentType); static AcceptMediaType findFistCompatibleAcceptMediaType(List<AcceptMediaType> acceptMediaTypes,
                                                                    List<MediaType> producedByResource); static boolean isCompatible(MediaType mediaTypeOne, MediaType mediaTypeTwo); static boolean isMatched(MediaType pattern, MediaType checkMe); static final MediaType WADL_TYPE; static final String EXT_PREFIX_SUBTYPE; static final Pattern EXT_SUBTYPE_PATTERN; static final Pattern EXT_SUFFIX_SUBTYPE_PATTERN; static final Pattern EXT_PREFIX_SUBTYPE_PATTERN; }
@UseDataProvider("forFindsFirstCompatibleAcceptMediaType") @Test public void findsFirstCompatibleAcceptMediaType(List<AcceptMediaType> acceptMediaTypes, List<MediaType> producedByResource, AcceptMediaType expectedResult) { AcceptMediaType result = MediaTypeHelper.findFistCompatibleAcceptMediaType(acceptMediaTypes, producedByResource); assertEquals(expectedResult, result); }