У меня есть класс Handler, в котором я использую lombok для внедрения зависимостей и создания необходимого конструктора args. Класс выглядит следующим образом:
@RequiredArgsConstructor(onConstructor = @__(@Inject))
class Handler {
private final @NonNull ObjectMapper objectMapper;
private final @NonNull UserAddressBookDao userAddressBookDao;
//Some methods below
}
Теперь мне нужно включить / внедрить другой класс, т.е. объект класса Controller, в класс обработчика, чтобы обновленный класс обработчика был:
@RequiredArgsConstructor(onConstructor = @__(@Inject))
class Handler {
private final @NonNull Mapper mapper;
private final @NonNull UserDao userDao;
//newly added class member
private final @NonNull Controller controller;
//Some methods below ...'
}
I я не хочу нового члена класса в конструкторе, так как я использовал класс-обработчик во многих местах в моем сервисе, что если я добавлю новый член класса, мне придется обновить код во всех этих местах, чтобы добавить новый член в конструктор. Я хочу, чтобы новый член был исключен из конструктора класса Handler, чтобы я мог избежать этой ситуации. Также в классе контроллера много членов, поскольку инициализация будет проблемой, если я попытаюсь в нужных местах. Итак, есть ли в любом случае я могу внедрить Controller в мой класс обработчика, не включая его в конструктор. Заранее большое спасибо и, пожалуйста, прости, если вопрос звучит слишком расплывчато. Класс контроллера выглядит следующим образом:
@Singleton
@RequiredArgsConstructor(onConstructor = @__(@Inject))
public class Controller {
@NonNull
private final ABCService abcClient;
@NonNull
private final DdbDao DdbDao;
@NonNull
private final ServiceAccessor serviceAccessor;
`Some methods below ...`