| | |
| | | import java.util.Optional; |
| | | import com.ruoyi.device.model.ChannelIdentity; |
| | | import com.ruoyi.device.model.DeviceWorkStatus; |
| | | import com.ruoyi.device.model.RealtimeSnapshot; |
| | | |
| | | /** 保存未登记发现候选和正式设备的实时观测快照。 */ |
| | | public interface DeviceDiscoveryCandidateStore |
| | |
| | | } |
| | | |
| | | record ChannelCandidate(ChannelIdentity identity, boolean online, DeviceWorkStatus workStatus, |
| | | Instant observedAt) { } |
| | | Instant observedAt, RealtimeSnapshot latestSnapshot) |
| | | { |
| | | /** 兼容仅有状态的旧发现候选。 */ |
| | | public ChannelCandidate(ChannelIdentity identity, boolean online, DeviceWorkStatus workStatus, |
| | | Instant observedAt) |
| | | { |
| | | this(identity, online, workStatus, observedAt, null); |
| | | } |
| | | } |
| | | |
| | | record CollectorCandidate(String adapterCode, String deviceCode, String ip, String mac, String name, |
| | | String manufacturer, String model, int channelCount, boolean online, |