package com.its.traf.config; import com.its.traf.scheduler.JobScheduleInfo; import lombok.Getter; import lombok.Setter; import lombok.ToString; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Configuration; import javax.annotation.PostConstruct; import java.util.ArrayList; import java.util.List; @Slf4j @Getter @Setter @ToString @Configuration @ConfigurationProperties(prefix = "application.schedule") public class SchedulerConfig { private int poolCore = 0; public List batchJobs = new ArrayList<>(); @PostConstruct private void init() { log.info("before poolCore: {} EA.", this.poolCore); if (this.poolCore == 0) { log.info("{}, poolCore size set as default: {} EA.", this.getClass().getSimpleName(), this.poolCore); this.poolCore = Runtime.getRuntime().availableProcessors(); } log.info("after. poolCore: {} EA.", this.poolCore); log.info("jobs: {} EA.", this.batchJobs.size()); for (JobScheduleInfo info: this.batchJobs) { log.error("jobInfo: {}", info.toString()); } } }