@Override public boolean isCompatible(final AcceptableMediaType t, final MediaType u) { return t.isCompatible(u); }
/** * Create new acceptable media type instance from the supplied * {@link javax.ws.rs.core.MediaType media type}. * * @param mediaType general-purpose media type. * @return new acceptable media type instance. * * @throws ParseException in case the quality parameter parsing failed. */ public static AcceptableMediaType valueOf(MediaType mediaType) throws ParseException { if (mediaType instanceof AcceptableMediaType) { return (AcceptableMediaType) mediaType; } final Map<String, String> parameters = mediaType.getParameters(); int quality = Quality.DEFAULT; if (parameters != null) { final String v = parameters.get(Quality.QUALITY_PARAMETER_NAME); if (v != null) { quality = HttpHeaderReader.readQualityFactor(v); } } // use private constructor to skip quality value validation step return new AcceptableMediaType(mediaType.getType(), mediaType.getSubtype(), parameters, quality); }
@Override public AcceptableMediaType create(HttpHeaderReader reader) throws ParseException { return AcceptableMediaType.valueOf(reader); } };
@Override public int compare(AcceptableMediaType o1, AcceptableMediaType o2) { // FIXME what is going on here? boolean q_o1_set = false; int q_o1 = 0; boolean q_o2_set = false; int q_o2 = 0; for (QualitySourceMediaType priorityType : priorityMediaTypes) { if (!q_o1_set && MediaTypes.typeEqual(o1, priorityType)) { q_o1 = o1.getQuality() * priorityType.getQuality(); q_o1_set = true; } else if (!q_o2_set && MediaTypes.typeEqual(o2, priorityType)) { q_o2 = o2.getQuality() * priorityType.getQuality(); q_o2_set = true; } } int i = q_o2 - q_o1; if (i != 0) { return i; } i = o2.getQuality() - o1.getQuality(); if (i != 0) { return i; } return MediaTypes.PARTIAL_ORDER_COMPARATOR.compare(o1, o2); } },
@Override public int compare(AcceptableMediaType o1, AcceptableMediaType o2) { // FIXME what is going on here? boolean q_o1_set = false; int q_o1 = 0; boolean q_o2_set = false; int q_o2 = 0; for (QualitySourceMediaType priorityType : priorityMediaTypes) { if (!q_o1_set && MediaTypes.typeEqual(o1, priorityType)) { q_o1 = o1.getQuality() * priorityType.getQuality(); q_o1_set = true; } else if (!q_o2_set && MediaTypes.typeEqual(o2, priorityType)) { q_o2 = o2.getQuality() * priorityType.getQuality(); q_o2_set = true; } } int i = q_o2 - q_o1; if (i != 0) { return i; } i = o2.getQuality() - o1.getQuality(); if (i != 0) { return i; } return MediaTypes.PARTIAL_ORDER_COMPARATOR.compare(o1, o2); } },
/** * Create new acceptable media type instance from the supplied * {@link javax.ws.rs.core.MediaType media type}. * * @param mediaType general-purpose media type. * @return new acceptable media type instance. * * @throws ParseException in case the quality parameter parsing failed. */ public static AcceptableMediaType valueOf(MediaType mediaType) throws ParseException { if (mediaType instanceof AcceptableMediaType) { return (AcceptableMediaType) mediaType; } final Map<String, String> parameters = mediaType.getParameters(); int quality = Quality.DEFAULT; if (parameters != null) { final String v = parameters.get(Quality.QUALITY_PARAMETER_NAME); if (v != null) { quality = HttpHeaderReader.readQualityFactor(v); } } // use private constructor to skip quality value validation step return new AcceptableMediaType(mediaType.getType(), mediaType.getSubtype(), parameters, quality); }
@Override public AcceptableMediaType create(HttpHeaderReader reader) throws ParseException { return AcceptableMediaType.valueOf(reader); } };
@Override public boolean isCompatible(final AcceptableMediaType t, final MediaType u) { return t.isCompatible(u); }
@Override public int compare(AcceptableMediaType o1, AcceptableMediaType o2) { // FIXME what is going on here? boolean q_o1_set = false; int q_o1 = 0; boolean q_o2_set = false; int q_o2 = 0; for (QualitySourceMediaType priorityType : priorityMediaTypes) { if (!q_o1_set && MediaTypes.typeEqual(o1, priorityType)) { q_o1 = o1.getQuality() * priorityType.getQuality(); q_o1_set = true; } else if (!q_o2_set && MediaTypes.typeEqual(o2, priorityType)) { q_o2 = o2.getQuality() * priorityType.getQuality(); q_o2_set = true; } } int i = q_o2 - q_o1; if (i != 0) { return i; } i = o2.getQuality() - o1.getQuality(); if (i != 0) { return i; } return MediaTypes.PARTIAL_ORDER_COMPARATOR.compare(o1, o2); } },
return new AcceptableMediaType(type, subType, parameters, quality);
try { if (value instanceof MediaType) { final AcceptableMediaType _value = AcceptableMediaType.valueOf((MediaType) value);
@Override public boolean isCompatible(AcceptableMediaType t, MediaType u) { return t.isCompatible(u); }
@Override public int compare(AcceptableMediaType o1, AcceptableMediaType o2) { // FIXME what is going on here? boolean q_o1_set = false; int q_o1 = 0; boolean q_o2_set = false; int q_o2 = 0; for (QualitySourceMediaType priorityType : priorityMediaTypes) { if (!q_o1_set && MediaTypes.typeEqual(o1, priorityType)) { q_o1 = o1.getQuality() * priorityType.getQuality(); q_o1_set = true; } else if (!q_o2_set && MediaTypes.typeEqual(o2, priorityType)) { q_o2 = o2.getQuality() * priorityType.getQuality(); q_o2_set = true; } } int i = q_o2 - q_o1; if (i != 0) { return i; } i = o2.getQuality() - o1.getQuality(); if (i != 0) { return i; } return MediaTypes.PARTIAL_ORDER_COMPARATOR.compare(o1, o2); } },
return new AcceptableMediaType(type, subType, parameters, quality);
try { if (value instanceof MediaType) { final AcceptableMediaType _value = AcceptableMediaType.valueOf((MediaType) value);
@Override public boolean isCompatible(final AcceptableMediaType t, final MediaType u) { return t.isCompatible(u); }
@Override public int compare(AcceptableMediaType o1, AcceptableMediaType o2) { // FIXME what is going on here? boolean q_o1_set = false; int q_o1 = 0; boolean q_o2_set = false; int q_o2 = 0; for (QualitySourceMediaType priorityType : priorityMediaTypes) { if (!q_o1_set && MediaTypes.typeEqual(o1, priorityType)) { q_o1 = o1.getQuality() * priorityType.getQuality(); q_o1_set = true; } else if (!q_o2_set && MediaTypes.typeEqual(o2, priorityType)) { q_o2 = o2.getQuality() * priorityType.getQuality(); q_o2_set = true; } } int i = q_o2 - q_o1; if (i != 0) { return i; } i = o2.getQuality() - o1.getQuality(); if (i != 0) { return i; } return MediaTypes.PARTIAL_ORDER_COMPARATOR.compare(o1, o2); } },
/** * Create new acceptable media type instance from the supplied * {@link javax.ws.rs.core.MediaType media type}. * * @param mediaType general-purpose media type. * @return new acceptable media type instance. * * @throws ParseException in case the quality parameter parsing failed. */ public static AcceptableMediaType valueOf(MediaType mediaType) throws ParseException { if (mediaType instanceof AcceptableMediaType) { return (AcceptableMediaType) mediaType; } final Map<String, String> parameters = mediaType.getParameters(); int quality = Quality.DEFAULT; if (parameters != null) { final String v = parameters.get(Quality.QUALITY_PARAMETER_NAME); if (v != null) { quality = HttpHeaderReader.readQualityFactor(v); } } // use private constructor to skip quality value validation step return new AcceptableMediaType(mediaType.getType(), mediaType.getSubtype(), parameters, quality); }
@Override public AcceptableMediaType create(HttpHeaderReader reader) throws ParseException { return AcceptableMediaType.valueOf(reader); } };
@Override public boolean isCompatible(final AcceptableMediaType t, final MediaType u) { return t.isCompatible(u); }