@ Produce / proveedor de tipo de coincidencia de medios

Estoy experimentando con la verificación y tengo un requisito muy peculiar con el que trabajar. Vamos a utilizar la negociación de contenido, es decir, la anotación de @Produces para esto y quiero un tipo de medio personalizado en un formato como @Produces ({"th / v1-v10 + xml"}), donde v1-v10 dice que esta api atenderá cualquier solicitud con el encabezado Aceptar de "th / v1 + xml", "th / v2 + xml" hasta "th / v10 + xml".

Sé que esto es un poco extraño, pero la idea es que cada gota que hagamos en la producción sea una nueva versión para el cliente, pero no todos los servicios serán modificados. Así que quiero anotar el servicio con un rango para no tener que duplicarlo por cada gota, incluso si no se ha cambiado.

Entonces, ¿qué quiero saber de alguna manera puedo interceptar el inicio de sesión en Jersey mientras coinciden con las anotaciones @Path y @Produces? Sé que no puedo usar expresiones regulares para hacer coincidir los tipos de medios.

.......

Un poco más de investigación me dice que la Jersey llama al método MediaType.isCompatible (MediaType other) para determinar la compatibilidad entre el encabezado de aceptación de solicitudes y el tipo de medio del proveedor de servicios.

Es posible que pueda aprovechar esto un poco si puedo crear un MediaType personalizado y anular el método isCompatible. ¿Jersey permite tal extensión?

Cualquier ayuda es muy apreciada.