Хорошо, поэтому я не смог найти никаких полезных материалов по этой теме, большая часть статей, которые я нашел, содержала один метод, который был аннотирован @HystrixCommand и определил запасной метод.
Другое решение, которое я нашел, было использование @DefaultProperties (defaultFallback = "fallbackMethod"), но проблема в том, что методы должны иметь совместимые типы возврата.
К сожалению, для меня в моем сервисеУ меня есть много методов с совершенно разными сигнатурами, а также мне нужно заполучить throwable (в документации упоминается, что вы не можете иметь никаких параметров для резервного метода по умолчанию).Методы выглядят примерно так:
@Service
@RequiredArgsConstructor
public class MyService {
private final FeignClient feignClient;
@Override
public String methodA(final CustomObjectA o, final String entity) {
...
}
@Override
public String methodB(final String collection, final Map<String, Object> requestBody) {
...
}
@Override
public String methodC(final String collection, final String id, final Map<String, Object> requestBody) {
...
}
}
И, конечно, у меня есть более 3 методов def в сервисе ...
Чего я действительно хочу избежать, так это сделать откат 20 Hystrix по умолчаниюметодов.
Есть ли способ, которым я мог бы определить стандартный запасной вариант для всех методов, независимо от того, какие сигнатуры у них есть, или я застрял с определением запасного метода для каждого отдельного метода?
Спасибо заранее !!