class ScheduledJobExecutor implements ApplicationContextAware {

    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        var scheduledJobs = applicationContext.getBeansOfType(ScheduledJob.class).values();
        scheduledJobs.stream()
                .filter(this::shouldAutoRegister)
                .forEach(this::registerScheduledJob);
    }

    @Autowired public  ScheduledJobExecutor(ScheduledJobLogRepository jobLogRepo, Clock clock);

}