package com.battery.business.service.impl;
|
|
import org.springframework.boot.context.event.ApplicationReadyEvent;
|
import org.springframework.context.event.EventListener;
|
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.stereotype.Component;
|
import com.battery.business.service.IDeviceAdapterService;
|
|
/**
|
* 在单采集进程内恢复启用实例,并按各自周期执行只读发现。
|
* 不限定 profile:真实来源的发现与接收要在非开发 profile 下运行。
|
*/
|
@Component
|
public class DeviceAdapterRuntimeCoordinator
|
{
|
private final IDeviceAdapterService service;
|
|
public DeviceAdapterRuntimeCoordinator(IDeviceAdapterService service) { this.service = service; }
|
|
@EventListener(ApplicationReadyEvent.class)
|
public void restoreEnabledAdapters() { service.synchronizeEnabledAdapters(); }
|
|
@Scheduled(fixedDelay = 1000)
|
public void pollDueAdapters() { service.pollDueAdapters(); }
|
}
|