From 3d86558acbab2c09657e3d974cf73d048d0990a9 Mon Sep 17 00:00:00 2001 From: ialbert Date: Fri, 28 Nov 2025 13:30:08 +0300 Subject: [PATCH] update flags --- credit-tracker.properties | 2 +- .../config/settings/CreditTrackerSettings.java | 2 +- .../service/UpdatingFlagsService.java | 17 +++++------------ 3 files changed, 7 insertions(+), 14 deletions(-) diff --git a/credit-tracker.properties b/credit-tracker.properties index daf6084..11f84f3 100644 --- a/credit-tracker.properties +++ b/credit-tracker.properties @@ -66,7 +66,7 @@ ct.load-dir=D:\\folder_name\\signals # min ct.monitoring-interval=${MONITORING_INTERVAL:15} # days -ct.update-flags-interval=${UPDATE_FLAGS_INTERVAL:1} +ct.update-flags-interval=${UPDATE_FLAGS_INTERVAL:0 0 0 2 * ?} ct.days-to-update-flags=${DAYS_TO_UPDATE_FLAGS:30} ct.db-version=${DB_VERSION:1234} diff --git a/src/main/java/ru/nbch/credit_tracker/config/settings/CreditTrackerSettings.java b/src/main/java/ru/nbch/credit_tracker/config/settings/CreditTrackerSettings.java index 4d57e97..ebe4062 100644 --- a/src/main/java/ru/nbch/credit_tracker/config/settings/CreditTrackerSettings.java +++ b/src/main/java/ru/nbch/credit_tracker/config/settings/CreditTrackerSettings.java @@ -31,7 +31,7 @@ public class CreditTrackerSettings { private Long maxXmlFileSize; private String loadDir; private Long monitoringInterval; - private Long updateFlagsInterval; + private String updateFlagsInterval; private Long daysToUpdateFlags; private String encoding; private String dbVersion; diff --git a/src/main/java/ru/nbch/credit_tracker/service/UpdatingFlagsService.java b/src/main/java/ru/nbch/credit_tracker/service/UpdatingFlagsService.java index 72b31b2..a3be7a5 100644 --- a/src/main/java/ru/nbch/credit_tracker/service/UpdatingFlagsService.java +++ b/src/main/java/ru/nbch/credit_tracker/service/UpdatingFlagsService.java @@ -3,13 +3,11 @@ package ru.nbch.credit_tracker.service; import java.time.LocalDateTime; import java.time.temporal.ChronoUnit; import java.util.List; -import java.util.concurrent.Executors; -import java.util.concurrent.ScheduledExecutorService; -import java.util.concurrent.TimeUnit; import java.util.function.Predicate; import lombok.extern.slf4j.Slf4j; import org.slf4j.MDC; -import org.springframework.scheduling.concurrent.CustomizableThreadFactory; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Service; import ru.nbch.credit_tracker.config.settings.CreditTrackerSettings; import ru.nbch.credit_tracker.entities.app.PhoneFidMap; @@ -23,13 +21,13 @@ import ru.nbch.credit_tracker.service.signal.SignalRestService; */ @Slf4j @Service -public class UpdatingFlagsService { +@EnableScheduling +public class UpdatingFlagsService /*implements InitializingBean*/ { private final SignalService signalService; private final SignalRestService signalRestService; private final MonitoringErrorProcesingService monitoringErrorProcesingService; private final Long daysToUpdateFlags; - private final Long updateFlagsInterval; public UpdatingFlagsService(SignalService signalService, SignalRestService signalRestService, @@ -39,14 +37,9 @@ public class UpdatingFlagsService { this.signalRestService = signalRestService; this.monitoringErrorProcesingService = monitoringErrorProcesingService; this.daysToUpdateFlags = config.getDaysToUpdateFlags() != null ? config.getDaysToUpdateFlags() : 1; - this.updateFlagsInterval = config.getUpdateFlagsInterval() != null ? config.getUpdateFlagsInterval() : 1; - } - - public void run() { - ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor(new CustomizableThreadFactory("updating-flags-")); - scheduler.scheduleAtFixedRate(this::update, 0, updateFlagsInterval, TimeUnit.DAYS); } + @Scheduled(cron = "${ct.update-flags-interval}") private void update() { log.info("Start updating flags"); List packages = signalService.findPackagesOnMonitoring();