@ Tworzy / dostawca dopasowuje typ nośnika

Eksperymentuję z api verioningiem i mam bardzo specyficzny wymóg, aby przeciwdziałać. Użyjemy negocjacji treści, tj. @Produce adnotacji do tego i chcę niestandardowego typu nośnika w formacie takim jak @Produces ({"th / v1-v10 + xml"}), gdzie v1-v10 mówi, że to api obsłuży każde żądanie z nagłówkiem Accept „th / v1 + xml”, „th / v2 + xml” aż do „th / v10 + xml”.

Wiem, że to trochę dziwne, ale pomysł polega na tym, że każda kropla, którą wykonamy w produkcji, będzie nową wersją dla klienta, ale nie każda usługa zostanie zmodyfikowana. Chcę więc dodać opis usługi do zakresu, dzięki czemu nie muszę jej duplikować za każdą kroplę, nawet jeśli nie została zmieniona.

Więc co chcę się dowiedzieć, czy jest jakiś sposób, w jaki mogę przechwycić login na Jersey, gdy pasuje on do adnotacji @ Ścieżka i @Produce? Wiem, że nie mogę użyć wyrażenia regularnego do dopasowania typów mediów.

.......

Nieco więcej badań mówi mi, że Jersey wywołuje metodę MediaType.isCompatible (MediaType other) w celu określenia zgodności między nagłówkiem akceptacji żądań a typem nośnika usługodawcy.

Może być w stanie wykorzystać to trochę, jeśli mogę utworzyć niestandardowy typ MediaType i zastąpić metodę isCompatible. Czy Jersey dopuszcza takie przedłużenie?

Każda pomoc jest bardzo ceniona.

questionAnswers(1)

yourAnswerToTheQuestion